Nosql Introduction


Published on

What is Nosql

Published in: Software, Technology

Nosql Introduction

  1. 1. NoSQL & MongoDBNoSQL & MongoDB {{ 'Name''Name':: 'Anju Singh''Anju Singh',, 'Team''Team':: 'Cloud Team''Cloud Team',, 'Group''Group':: 'Bio-info''Bio-info' }}
  2. 2. Overview What is RDBMS ACID and CAP What is NoSQL Types of NoSql DB Introduction of MongoDB Demo Conclusion Questions
  3. 3. Well Organised Collections of data.Well Organised Collections of data. What is Database?What is Database?
  4. 4. An interface between user and database.An interface between user and database. It is a collection of programs that enables you toIt is a collection of programs that enables you to store, modify and extract information fromstore, modify and extract information from databases.databases. What is DBMS?What is DBMS?
  5. 5. Determines logical structure of dataDetermines logical structure of data What is Database Model?What is Database Model?
  6. 6. Hierarchical ModelHierarchical Model Network ModelNetwork Model Relational ModelRelational Model ER ModelER Model Document ModelDocument Model Object ModelObject Model Various Data ModelsVarious Data Models
  7. 7. RDBMSRDBMS (Relational DataBase Management System)(Relational DataBase Management System) RDBMS is a database management systemdatabase management system based on relational model defined by E.F.Codd. Data is stored in the form of rows and columns in a table and relations among tables are also stored in the form of the table.
  8. 8. SQL SQL is a most popular query language on RDBMS.
  9. 9. Features of RDBMS 1. ACID is a set of properties that guarantees that DB transactions are processed reliably. Atomicity: Either all or none. Consistency: Data is always accurate. Isolation: No interfere with other. Durability: Commit is persistent. 2. Very rich set of query and functionality.
  10. 10. RDBMS is solving every problem
  11. 11. RDBMS is best
  12. 12. Data Tsunami
  13. 13. Started increasing the capacity of RDBMS Severs for scalability.
  14. 14. RDBMS is not working
  15. 15. Solutions they tried
  16. 16. Problems in RDBMS  RDBMS uses centalized storage not distributed.  ACID doesn't provide scalability for distributed system.  It is only for structured data.
  17. 17. Solutions Need Distributed System and Distributed DB.
  18. 18. Started developing their own DB that fulfils their requirements.
  19. 19. CAP Thorem Consistency: Data is same across cluster. Availability: All nodes are ready for read and write operations always. Partition Tolerance: Cluster is working perfectly even if there is a partition in nodes.
  20. 20. Partition tolerance is must for scalability and choose any one between Consistency & Availability
  21. 21. NoSQL A generic term for all DB that do not follow Relational model.
  22. 22. Design Goals of NoSQL DB Designedforbetterscalabilityandperformancebygivingupsomethingliketransaction. Notalldatacanfitinrowandcolumnformat. NotdesignedtoreplaceSQL.
  23. 23. Sql vs Nosql
  24. 24. What we are giving up  Join  Group By  Order By  ACID transactions
  25. 25. NoSQL DB Types Key-Value Column Store Document Store Graph Based
  26. 26. Column (HBASE) Column (HBASE) Graph (Neo4J) Graph (Neo4J) Key-value (Memecache) Key-value (Memecache) Document (MongoDB) Document (MongoDB) RDBMS (MySql) RDBMS (MySql)
  27. 27. MongoDB (from "humongous")
  28. 28. Contains both Equally
  29. 29. MongoDB Document
  30. 30. terminology
  31. 31. MongoDB Application (In more than 12 Languages) MongoDB Driver MongoDB Drivers
  32. 32. Real Life Use Case
  33. 33. Aadhar Card India’s Unique Identification project, aka Aadhar, is the world’s biggest biometrics database. Aadhar is in the process of capturing demographic and biometric data of over 1.2 billion residents. Aadhar has used MongoDB as one of its database to store this huge amount of data.
  34. 34. ebay is an American multinational internet consumer-to-consumer corporation, headquartered in San Jose. eBay has a number of projects running on MongoDB for search suggestions, metadata storage, cloud management and merchandizing categorization.
  35. 35. Conclusion RDBMS is a tool for solving ACID problem. 1. When data validity is super important. 2. When you want rich query like join. NoSQL is good for data availability and scalabilityscalability. 1. when its important to have fast data than right data. 2. When you need to scale on the change of requirement. NoSQL is not a replacement of SQL and vice versa. Use them in combination for best result. Pick the right Tool for Job.
  36. 36. References