Mais conteúdo relacionado


Non relational databases-no sql

  1. Non-Relational Databases-NoSQL Ramkumar.R 1st-MCA Department of Computer Science Pope John Paul II College of Education Pondicherry
  2. Content  Introduction  History  Characteristics  NoSQL Database Classification  Categories of NoSQL Database  Major NoSQL Databases  Limitation of SQL  Benefits of NoSQL  Concerns and challenges  Production Deployment  References
  3. Introduction Many organizations collect vast amounts of customer, scientific, sales, and other data for future analysis. Traditionally, most of these organizations have stored structured data in relational databases for subsequent access and analysis. However, a growing number of developers and users have begun turning to various types of non-relational, now frequently called NoSQL-databases.
  4. In computing, NoSQL (commonly interpreted as "not only SQL") is a broad class of database management systems identified by non-adherence to the widely used relational database management system model. NoSQL databases are not built primarily on tables, and generally do not use SQL for data manipulation. NoSQL database systems are often highly optimized for retrieval and appending operations and often offer little functionality beyond record storage (e.g. key–value stores).
  5. NoSQL database management systems are useful when working with a huge quantity of data when the data's nature does not require a relational model.  The data can be structured, but NoSQL is used when what really matters is the ability to store and retrieve great quantities of data, not the relationships between the elements.
  6. History  The term NoSQL was coined by Carlo Strozzi in the year 1998.  In the early 2009, Eric Evans, a Rackspace employee, reused the term to refer databases which are non-relational, distributed, and does not conform to atomicity, consistency, isolation, and durability.  In the same year, the NoSQL conference held in Atlanta, USA, and NoSQL saw an unprecedented growth.
  7. Characteristics  No schema required, Data can be inserted in a NoSQL database without first defining a rigid database schema.  Auto-sharding(sometimes called “elasticity”). A NoSQL database automatically spreads data across servers, without requiring applications to participate.  Distributed query support, NoSQL database systems retain their full query expressive power even when distributed across hundreds or thousands of servers.
  8. Integrated caching. To reduce latency and increase sustained data throughput, advanced NoSQL database technologies transparently cache data in system memory.
  9. NoSQL Database Classification  Key-value stores: Data is saved with a unique key and a value. This is incredibly fast and this can scale to large size.  Column stores: They store all of the values for a column together in a stream instead of storing records.  Document stores: They save data without it being structured in a schema, with buckets of key-value pairs inside a self-contained object.
  10. Graph databases: They store data in a flexible graph model that contains a node for each object.
  11. Categories of NoSQL Database Category Description Name of the database Document Oriented Data is stored as documents. An example CouchDB, Jackrabbit, format may be like - FirstName="Arun", MongoDB, OrientDB, Address="St. Xavier's Road", SimpleDB,Terrastore Spouse=[{Name:"Kiran"}], Children=[{Name:"Rihit", Age:8}] XML database Data is stored in XML format BaseX, eXist, MarkLogic Server etc. Graph databases Data is stored as a collection of nodes, where AllegroGraph, DEX, Neo4j, nodes are analogous to objects in a FlockDB, Sones GraphDB programming language. Nodes are connected using edges. Key-value store In Key-value-store category of NoSQL Cassandra, Riak, Redis, database, a user can store data in schema-less memcached, BigTable way. A key may be strings, hashes, lists, sets, sorted sets and values are stored against these keys.
  12. Major NoSQL Databases  Dynamo: Dynamo was created by and is the most prominent Key-Value NoSQL database.  Cassandra: Cassandra was open sourced by Facebook and is a column oriented NoSQL database.  BigTable: BigTable is Google's proprietary column oriented database.
  13. SimpleDB: SimpleDB is another Amazon database. Used for Amazon EC2 and S3, it is part of Amazon Web Services.  CouchDB: CouchDB along with MongoDB are open source document oriented NoSQL databases.  Neo4J: Neo4j is an open source graph database.
  14. Limitation of SQL Database  Scaling, Relational databases don’t work easily in a distributed manner because joining their tables across a distributed system is difficult.  Complexity, with relational databases, users must convert all data into tables. When the data doesn’t fit easily into a table, the database’s structure can be complex, difficult, and slow to work with.
  15. Data, Using SQL is convenient with structured data. However, using the language with other types of information is difficult.  Large feature set, Relational databases offer a big feature set and data integrity.
  16. Benefits of NoSQL  Big data, just as transaction rates have grown out of recognition over the last decade, the volumes of data that are being stored also have increased massively.  Goodbye DBAs, NoSQL databases are generally designed from the ground up to require less management, automatic repair, data distribution, and simpler data models.
  17. Flexible data models, NoSQL Key Value stores and document databases allow the application to store virtually any structure it wants in a data element.  Elastic scaling, NoSQL databases are designed to expand transparently to take advantage of new nodes, and they’re usually designed with low-cost commodity hardware in mind.  Economics, NoSQL databases typically use clusters of cheap commodity servers
  18. Concerns and Challenges  Overhead and complexity, Because NoSQL databases don’t work with SQL, they require manual query programming.  Reliability, Relational databases natively support ACID, while NoSQL databases don’t.  Consistency, Because NoSQL databases don’t natively support ACID transactions, they also could compromise consistency, unless manual support is provided.
  19. Unfamiliarity with the technology, Most organizations are unfamiliar with NoSQL databases.  Limited Eco structure, unlike commercial relational databases, many open source NoSQL application don’t yet come with customer support or management tools.
  20. Production Deployment There is a large number of companies using NoSQL. To name a few:  Google  Facebook  Mozilla  Adobe  Foursquare  LinkedIn  McGraw-Hill Education
  21. Reference  1. Neal Leavitt, “Will NoSQL live up to their promise”, IEEE Computer Society volume: 43 issue: 2, February, 2010, pp.12-14.  2. Carlos Coronel, Steven Morris, Peter Rob,” Database Systems: Design, Implementation, and Management”, Tenth Edition, 2013, pp.47-49.  3. Pethuru Raj,” Cloud Enterprise Architecture”, CRC press, 2013, pp.190-195.
  22. 4. Tim Juravich,” Couch DB and PHP Web Development Beginner's Guide”, PACKT Publishing, June 2012, Chapter 1.  5. Jing Han, “Survey on NoSQL database”, IEEE Pervasive Computing and Applications (ICPCA), 2011 6th International Conference”, 26-28 Oct. 2011, pp.363-366.  6. Wyile.b, “Using NoSQL Database for Streaming Network Analysis”, IEEE Large Data Analysis and Visualization (LDAV), 2012, 14-15 Oct. 2012, pp.121-124