Global Positioning System Reference
In-Depth Information
pre-defi ned schema (Anderson et al. 2009). In 2009, MongoDB (Chodorow
and Dirolf 2010), a NoSQL system with characteristics similar to CouchDB,
was released.
NoSQL Main Characteristics
NoSQL incorporates a wide range of different systems. In general, these
systems have been created to solve a particular problem, which for various
reasons RDBMSs have not been appropriate (Stonebraker 2010). A typical
NoSQL system presents the following characteristics (Näsholm 2012):
￿ Data partitioning : NoSQL systems are often distributed systems where
several nodes (or servers) cooperate to provide applications with data.
Each piece of data is commonly replicated over several machines to
allow redundancy and availability;
￿ Horizontal scalability : nodes can often be dynamically added to (or
removed from) the system without any downtime, giving linear effects
on storage and overall processing capacities. In general, there is no
(realistic) upper bound on the number of nodes that can be added;
￿ Built for large volumes : most NoSQL systems were built to be able to
store and process large amounts of data quickly;
￿ Lack of schema definition : the structure of data is usually not
defi ned through explicit schemas. Instead, applications store data as
they desire, without having to adhere to a predefi ned structure. This
provides application fl exibility, which ultimately delivers substantial
business fl exibility;
￿ Simple API for data access : NoSQL systems provide APIs to simplify
data access, allowing applications to quickly manipulate data;
￿ Eventual consistency : data consistency is not always preserved among
nodes in a cluster. This characteristic is based on the Brewer's CAP
theorem (Brewer 2000) which states that a distributed system can have at
most two of the three properties: Consistency, Availability and Partition
tolerance. For a growing number of applications, having the last two
properties is most important. Building a database with these properties
while providing ACID properties—Atomicity, Consistency, Isolation and
Durability— is diffi cult. That is why Consistency and Isolation are often
forfeited, resulting in the well-known BASE approach (Pritchett 2008).
BASE stands for Basically Available, Soft state, Eventual consistency,
with which one means that the application that is available basically all
the time, is not always consistent, but will eventually be in some known
state (Vogels 2009);
Search WWH ::




Custom Search