Essays /

Nosql Essay

Essay preview

Literature Review

This chapter will discuss Not Only SQL (NOSQL) technologies in general, compares different NOSQL databases, discusses the limitations with Relational Database Management Systems (RDBMS), and gives an understanding of how different databases behave for different variants with different amounts of data in the database. This will lay a foundation for the thesis in general and will evaluate some of the related work in this context. Related Work

The thesis “No Relation: The Mixed Blessings of Non-Relational Databases” [1] gives a good understanding of non-relational data stores. The author discusses the non-relational data stores in detail and how they differ from relational data stores. Comparison of both data models in terms of strengths and weaknesses has also been discussed. Non-relational data stores gained popularity when developers started to realize that there was a need to find an alternative, then non-relational data store and new efficient architectures were developed to make the data read and write fast such as in memory data store and process. As the thesis is more than three years old, some parts are already outdated as new architectures have been developed or modified for good read and write performance. For example, the author discusses super columns in Cassandra which are not recommended to use anymore.

The thesis “Cassandra” [2] gives a good understanding of Apache Cassandra. The author identifies the limitations that exist in RDBMS and how these limitations can be solved using Apache Cassandra such as Scalability. Moreover, differences between Cassandra and RDBMS have also been discussed from different point of views. As thesis is more than two years old, new concepts are not discussed such as Cassandra data store, Cassandra architecture, Cassandra replication strategy, Cassandra data partition, how Cassandra handles read and write requests, and different indexes techniques in Cassandra for efficient data access. Cassandra is an open source project which makes it strong candidate to progress in the next few years. Many wrappers over Remote Procedure Calls (RPC) client have developed for different programming languages described in High level clients in Cassandra5.13High level clients in Cassandra which are also not discussed.

There is no doubt that NOSQL databases are getting popularity, but according to Database Administrators (DBAs) NOSQL has an immature data store. NOSQL proponents react with the argument that RDBMS does not scale large data volume well. The author has not found any example where NOSQL has been used to store financial data. Kristof Kovacs blog NOSQL Database Comparison [3] compares different popular NOSQL databases and identifies the situation in which they are best to use. According to author, Apache Cassandra is mostly suited for banking and financial industry [3].

The next section discusses some of the theoretical basis that would critical as part of this thesis and will put forward some of the important terminologies that will be used as part of this project.

Relational Database Management System (RDBMS)

Relational Database Management Systems (RDBMS) is based on relational model which was introduced by E. F. Codd. RDBMS is the basis for Structured Query Language (SQL) and modern database systems like Oracle, MS SQL Server, MySQL, and PostgreSQL [4]. In general, RDBMS provides following features: * Data are stored in tables.

* Data storage is in the form of rows and columns.
* Primary keys are used to uniquely classify the rows.
* Indexing facility makes the data retrieval faster.
* Databases allow the creation of views or virtual tables. * Primary and foreign keys can be used to define relationship between two entities, i.e. the existence of a common column between two tables. * Multi-user accessibility

Table

In Relational Database Management Systems (RDBMS), the data are stored in objects called tables. A table is a collection of rows and columns, and is the most common and the simplest form of data storage in relational databases.

Figure 2.1: A Table in RDBMS
Record Field

Every table is broken into smaller entities called fields. Each row in the table represents a field.

Figure 2.2: A record in RDBMS
...

Read more

Keywords

/cassandra-vs-mongodb-vs-couchdb-vs-redis. /mongodb/nosql.php. /od/specificproducts/a/acid.htm/ /sql/sql-rdbms-concepts.htm. /viewdoc/download?doi=10.1.1.20.1495&rep=rep1&type=pdf. /~tjm/seminars/nosql2012/nosql-intro.pdf, 07 1 10 100 11 2 2.1 2.2 2.3 2.4 2.5 2.6 2.8 2006 2009 2010 2011 2012 3 3scalability 4 5 6 7 8 9 a.pilchin abil above3 accept access accord accumulo accuraci achiev acid acknowledg acm across ad administr advantag allow alon alreadi also altern alway amazon among amount anoth ansar anymor ap apach appear applic approach architectur argument arrang arto assign associ atom attribut austin author automat avaialbl avail avoid back back-end backup bank base basi becam becom behav best better big bigtabl bigtable/column bless block blog brewer bring broken burrow busi c ca california call candid cannot cap case cassandra cassandra5.13high categori certain chandra chang chappl chapter check choic choos citeseerx.ist.psu.edu citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.20.1495&rep=rep1&type=pdf. classifi client clone cloud cloudera cluster codd collect column come commit common communic compar comparison complet complex concept concern condit conjectur consist constraint contain context continu contrast cope correspond cp creat creation critic d data databas databases.about.com databases.about.com/od/specificproducts/a/acid.htm/ date dbas dean deborah decandia decid default defend defin definit depend describ design desir detail develop differ difficult direct disadvantag discuss distinct distribut divid document domain doubt due dumb duplic durabl dynamo e easiest easili effici either els employ end enforc ensur entir entiti environ equal evalu everi exampl execut exist exponenti express f facebook facil fail failur famili family/big family/bigtable fashion fast faster feasibl featur field figur fike financi find five fix follow foreign form format formul forward found foundat four g g.kakulapati gain general generat get ghemawat give goal goe good googl govern graph great group growth gruber guarante hadoop/hbase handl happen hardwar hash hastorun heavili help henc high hold horizont howev hsieh huge hypert i.e i.t identifi ijaest immatur implement import improv increas independ index individu industri ineffici inform institut integr interest intermedi introduc introduct involv isol issu ital item j j.bohman j.hilding jampano join june key key-valu kkovacs.eu kkovacs.eu/cassandra-vs-mongodb-vs-couchdb-vs-redis. kovac kristof lack lakshman languag lar larg latenc lay layer less let level like limit linear linkedin list literatur log logic long look look-up loss lost m m.ranjan machin made make manag mani manner manual marri master mean meet memori mention might mike mix model modern modifi moment moreov most move ms multi multi-us multipl must mysql natur necessarili need never new next next-gener node non non-rel none nosql noth null number object offer old oldest one open oper optim option oracl order organ osdi outdat outgrown overload p.vosshall padhi pair paper part particular partit partition-toler patra perform persist phase pick play point pointer popular portion possibl postgresql power prasad predefin press prevent primari proc procedur process produc professor program progress project properti propon provid publish push put queri quick r rang rather rdbms react read read/write realiz reason receiv recommend record record/entity record/row refer referenc referenti regardless relat relationship reliabl remark remot replic repres request requir research respond respons restrict retriev return review riak right risk robert role roll row royal rpc rule s.chandra s.sivasubramanian sacrif sacrific said salminen satapathi satisfi scalabl scale scenario schema section see seen select sent serv server servic set sever shard shown simpl simplest singl situat size slave slow smaller solid solut solv sosp sourc specif specifi split sql standard start state still storag store strategi strength strong structur success suit super support synchron system tabl table-bas table-less take techniqu technolog term terminolog texa theorem theoret thesi thing third thousand three time today tokyo toler tool trade trade-off transact two type typic unavail understand uniqu univers unmarri up-to-d updat upgrad usa use user user-defin usual valid valu variant varley versa vertic vice view violat virtual vol.11 voldemort volum w.vogels wallach want washington way weak web well whole wife wilson within work would wrapper write written www.cs.tut.fi www.cs.tut.fi/~tjm/seminars/nosql2012/nosql-intro.pdf, www.tutorialspoint.com www.tutorialspoint.com/sql/sql-rdbms-concepts.htm. www.w3resource.com www.w3resource.com/mongodb/nosql.php. year yes yet