SlideShare a Scribd company logo
1
UNIT I Introduction to
NoSQL
Agenda
• Understanding NoSQL Databases,
• History of NoSQL
• Features of NoSQL- Scalability, Cost, Flexibility
• NoSQL Business Drivers
• Classification and Comparison of NoSQL Databases
• Consistency – Availability - Partitioning (CAP)
• Limitations of Relational Databases
• Comparing NoSQL with RDBMS
Understanding NoSQL Database
• NoSQL stands for:
• No Relational
• No RDBMS
• Not Only SQL
• NoSQL is an umbrella term for all databases and data stores that
don’t follow the RDBMS principles
• A collection of several (related) concepts about data storage and manipulation
• Often related to large data sets
NoSQL Definition
From www.nosql-database.org:
Next Generation Databases mostly addressing some of the
points: being non-relational, distributed, open-source and
horizontal scalable.
The original intention has been modern web-scale
databases. The movement began early 2009 and is growing
rapidly.
Often more characteristics apply as: schema-free, easy
replication support, simple API, eventually consistent /
BASE (not ACID), a huge data amount, and more.
History of NoSQL
• Non-relational DBMSs are not new
• But NoSQL represents a new incarnation
• Due to massively scalable Internet applications
• Based on distributed and parallel computing
• Development
• Starts with Google
• First research paper published in 2003
• Continues also thanks to Lucene's developers/Apache (Hadoop) and Amazon
(Dynamo)
• Then a lot of products and interests came from Facebook, Netflix, Yahoo, eBay,
Hulu, IBM, and many more
History of NoSQL
• Three major papers were the seeds of the NoSQL movement
• BigTable (Google)
• Dynamo (Amazon)
• Distributed key-value data store
• Eventual consistency
• CAP Theorem (discuss in a sec ..)
NoSQL and Big Data
• NoSQL comes from Internet, thus it is often related to the “big
data” concept
• How much big are “big data”?
• Over few terabytes Enough to start spanning multiple storage units
• Challenges
• Efficiently storing and accessing large amounts of data is difficult, even more
considering fault tolerance and backups
• Manipulating large data sets involves running immensely parallel processes
• Managing continuously evolving schema and metadata for semi-structured and
un-structured data is difficult
How did we get here?
• Explosion of social media sites (Facebook, Twitter) with large
data needs
• Rise of cloud-based solutions such as Amazon S3 (simple
storage solution)
• Just as moving to dynamically-typed languages (Python, Ruby,
Groovy), a shift to dynamically-typed data with frequent
schema changes
• Open-source community
Limitations of Relational Databases
• The context is Internet
• RDBMSs assume that data are
• Dense
• Largely uniform (structured data)
• Data coming from Internet are
• Massive and sparse
• Semi-structured or unstructured
• With massive sparse data sets, the typical storage mechanisms
and access methods get stretched
Limitations of Relational Databases
• Issues with scaling up when the dataset is just too big
• RDBMS were not designed to be distributed
• Traditional DBMSs are best designed to run well on a
“single” machine
• Larger volumes of data/operations requires to upgrade the server with faster
CPUs or more memory known as ‘scaling up’ or ‘Vertical scaling’
• NoSQL solutions are designed to run on clusters or multi-
node database solutions
• Larger volumes of data/operations requires to add more machines to the
cluster, Known as ‘scaling out’ or ‘horizontal scaling’
• Different approaches include:
• Master-slave
• Sharding (partitioning)
Limitations of Relational Databases
• Master-Slave
• All writes are written to the master. All reads performed against
the replicated slave databases
• Critical reads may be incorrect as writes may not have been
propagated down
• Large data sets can pose problems as master needs to duplicate
data to
• Sharding
• Any DB distributed across multiple machines needs to
know in what machine a piece of data is stored or must be
stored
• A sharding system makes this decision for each row, using
its key
Features of NoSQL
•Large data volumes
• Google’s “big data”
•Scalable replication
and distribution
• Potentially thousands of
machines
• Potentially distributed
around the world
•Queries need to return
answers quickly
•Mostly query, few
updates
• Asynchronous Inserts &
Updates
• Schema-less
• ACID transaction
properties are not needed –
BASE
• CAP Theorem
• Open source development
NoSQL Database Types
Discussing NoSQL databases is complicated
because there are a variety of types:
•Sorted ordered Column Store
•Optimized for queries over large datasets, and store
columns of data together, instead of rows
•Document databases:
•pair each key with a complex data structure known as a document.
•Key-Value Store :
•are the simplest NoSQL databases. Every single item in the database is stored as
an attribute name (or 'key'), together with its value.
•Graph Databases :
•are used to store information about networks of data, such as social connections.
Document Databases (Document Store)
• Documents
• Loosely structured sets of key/value pairs in documents, e.g., XML, JSON,
BSON
• Encapsulate and encode data in some standard formats or encodings
• Are addressed in the database via a unique key
• Documents are treated as a whole, avoiding splitting a document into its
constituent name/value pairs
• Allow documents retrieving by keys or contents
• Notable for:
• MongoDB (used in FourSquare, Github, and more)
• CouchDB (used in Apple, BBC, Canonical, Cern, and more)
Document Databases (Document Store)
• The central concept is the notion of a "document“ which corresponds to a
row in RDBMS.
• A document comes in some standard formats like JSON (BSON).
• Documents are addressed in the database via a unique key that represents
that document.
• The database offers an API or query language that retrieves documents
based on their contents.
• Documents are schema free, i.e., different documents can have structures
and schema that differ from one another. (An RDBMS requires that each
row contain the same columns.)
15
Document Databases, JSON
{
_id: ObjectId("51156a1e056d6f966f268f81"),
type: "Article",
author: "Derick Rethans",
title: "Introduction to Document Databases with MongoDB",
date: ISODate("2013-04-24T16:26:31.911Z"),
body: "This arti…"
},
{
_id: ObjectId("51156a1e056d6f966f268f82"),
type: "Book",
author: "Derick Rethans",
title: "php|architect's Guide to Date and Time Programming with PHP",
isbn: "978-0-9738621-5-7"
}
Key/Value stores
• Store data in a schema-less way
• Store data as maps
• HashMaps or associative arrays
• Provide a very efficient average running
time algorithm for accessing data
• Notable for:
• Couchbase (Zynga, Vimeo, NAVTEQ, ...)
• Redis (Craiglist, Instagram, StackOverfow,
flickr, ...)
• Amazon Dynamo (Amazon, Elsevier,
IMDb, ...)
• Apache Cassandra (Facebook, Digg,
Reddit, Twitter,...)
• Voldemort (LinkedIn, eBay, …)
• Riak (Github, Comcast, Mochi, ...)
Sorted Ordered Column-Oriented Stores
• Data are stored in a column-oriented way
• Data efficiently stored
• Avoids consuming space for storing nulls
• Columns are grouped in column-families
• Data isn’t stored as a single table but is stored by column families
• Unit of data is a set of key/value pairs
• Identified by “row-key”
• Ordered and sorted based on row-key
• Notable for:
• Google's Bigtable (used in all
Google's services)
• HBase (Facebook, StumbleUpon,
Hulu, Yahoo!, ...)
Graph Databases
• Graph-oriented
• Everything is stored as an edge, a node or an attribute.
• Each node and edge can have any number of attributes.
• Both the nodes and edges can be labelled.
• Labels can be used to narrow searches.
19
NoSQL, No ACID
• RDBMSs are based on ACID (Atomicity, Consistency,
Isolation, and Durability) properties
• NoSQL
• Does not give importance to ACID properties
• In some cases completely ignores them
• In distributed parallel systems it is difficult/impossible to
ensure ACID properties
• Long-running transactions don't work because keeping resources
blocked for a long time is not practical
BASE Transactions
•Acronym contrived to be the opposite of ACID
• Basically Available,
• Soft state,
• Eventually Consistent
•Characteristics
• Weak consistency – stale data OK
• Availability first
• Best effort
• Approximate answers OK
• Aggressive (optimistic)
• Simpler and faster
CAP Theorem
A congruent and logical way for assessing the problems involved in
assuring ACID-like guarantees in distributed systems is provided by the
CAP theorem
At most two of the following three can be maximized at one time
• Consistency
• Each client has the same view of the
data
• Availability
• Each client can always read and write
• Partition tolerance
• System works well across distributed
physical networks
CAP Theorem: Two out of Three
• CAP theorem – At most two properties on three can be
addressed
• The choices could be as follows:
1. Availability is compromised but consistency and partition
tolerance are preferred over it
2. The system has little or no partition tolerance. Consistency
and availability are preferred
3. Consistency is compromised but systems are always
available and can work when parts of it are partitioned
Consistency or Availability
C A
P
• Consistency and Availability is not
“binary” decision
• AP systems relax consistency in
favor of availability – but are not
inconsistent
• CP systems sacrifice availability for
consistency- but are not unavailable
• This suggests both AP and CP
systems can offer a degree of
consistency, and availability, as
well as partition tolerance
Performance
• There is no perfect NoSQL database
• Every database has its advantages and disadvantages
• Depending on the type of tasks (and preferences) to accomplish
• NoSQL is a set of concepts, ideas, technologies, and software
dealing with
• Big data
• Sparse un/semi-structured data
• High horizontal scalability
• Massive parallel processing
• Different applications, goals, targets, approaches need
different NoSQL solutions
Where would I use it?
• Where would I use a NoSQL database?
• Do you have somewhere a large set of uncontrolled, unstructured,
data that you are trying to fit into a RDBMS?
• Log Analysis
• Social Networking Feeds (many firms hooked in through Facebook or
Twitter)
• External feeds from partners
• Data that is not easily analyzed in a RDBMS such as time-based data
• Large data feeds that need to be massaged before entry into an
RDBMS
Don’t forget about the DBA
• It does not matter if the data is deployed on a NoSQL
platform instead of an RDBMS.
• Still need to address:
• Backups & recovery
• Capacity planning
• Performance monitoring
• Data integration
• Tuning & optimization
• What happens when things don’t work as expected and
nodes are out of sync or you have a data corruption
occurring at 2am?
• Who you gonna call?
• DBA and SysAdmin need to be on board
The Perfect Storm
• Large datasets, acceptance of alternatives, and dynamically-
typed data has come together in a perfect storm
• Not a backlash/rebellion against RDBMS
• SQL is a rich query language that cannot be rivaled by the
current list of NoSQL offerings
• So you have reached a point where a read-only cache and write-based
RDBMS isn’t delivering the throughput necessary to support a particular
application.
• You need to examine alternatives and what alternatives are out there.
• The NoSQL databases are a pragmatic response to growing scale of databases
and the falling prices of commodity hardware.
Summary
• Most likely, 10 years from now, the majority of data is still
stored in RDBMS.
• Leading users of NoSQL datastores are social networking
sites such as Twitter, Facebook, LinkedIn, and Digg.
• Not every problem is a nail and not every solution is a
hammer.
• NoSQL has taken a field that was "dead" (database
development) and suddenly brought it back to life.
Ad

More Related Content

What's hot (20)

HBASE Overview
HBASE OverviewHBASE Overview
HBASE Overview
Sampath Rachakonda
 
Hadoop Hbase - Introduction
Hadoop Hbase - IntroductionHadoop Hbase - Introduction
Hadoop Hbase - Introduction
Blandine Larbret
 
Hadoop Family and Ecosystem
Hadoop Family and EcosystemHadoop Family and Ecosystem
Hadoop Family and Ecosystem
tcloudcomputing-tw
 
Ceph as software define storage
Ceph as software define storageCeph as software define storage
Ceph as software define storage
Mahmoud Shiri Varamini
 
Intro to HBase
Intro to HBaseIntro to HBase
Intro to HBase
alexbaranau
 
Apache Sqoop: A Data Transfer Tool for Hadoop
Apache Sqoop: A Data Transfer Tool for HadoopApache Sqoop: A Data Transfer Tool for Hadoop
Apache Sqoop: A Data Transfer Tool for Hadoop
Cloudera, Inc.
 
Ceph Block Devices: A Deep Dive
Ceph Block Devices:  A Deep DiveCeph Block Devices:  A Deep Dive
Ceph Block Devices: A Deep Dive
Red_Hat_Storage
 
Apache Sqoop Tutorial | Sqoop: Import & Export Data From MySQL To HDFS | Hado...
Apache Sqoop Tutorial | Sqoop: Import & Export Data From MySQL To HDFS | Hado...Apache Sqoop Tutorial | Sqoop: Import & Export Data From MySQL To HDFS | Hado...
Apache Sqoop Tutorial | Sqoop: Import & Export Data From MySQL To HDFS | Hado...
Edureka!
 
Hive presentation
Hive presentationHive presentation
Hive presentation
Hitesh Agrawal
 
Ceph c01
Ceph c01Ceph c01
Ceph c01
Lâm Đào
 
Hadoop Tutorial For Beginners
Hadoop Tutorial For BeginnersHadoop Tutorial For Beginners
Hadoop Tutorial For Beginners
Dataflair Web Services Pvt Ltd
 
CAP Theorem - Theory, Implications and Practices
CAP Theorem - Theory, Implications and PracticesCAP Theorem - Theory, Implications and Practices
CAP Theorem - Theory, Implications and Practices
Yoav Francis
 
Hadoop Security Architecture
Hadoop Security ArchitectureHadoop Security Architecture
Hadoop Security Architecture
Owen O'Malley
 
OLAP Cubes in Datawarehousing
OLAP Cubes in DatawarehousingOLAP Cubes in Datawarehousing
OLAP Cubes in Datawarehousing
Prithwis Mukerjee
 
Hive + Tez: A Performance Deep Dive
Hive + Tez: A Performance Deep DiveHive + Tez: A Performance Deep Dive
Hive + Tez: A Performance Deep Dive
DataWorks Summit
 
Apache hadoop hbase
Apache hadoop hbaseApache hadoop hbase
Apache hadoop hbase
sheetal sharma
 
Présentation des bases de données NoSql
Présentation des bases de données NoSqlPrésentation des bases de données NoSql
Présentation des bases de données NoSql
Sidi LEKHALIFA
 
Cours Big Data Chap6
Cours Big Data Chap6Cours Big Data Chap6
Cours Big Data Chap6
Amal Abid
 
How to understand and analyze Apache Hive query execution plan for performanc...
How to understand and analyze Apache Hive query execution plan for performanc...How to understand and analyze Apache Hive query execution plan for performanc...
How to understand and analyze Apache Hive query execution plan for performanc...
DataWorks Summit/Hadoop Summit
 
Redis Introduction
Redis IntroductionRedis Introduction
Redis Introduction
Alex Su
 
Hadoop Hbase - Introduction
Hadoop Hbase - IntroductionHadoop Hbase - Introduction
Hadoop Hbase - Introduction
Blandine Larbret
 
Apache Sqoop: A Data Transfer Tool for Hadoop
Apache Sqoop: A Data Transfer Tool for HadoopApache Sqoop: A Data Transfer Tool for Hadoop
Apache Sqoop: A Data Transfer Tool for Hadoop
Cloudera, Inc.
 
Ceph Block Devices: A Deep Dive
Ceph Block Devices:  A Deep DiveCeph Block Devices:  A Deep Dive
Ceph Block Devices: A Deep Dive
Red_Hat_Storage
 
Apache Sqoop Tutorial | Sqoop: Import & Export Data From MySQL To HDFS | Hado...
Apache Sqoop Tutorial | Sqoop: Import & Export Data From MySQL To HDFS | Hado...Apache Sqoop Tutorial | Sqoop: Import & Export Data From MySQL To HDFS | Hado...
Apache Sqoop Tutorial | Sqoop: Import & Export Data From MySQL To HDFS | Hado...
Edureka!
 
CAP Theorem - Theory, Implications and Practices
CAP Theorem - Theory, Implications and PracticesCAP Theorem - Theory, Implications and Practices
CAP Theorem - Theory, Implications and Practices
Yoav Francis
 
Hadoop Security Architecture
Hadoop Security ArchitectureHadoop Security Architecture
Hadoop Security Architecture
Owen O'Malley
 
OLAP Cubes in Datawarehousing
OLAP Cubes in DatawarehousingOLAP Cubes in Datawarehousing
OLAP Cubes in Datawarehousing
Prithwis Mukerjee
 
Hive + Tez: A Performance Deep Dive
Hive + Tez: A Performance Deep DiveHive + Tez: A Performance Deep Dive
Hive + Tez: A Performance Deep Dive
DataWorks Summit
 
Présentation des bases de données NoSql
Présentation des bases de données NoSqlPrésentation des bases de données NoSql
Présentation des bases de données NoSql
Sidi LEKHALIFA
 
Cours Big Data Chap6
Cours Big Data Chap6Cours Big Data Chap6
Cours Big Data Chap6
Amal Abid
 
How to understand and analyze Apache Hive query execution plan for performanc...
How to understand and analyze Apache Hive query execution plan for performanc...How to understand and analyze Apache Hive query execution plan for performanc...
How to understand and analyze Apache Hive query execution plan for performanc...
DataWorks Summit/Hadoop Summit
 
Redis Introduction
Redis IntroductionRedis Introduction
Redis Introduction
Alex Su
 

Similar to UNIT I Introduction to NoSQL.pptx (20)

UNIT I Introduction to NoSQL.pptx
UNIT I Introduction to NoSQL.pptxUNIT I Introduction to NoSQL.pptx
UNIT I Introduction to NoSQL.pptx
Rahul Borate
 
Introduction to Data Science NoSQL.pptx
Introduction to Data Science  NoSQL.pptxIntroduction to Data Science  NoSQL.pptx
Introduction to Data Science NoSQL.pptx
tarakesh7199
 
NOsql Presentation.pdf
NOsql Presentation.pdfNOsql Presentation.pdf
NOsql Presentation.pdf
AkshayDwivedi31
 
cours database pour etudiant NoSQL (1).pptx
cours database pour etudiant NoSQL (1).pptxcours database pour etudiant NoSQL (1).pptx
cours database pour etudiant NoSQL (1).pptx
ssuser1fde9c
 
NoSQL.pptx
NoSQL.pptxNoSQL.pptx
NoSQL.pptx
RithikRaj25
 
NOSQL PRESENTATION ON INTRRODUCTION Intro.pptx
NOSQL PRESENTATION ON INTRRODUCTION Intro.pptxNOSQL PRESENTATION ON INTRRODUCTION Intro.pptx
NOSQL PRESENTATION ON INTRRODUCTION Intro.pptx
plvdravikumarit
 
Database Technologies
Database TechnologiesDatabase Technologies
Database Technologies
Michel de Goede
 
Revision
RevisionRevision
Revision
David Sherlock
 
No SQL
No SQLNo SQL
No SQL
The lazy hoplite
 
Oracle Week 2016 - Modern Data Architecture
Oracle Week 2016 - Modern Data ArchitectureOracle Week 2016 - Modern Data Architecture
Oracle Week 2016 - Modern Data Architecture
Arthur Gimpel
 
NoSql - mayank singh
NoSql - mayank singhNoSql - mayank singh
NoSql - mayank singh
Mayank Singh
 
No SQL- The Future Of Data Storage
No SQL- The Future Of Data StorageNo SQL- The Future Of Data Storage
No SQL- The Future Of Data Storage
Bethmi Gunasekara
 
Cassandra an overview
Cassandra an overviewCassandra an overview
Cassandra an overview
PritamKathar
 
Big Data technology Landscape
Big Data technology LandscapeBig Data technology Landscape
Big Data technology Landscape
ShivanandaVSeeri
 
No sql databases
No sql databasesNo sql databases
No sql databases
swathika rajan
 
cloud computinghshdbbsbshdhsjdbxbxhdnxbxbsbxbxbxbx
cloud computinghshdbbsbshdhsjdbxbxhdnxbxbsbxbxbxbxcloud computinghshdbbsbshdhsjdbxbxhdnxbxbsbxbxbxbx
cloud computinghshdbbsbshdhsjdbxbxhdnxbxbsbxbxbxbx
cpbloger553
 
NoSql
NoSqlNoSql
NoSql
Girish Khanzode
 
Solr cloud the 'search first' nosql database extended deep dive
Solr cloud the 'search first' nosql database   extended deep diveSolr cloud the 'search first' nosql database   extended deep dive
Solr cloud the 'search first' nosql database extended deep dive
lucenerevolution
 
SQL, NoSQL, Distributed SQL: Choose your DataStore carefully
SQL, NoSQL, Distributed SQL: Choose your DataStore carefullySQL, NoSQL, Distributed SQL: Choose your DataStore carefully
SQL, NoSQL, Distributed SQL: Choose your DataStore carefully
Md Kamaruzzaman
 
Relational and non relational database 7
Relational and non relational database 7Relational and non relational database 7
Relational and non relational database 7
abdulrahmanhelan
 
UNIT I Introduction to NoSQL.pptx
UNIT I Introduction to NoSQL.pptxUNIT I Introduction to NoSQL.pptx
UNIT I Introduction to NoSQL.pptx
Rahul Borate
 
Introduction to Data Science NoSQL.pptx
Introduction to Data Science  NoSQL.pptxIntroduction to Data Science  NoSQL.pptx
Introduction to Data Science NoSQL.pptx
tarakesh7199
 
cours database pour etudiant NoSQL (1).pptx
cours database pour etudiant NoSQL (1).pptxcours database pour etudiant NoSQL (1).pptx
cours database pour etudiant NoSQL (1).pptx
ssuser1fde9c
 
NOSQL PRESENTATION ON INTRRODUCTION Intro.pptx
NOSQL PRESENTATION ON INTRRODUCTION Intro.pptxNOSQL PRESENTATION ON INTRRODUCTION Intro.pptx
NOSQL PRESENTATION ON INTRRODUCTION Intro.pptx
plvdravikumarit
 
Oracle Week 2016 - Modern Data Architecture
Oracle Week 2016 - Modern Data ArchitectureOracle Week 2016 - Modern Data Architecture
Oracle Week 2016 - Modern Data Architecture
Arthur Gimpel
 
NoSql - mayank singh
NoSql - mayank singhNoSql - mayank singh
NoSql - mayank singh
Mayank Singh
 
No SQL- The Future Of Data Storage
No SQL- The Future Of Data StorageNo SQL- The Future Of Data Storage
No SQL- The Future Of Data Storage
Bethmi Gunasekara
 
Cassandra an overview
Cassandra an overviewCassandra an overview
Cassandra an overview
PritamKathar
 
Big Data technology Landscape
Big Data technology LandscapeBig Data technology Landscape
Big Data technology Landscape
ShivanandaVSeeri
 
cloud computinghshdbbsbshdhsjdbxbxhdnxbxbsbxbxbxbx
cloud computinghshdbbsbshdhsjdbxbxhdnxbxbsbxbxbxbxcloud computinghshdbbsbshdhsjdbxbxhdnxbxbsbxbxbxbx
cloud computinghshdbbsbshdhsjdbxbxhdnxbxbsbxbxbxbx
cpbloger553
 
Solr cloud the 'search first' nosql database extended deep dive
Solr cloud the 'search first' nosql database   extended deep diveSolr cloud the 'search first' nosql database   extended deep dive
Solr cloud the 'search first' nosql database extended deep dive
lucenerevolution
 
SQL, NoSQL, Distributed SQL: Choose your DataStore carefully
SQL, NoSQL, Distributed SQL: Choose your DataStore carefullySQL, NoSQL, Distributed SQL: Choose your DataStore carefully
SQL, NoSQL, Distributed SQL: Choose your DataStore carefully
Md Kamaruzzaman
 
Relational and non relational database 7
Relational and non relational database 7Relational and non relational database 7
Relational and non relational database 7
abdulrahmanhelan
 
Ad

More from Rahul Borate (20)

ch7 powerpoint presentation introduction.ppt
ch7 powerpoint presentation  introduction.pptch7 powerpoint presentation  introduction.ppt
ch7 powerpoint presentation introduction.ppt
Rahul Borate
 
chapter 4 introduction to powerpoint .ppt
chapter 4 introduction to powerpoint .pptchapter 4 introduction to powerpoint .ppt
chapter 4 introduction to powerpoint .ppt
Rahul Borate
 
chapter ppt presentation engineering 1.ppt
chapter ppt presentation engineering 1.pptchapter ppt presentation engineering 1.ppt
chapter ppt presentation engineering 1.ppt
Rahul Borate
 
student t-test (new) distrutuin t test.ppt
student t-test (new) distrutuin t test.pptstudent t-test (new) distrutuin t test.ppt
student t-test (new) distrutuin t test.ppt
Rahul Borate
 
scatter plots and visualization concept.pptx
scatter plots and visualization concept.pptxscatter plots and visualization concept.pptx
scatter plots and visualization concept.pptx
Rahul Borate
 
Corelation and covariance and cocrrr.ppt
Corelation and covariance and cocrrr.pptCorelation and covariance and cocrrr.ppt
Corelation and covariance and cocrrr.ppt
Rahul Borate
 
Box Plot in stat using python hypothesis.pptx
Box Plot in stat using python hypothesis.pptxBox Plot in stat using python hypothesis.pptx
Box Plot in stat using python hypothesis.pptx
Rahul Borate
 
Data Visualization_pandas in hadoop.pptx
Data Visualization_pandas in hadoop.pptxData Visualization_pandas in hadoop.pptx
Data Visualization_pandas in hadoop.pptx
Rahul Borate
 
sampling for statistics and population.ppt
sampling for statistics and population.pptsampling for statistics and population.ppt
sampling for statistics and population.ppt
Rahul Borate
 
Software and Hardware for requirements.pptx
Software and Hardware for requirements.pptxSoftware and Hardware for requirements.pptx
Software and Hardware for requirements.pptx
Rahul Borate
 
Hadoop and their in big data analysis EcoSystem.pptx
Hadoop and their in big data analysis EcoSystem.pptxHadoop and their in big data analysis EcoSystem.pptx
Hadoop and their in big data analysis EcoSystem.pptx
Rahul Borate
 
UNIT II Evaluating NoSQL for various .pptx
UNIT II Evaluating NoSQL for various .pptxUNIT II Evaluating NoSQL for various .pptx
UNIT II Evaluating NoSQL for various .pptx
Rahul Borate
 
Unit III Key-Value Based Databases in nosql.pptx
Unit III Key-Value Based Databases in nosql.pptxUnit III Key-Value Based Databases in nosql.pptx
Unit III Key-Value Based Databases in nosql.pptx
Rahul Borate
 
Syllabus presentation stastics for management
Syllabus presentation stastics for managementSyllabus presentation stastics for management
Syllabus presentation stastics for management
Rahul Borate
 
PigHive presentation and hive impor.pptx
PigHive presentation and hive impor.pptxPigHive presentation and hive impor.pptx
PigHive presentation and hive impor.pptx
Rahul Borate
 
Unit 4_Introduction to Server Farms.pptx
Unit 4_Introduction to Server Farms.pptxUnit 4_Introduction to Server Farms.pptx
Unit 4_Introduction to Server Farms.pptx
Rahul Borate
 
Unit 3_Data Center Design in storage.pptx
Unit  3_Data Center Design in storage.pptxUnit  3_Data Center Design in storage.pptx
Unit 3_Data Center Design in storage.pptx
Rahul Borate
 
Fundamentals of storage Unit III Backup and Recovery.ppt
Fundamentals of storage Unit III Backup and Recovery.pptFundamentals of storage Unit III Backup and Recovery.ppt
Fundamentals of storage Unit III Backup and Recovery.ppt
Rahul Borate
 
Confusion Matrix.pptx
Confusion Matrix.pptxConfusion Matrix.pptx
Confusion Matrix.pptx
Rahul Borate
 
Unit 4 SVM and AVR.ppt
Unit 4 SVM and AVR.pptUnit 4 SVM and AVR.ppt
Unit 4 SVM and AVR.ppt
Rahul Borate
 
ch7 powerpoint presentation introduction.ppt
ch7 powerpoint presentation  introduction.pptch7 powerpoint presentation  introduction.ppt
ch7 powerpoint presentation introduction.ppt
Rahul Borate
 
chapter 4 introduction to powerpoint .ppt
chapter 4 introduction to powerpoint .pptchapter 4 introduction to powerpoint .ppt
chapter 4 introduction to powerpoint .ppt
Rahul Borate
 
chapter ppt presentation engineering 1.ppt
chapter ppt presentation engineering 1.pptchapter ppt presentation engineering 1.ppt
chapter ppt presentation engineering 1.ppt
Rahul Borate
 
student t-test (new) distrutuin t test.ppt
student t-test (new) distrutuin t test.pptstudent t-test (new) distrutuin t test.ppt
student t-test (new) distrutuin t test.ppt
Rahul Borate
 
scatter plots and visualization concept.pptx
scatter plots and visualization concept.pptxscatter plots and visualization concept.pptx
scatter plots and visualization concept.pptx
Rahul Borate
 
Corelation and covariance and cocrrr.ppt
Corelation and covariance and cocrrr.pptCorelation and covariance and cocrrr.ppt
Corelation and covariance and cocrrr.ppt
Rahul Borate
 
Box Plot in stat using python hypothesis.pptx
Box Plot in stat using python hypothesis.pptxBox Plot in stat using python hypothesis.pptx
Box Plot in stat using python hypothesis.pptx
Rahul Borate
 
Data Visualization_pandas in hadoop.pptx
Data Visualization_pandas in hadoop.pptxData Visualization_pandas in hadoop.pptx
Data Visualization_pandas in hadoop.pptx
Rahul Borate
 
sampling for statistics and population.ppt
sampling for statistics and population.pptsampling for statistics and population.ppt
sampling for statistics and population.ppt
Rahul Borate
 
Software and Hardware for requirements.pptx
Software and Hardware for requirements.pptxSoftware and Hardware for requirements.pptx
Software and Hardware for requirements.pptx
Rahul Borate
 
Hadoop and their in big data analysis EcoSystem.pptx
Hadoop and their in big data analysis EcoSystem.pptxHadoop and their in big data analysis EcoSystem.pptx
Hadoop and their in big data analysis EcoSystem.pptx
Rahul Borate
 
UNIT II Evaluating NoSQL for various .pptx
UNIT II Evaluating NoSQL for various .pptxUNIT II Evaluating NoSQL for various .pptx
UNIT II Evaluating NoSQL for various .pptx
Rahul Borate
 
Unit III Key-Value Based Databases in nosql.pptx
Unit III Key-Value Based Databases in nosql.pptxUnit III Key-Value Based Databases in nosql.pptx
Unit III Key-Value Based Databases in nosql.pptx
Rahul Borate
 
Syllabus presentation stastics for management
Syllabus presentation stastics for managementSyllabus presentation stastics for management
Syllabus presentation stastics for management
Rahul Borate
 
PigHive presentation and hive impor.pptx
PigHive presentation and hive impor.pptxPigHive presentation and hive impor.pptx
PigHive presentation and hive impor.pptx
Rahul Borate
 
Unit 4_Introduction to Server Farms.pptx
Unit 4_Introduction to Server Farms.pptxUnit 4_Introduction to Server Farms.pptx
Unit 4_Introduction to Server Farms.pptx
Rahul Borate
 
Unit 3_Data Center Design in storage.pptx
Unit  3_Data Center Design in storage.pptxUnit  3_Data Center Design in storage.pptx
Unit 3_Data Center Design in storage.pptx
Rahul Borate
 
Fundamentals of storage Unit III Backup and Recovery.ppt
Fundamentals of storage Unit III Backup and Recovery.pptFundamentals of storage Unit III Backup and Recovery.ppt
Fundamentals of storage Unit III Backup and Recovery.ppt
Rahul Borate
 
Confusion Matrix.pptx
Confusion Matrix.pptxConfusion Matrix.pptx
Confusion Matrix.pptx
Rahul Borate
 
Unit 4 SVM and AVR.ppt
Unit 4 SVM and AVR.pptUnit 4 SVM and AVR.ppt
Unit 4 SVM and AVR.ppt
Rahul Borate
 
Ad

Recently uploaded (20)

Agents chapter of Artificial intelligence
Agents chapter of Artificial intelligenceAgents chapter of Artificial intelligence
Agents chapter of Artificial intelligence
DebdeepMukherjee9
 
hypermedia_system_revisit_roy_fielding .
hypermedia_system_revisit_roy_fielding .hypermedia_system_revisit_roy_fielding .
hypermedia_system_revisit_roy_fielding .
NABLAS株式会社
 
How to Buy Snapchat Account A Step-by-Step Guide.pdf
How to Buy Snapchat Account A Step-by-Step Guide.pdfHow to Buy Snapchat Account A Step-by-Step Guide.pdf
How to Buy Snapchat Account A Step-by-Step Guide.pdf
jamedlimmk
 
Transport modelling at SBB, presentation at EPFL in 2025
Transport modelling at SBB, presentation at EPFL in 2025Transport modelling at SBB, presentation at EPFL in 2025
Transport modelling at SBB, presentation at EPFL in 2025
Antonin Danalet
 
最新版加拿大魁北克大学蒙特利尔分校毕业证(UQAM毕业证书)原版定制
最新版加拿大魁北克大学蒙特利尔分校毕业证(UQAM毕业证书)原版定制最新版加拿大魁北克大学蒙特利尔分校毕业证(UQAM毕业证书)原版定制
最新版加拿大魁北克大学蒙特利尔分校毕业证(UQAM毕业证书)原版定制
Taqyea
 
Slide share PPT of SOx control technologies.pptx
Slide share PPT of SOx control technologies.pptxSlide share PPT of SOx control technologies.pptx
Slide share PPT of SOx control technologies.pptx
vvsasane
 
Novel Plug Flow Reactor with Recycle For Growth Control
Novel Plug Flow Reactor with Recycle For Growth ControlNovel Plug Flow Reactor with Recycle For Growth Control
Novel Plug Flow Reactor with Recycle For Growth Control
Chris Harding
 
ATAL 6 Days Online FDP Scheme Document 2025-26.pdf
ATAL 6 Days Online FDP Scheme Document 2025-26.pdfATAL 6 Days Online FDP Scheme Document 2025-26.pdf
ATAL 6 Days Online FDP Scheme Document 2025-26.pdf
ssuserda39791
 
Mode-Wise Corridor Level Travel-Time Estimation Using Machine Learning Models
Mode-Wise Corridor Level Travel-Time Estimation Using Machine Learning ModelsMode-Wise Corridor Level Travel-Time Estimation Using Machine Learning Models
Mode-Wise Corridor Level Travel-Time Estimation Using Machine Learning Models
Journal of Soft Computing in Civil Engineering
 
JRR Tolkien’s Lord of the Rings: Was It Influenced by Nordic Mythology, Homer...
JRR Tolkien’s Lord of the Rings: Was It Influenced by Nordic Mythology, Homer...JRR Tolkien’s Lord of the Rings: Was It Influenced by Nordic Mythology, Homer...
JRR Tolkien’s Lord of the Rings: Was It Influenced by Nordic Mythology, Homer...
Reflections on Morality, Philosophy, and History
 
Parameter-Efficient Fine-Tuning (PEFT) techniques across language, vision, ge...
Parameter-Efficient Fine-Tuning (PEFT) techniques across language, vision, ge...Parameter-Efficient Fine-Tuning (PEFT) techniques across language, vision, ge...
Parameter-Efficient Fine-Tuning (PEFT) techniques across language, vision, ge...
roshinijoga
 
sss1.pptxsss1.pptxsss1.pptxsss1.pptxsss1.pptx
sss1.pptxsss1.pptxsss1.pptxsss1.pptxsss1.pptxsss1.pptxsss1.pptxsss1.pptxsss1.pptxsss1.pptx
sss1.pptxsss1.pptxsss1.pptxsss1.pptxsss1.pptx
ajayrm685
 
PRIZ Academy - Functional Modeling In Action with PRIZ.pdf
PRIZ Academy - Functional Modeling In Action with PRIZ.pdfPRIZ Academy - Functional Modeling In Action with PRIZ.pdf
PRIZ Academy - Functional Modeling In Action with PRIZ.pdf
PRIZ Guru
 
ML_Unit_VI_DEEP LEARNING_Introduction to ANN.pdf
ML_Unit_VI_DEEP LEARNING_Introduction to ANN.pdfML_Unit_VI_DEEP LEARNING_Introduction to ANN.pdf
ML_Unit_VI_DEEP LEARNING_Introduction to ANN.pdf
rameshwarchintamani
 
Machine Learning basics POWERPOINT PRESENETATION
Machine Learning basics POWERPOINT PRESENETATIONMachine Learning basics POWERPOINT PRESENETATION
Machine Learning basics POWERPOINT PRESENETATION
DarrinBright1
 
Building-Services-Introduction-Notes.pdf
Building-Services-Introduction-Notes.pdfBuilding-Services-Introduction-Notes.pdf
Building-Services-Introduction-Notes.pdf
Lawrence Omai
 
Analog electronic circuits with some imp
Analog electronic circuits with some impAnalog electronic circuits with some imp
Analog electronic circuits with some imp
KarthikTG7
 
Efficient Algorithms for Isogeny Computation on Hyperelliptic Curves: Their A...
Efficient Algorithms for Isogeny Computation on Hyperelliptic Curves: Their A...Efficient Algorithms for Isogeny Computation on Hyperelliptic Curves: Their A...
Efficient Algorithms for Isogeny Computation on Hyperelliptic Curves: Their A...
IJCNCJournal
 
Modelling of Concrete Compressive Strength Admixed with GGBFS Using Gene Expr...
Modelling of Concrete Compressive Strength Admixed with GGBFS Using Gene Expr...Modelling of Concrete Compressive Strength Admixed with GGBFS Using Gene Expr...
Modelling of Concrete Compressive Strength Admixed with GGBFS Using Gene Expr...
Journal of Soft Computing in Civil Engineering
 
Computer Security Fundamentals Chapter 1
Computer Security Fundamentals Chapter 1Computer Security Fundamentals Chapter 1
Computer Security Fundamentals Chapter 1
remoteaimms
 
Agents chapter of Artificial intelligence
Agents chapter of Artificial intelligenceAgents chapter of Artificial intelligence
Agents chapter of Artificial intelligence
DebdeepMukherjee9
 
hypermedia_system_revisit_roy_fielding .
hypermedia_system_revisit_roy_fielding .hypermedia_system_revisit_roy_fielding .
hypermedia_system_revisit_roy_fielding .
NABLAS株式会社
 
How to Buy Snapchat Account A Step-by-Step Guide.pdf
How to Buy Snapchat Account A Step-by-Step Guide.pdfHow to Buy Snapchat Account A Step-by-Step Guide.pdf
How to Buy Snapchat Account A Step-by-Step Guide.pdf
jamedlimmk
 
Transport modelling at SBB, presentation at EPFL in 2025
Transport modelling at SBB, presentation at EPFL in 2025Transport modelling at SBB, presentation at EPFL in 2025
Transport modelling at SBB, presentation at EPFL in 2025
Antonin Danalet
 
最新版加拿大魁北克大学蒙特利尔分校毕业证(UQAM毕业证书)原版定制
最新版加拿大魁北克大学蒙特利尔分校毕业证(UQAM毕业证书)原版定制最新版加拿大魁北克大学蒙特利尔分校毕业证(UQAM毕业证书)原版定制
最新版加拿大魁北克大学蒙特利尔分校毕业证(UQAM毕业证书)原版定制
Taqyea
 
Slide share PPT of SOx control technologies.pptx
Slide share PPT of SOx control technologies.pptxSlide share PPT of SOx control technologies.pptx
Slide share PPT of SOx control technologies.pptx
vvsasane
 
Novel Plug Flow Reactor with Recycle For Growth Control
Novel Plug Flow Reactor with Recycle For Growth ControlNovel Plug Flow Reactor with Recycle For Growth Control
Novel Plug Flow Reactor with Recycle For Growth Control
Chris Harding
 
ATAL 6 Days Online FDP Scheme Document 2025-26.pdf
ATAL 6 Days Online FDP Scheme Document 2025-26.pdfATAL 6 Days Online FDP Scheme Document 2025-26.pdf
ATAL 6 Days Online FDP Scheme Document 2025-26.pdf
ssuserda39791
 
Parameter-Efficient Fine-Tuning (PEFT) techniques across language, vision, ge...
Parameter-Efficient Fine-Tuning (PEFT) techniques across language, vision, ge...Parameter-Efficient Fine-Tuning (PEFT) techniques across language, vision, ge...
Parameter-Efficient Fine-Tuning (PEFT) techniques across language, vision, ge...
roshinijoga
 
sss1.pptxsss1.pptxsss1.pptxsss1.pptxsss1.pptx
sss1.pptxsss1.pptxsss1.pptxsss1.pptxsss1.pptxsss1.pptxsss1.pptxsss1.pptxsss1.pptxsss1.pptx
sss1.pptxsss1.pptxsss1.pptxsss1.pptxsss1.pptx
ajayrm685
 
PRIZ Academy - Functional Modeling In Action with PRIZ.pdf
PRIZ Academy - Functional Modeling In Action with PRIZ.pdfPRIZ Academy - Functional Modeling In Action with PRIZ.pdf
PRIZ Academy - Functional Modeling In Action with PRIZ.pdf
PRIZ Guru
 
ML_Unit_VI_DEEP LEARNING_Introduction to ANN.pdf
ML_Unit_VI_DEEP LEARNING_Introduction to ANN.pdfML_Unit_VI_DEEP LEARNING_Introduction to ANN.pdf
ML_Unit_VI_DEEP LEARNING_Introduction to ANN.pdf
rameshwarchintamani
 
Machine Learning basics POWERPOINT PRESENETATION
Machine Learning basics POWERPOINT PRESENETATIONMachine Learning basics POWERPOINT PRESENETATION
Machine Learning basics POWERPOINT PRESENETATION
DarrinBright1
 
Building-Services-Introduction-Notes.pdf
Building-Services-Introduction-Notes.pdfBuilding-Services-Introduction-Notes.pdf
Building-Services-Introduction-Notes.pdf
Lawrence Omai
 
Analog electronic circuits with some imp
Analog electronic circuits with some impAnalog electronic circuits with some imp
Analog electronic circuits with some imp
KarthikTG7
 
Efficient Algorithms for Isogeny Computation on Hyperelliptic Curves: Their A...
Efficient Algorithms for Isogeny Computation on Hyperelliptic Curves: Their A...Efficient Algorithms for Isogeny Computation on Hyperelliptic Curves: Their A...
Efficient Algorithms for Isogeny Computation on Hyperelliptic Curves: Their A...
IJCNCJournal
 
Computer Security Fundamentals Chapter 1
Computer Security Fundamentals Chapter 1Computer Security Fundamentals Chapter 1
Computer Security Fundamentals Chapter 1
remoteaimms
 

UNIT I Introduction to NoSQL.pptx

  • 2. Agenda • Understanding NoSQL Databases, • History of NoSQL • Features of NoSQL- Scalability, Cost, Flexibility • NoSQL Business Drivers • Classification and Comparison of NoSQL Databases • Consistency – Availability - Partitioning (CAP) • Limitations of Relational Databases • Comparing NoSQL with RDBMS
  • 3. Understanding NoSQL Database • NoSQL stands for: • No Relational • No RDBMS • Not Only SQL • NoSQL is an umbrella term for all databases and data stores that don’t follow the RDBMS principles • A collection of several (related) concepts about data storage and manipulation • Often related to large data sets
  • 4. NoSQL Definition From www.nosql-database.org: Next Generation Databases mostly addressing some of the points: being non-relational, distributed, open-source and horizontal scalable. The original intention has been modern web-scale databases. The movement began early 2009 and is growing rapidly. Often more characteristics apply as: schema-free, easy replication support, simple API, eventually consistent / BASE (not ACID), a huge data amount, and more.
  • 5. History of NoSQL • Non-relational DBMSs are not new • But NoSQL represents a new incarnation • Due to massively scalable Internet applications • Based on distributed and parallel computing • Development • Starts with Google • First research paper published in 2003 • Continues also thanks to Lucene's developers/Apache (Hadoop) and Amazon (Dynamo) • Then a lot of products and interests came from Facebook, Netflix, Yahoo, eBay, Hulu, IBM, and many more
  • 6. History of NoSQL • Three major papers were the seeds of the NoSQL movement • BigTable (Google) • Dynamo (Amazon) • Distributed key-value data store • Eventual consistency • CAP Theorem (discuss in a sec ..)
  • 7. NoSQL and Big Data • NoSQL comes from Internet, thus it is often related to the “big data” concept • How much big are “big data”? • Over few terabytes Enough to start spanning multiple storage units • Challenges • Efficiently storing and accessing large amounts of data is difficult, even more considering fault tolerance and backups • Manipulating large data sets involves running immensely parallel processes • Managing continuously evolving schema and metadata for semi-structured and un-structured data is difficult
  • 8. How did we get here? • Explosion of social media sites (Facebook, Twitter) with large data needs • Rise of cloud-based solutions such as Amazon S3 (simple storage solution) • Just as moving to dynamically-typed languages (Python, Ruby, Groovy), a shift to dynamically-typed data with frequent schema changes • Open-source community
  • 9. Limitations of Relational Databases • The context is Internet • RDBMSs assume that data are • Dense • Largely uniform (structured data) • Data coming from Internet are • Massive and sparse • Semi-structured or unstructured • With massive sparse data sets, the typical storage mechanisms and access methods get stretched
  • 10. Limitations of Relational Databases • Issues with scaling up when the dataset is just too big • RDBMS were not designed to be distributed • Traditional DBMSs are best designed to run well on a “single” machine • Larger volumes of data/operations requires to upgrade the server with faster CPUs or more memory known as ‘scaling up’ or ‘Vertical scaling’ • NoSQL solutions are designed to run on clusters or multi- node database solutions • Larger volumes of data/operations requires to add more machines to the cluster, Known as ‘scaling out’ or ‘horizontal scaling’ • Different approaches include: • Master-slave • Sharding (partitioning)
  • 11. Limitations of Relational Databases • Master-Slave • All writes are written to the master. All reads performed against the replicated slave databases • Critical reads may be incorrect as writes may not have been propagated down • Large data sets can pose problems as master needs to duplicate data to • Sharding • Any DB distributed across multiple machines needs to know in what machine a piece of data is stored or must be stored • A sharding system makes this decision for each row, using its key
  • 12. Features of NoSQL •Large data volumes • Google’s “big data” •Scalable replication and distribution • Potentially thousands of machines • Potentially distributed around the world •Queries need to return answers quickly •Mostly query, few updates • Asynchronous Inserts & Updates • Schema-less • ACID transaction properties are not needed – BASE • CAP Theorem • Open source development
  • 13. NoSQL Database Types Discussing NoSQL databases is complicated because there are a variety of types: •Sorted ordered Column Store •Optimized for queries over large datasets, and store columns of data together, instead of rows •Document databases: •pair each key with a complex data structure known as a document. •Key-Value Store : •are the simplest NoSQL databases. Every single item in the database is stored as an attribute name (or 'key'), together with its value. •Graph Databases : •are used to store information about networks of data, such as social connections.
  • 14. Document Databases (Document Store) • Documents • Loosely structured sets of key/value pairs in documents, e.g., XML, JSON, BSON • Encapsulate and encode data in some standard formats or encodings • Are addressed in the database via a unique key • Documents are treated as a whole, avoiding splitting a document into its constituent name/value pairs • Allow documents retrieving by keys or contents • Notable for: • MongoDB (used in FourSquare, Github, and more) • CouchDB (used in Apple, BBC, Canonical, Cern, and more)
  • 15. Document Databases (Document Store) • The central concept is the notion of a "document“ which corresponds to a row in RDBMS. • A document comes in some standard formats like JSON (BSON). • Documents are addressed in the database via a unique key that represents that document. • The database offers an API or query language that retrieves documents based on their contents. • Documents are schema free, i.e., different documents can have structures and schema that differ from one another. (An RDBMS requires that each row contain the same columns.) 15
  • 16. Document Databases, JSON { _id: ObjectId("51156a1e056d6f966f268f81"), type: "Article", author: "Derick Rethans", title: "Introduction to Document Databases with MongoDB", date: ISODate("2013-04-24T16:26:31.911Z"), body: "This arti…" }, { _id: ObjectId("51156a1e056d6f966f268f82"), type: "Book", author: "Derick Rethans", title: "php|architect's Guide to Date and Time Programming with PHP", isbn: "978-0-9738621-5-7" }
  • 17. Key/Value stores • Store data in a schema-less way • Store data as maps • HashMaps or associative arrays • Provide a very efficient average running time algorithm for accessing data • Notable for: • Couchbase (Zynga, Vimeo, NAVTEQ, ...) • Redis (Craiglist, Instagram, StackOverfow, flickr, ...) • Amazon Dynamo (Amazon, Elsevier, IMDb, ...) • Apache Cassandra (Facebook, Digg, Reddit, Twitter,...) • Voldemort (LinkedIn, eBay, …) • Riak (Github, Comcast, Mochi, ...)
  • 18. Sorted Ordered Column-Oriented Stores • Data are stored in a column-oriented way • Data efficiently stored • Avoids consuming space for storing nulls • Columns are grouped in column-families • Data isn’t stored as a single table but is stored by column families • Unit of data is a set of key/value pairs • Identified by “row-key” • Ordered and sorted based on row-key • Notable for: • Google's Bigtable (used in all Google's services) • HBase (Facebook, StumbleUpon, Hulu, Yahoo!, ...)
  • 19. Graph Databases • Graph-oriented • Everything is stored as an edge, a node or an attribute. • Each node and edge can have any number of attributes. • Both the nodes and edges can be labelled. • Labels can be used to narrow searches. 19
  • 20. NoSQL, No ACID • RDBMSs are based on ACID (Atomicity, Consistency, Isolation, and Durability) properties • NoSQL • Does not give importance to ACID properties • In some cases completely ignores them • In distributed parallel systems it is difficult/impossible to ensure ACID properties • Long-running transactions don't work because keeping resources blocked for a long time is not practical
  • 21. BASE Transactions •Acronym contrived to be the opposite of ACID • Basically Available, • Soft state, • Eventually Consistent •Characteristics • Weak consistency – stale data OK • Availability first • Best effort • Approximate answers OK • Aggressive (optimistic) • Simpler and faster
  • 22. CAP Theorem A congruent and logical way for assessing the problems involved in assuring ACID-like guarantees in distributed systems is provided by the CAP theorem At most two of the following three can be maximized at one time • Consistency • Each client has the same view of the data • Availability • Each client can always read and write • Partition tolerance • System works well across distributed physical networks
  • 23. CAP Theorem: Two out of Three • CAP theorem – At most two properties on three can be addressed • The choices could be as follows: 1. Availability is compromised but consistency and partition tolerance are preferred over it 2. The system has little or no partition tolerance. Consistency and availability are preferred 3. Consistency is compromised but systems are always available and can work when parts of it are partitioned
  • 24. Consistency or Availability C A P • Consistency and Availability is not “binary” decision • AP systems relax consistency in favor of availability – but are not inconsistent • CP systems sacrifice availability for consistency- but are not unavailable • This suggests both AP and CP systems can offer a degree of consistency, and availability, as well as partition tolerance
  • 25. Performance • There is no perfect NoSQL database • Every database has its advantages and disadvantages • Depending on the type of tasks (and preferences) to accomplish • NoSQL is a set of concepts, ideas, technologies, and software dealing with • Big data • Sparse un/semi-structured data • High horizontal scalability • Massive parallel processing • Different applications, goals, targets, approaches need different NoSQL solutions
  • 26. Where would I use it? • Where would I use a NoSQL database? • Do you have somewhere a large set of uncontrolled, unstructured, data that you are trying to fit into a RDBMS? • Log Analysis • Social Networking Feeds (many firms hooked in through Facebook or Twitter) • External feeds from partners • Data that is not easily analyzed in a RDBMS such as time-based data • Large data feeds that need to be massaged before entry into an RDBMS
  • 27. Don’t forget about the DBA • It does not matter if the data is deployed on a NoSQL platform instead of an RDBMS. • Still need to address: • Backups & recovery • Capacity planning • Performance monitoring • Data integration • Tuning & optimization • What happens when things don’t work as expected and nodes are out of sync or you have a data corruption occurring at 2am? • Who you gonna call? • DBA and SysAdmin need to be on board
  • 28. The Perfect Storm • Large datasets, acceptance of alternatives, and dynamically- typed data has come together in a perfect storm • Not a backlash/rebellion against RDBMS • SQL is a rich query language that cannot be rivaled by the current list of NoSQL offerings • So you have reached a point where a read-only cache and write-based RDBMS isn’t delivering the throughput necessary to support a particular application. • You need to examine alternatives and what alternatives are out there. • The NoSQL databases are a pragmatic response to growing scale of databases and the falling prices of commodity hardware.
  • 29. Summary • Most likely, 10 years from now, the majority of data is still stored in RDBMS. • Leading users of NoSQL datastores are social networking sites such as Twitter, Facebook, LinkedIn, and Digg. • Not every problem is a nail and not every solution is a hammer. • NoSQL has taken a field that was "dead" (database development) and suddenly brought it back to life.
  翻译: