SlideShare uma empresa Scribd logo
1 de 19
Sandun Perera
Geveo Australasia
02nd July 2015
What is NuoDB?
NuoDB is the first and only emergent database that is;
 100% SQL compliant
 100% ACID transactions
 Elastically scalable
 Highly resilient and requires minimal database administration
Your SQL database wasn’t designed to scale elastically in the
cloud. However as your traffic grows, the database simply must
scale. But it’s hard.
SQL databases - every single one - were designed to run on the
traditional client server systems that were architected back in the
last century. They are all monolithic, synchronous, and centralized,
which means that performing actions like doing a CRUD operation
for a single record in the database, requires locking the database
on the master node.
Key features
 100% SQL - NewSQL looks and behaves just like a traditional
SQL database but scales and provides the same flexibility of
NoSQL. Developers can focus on building scalable applications
using the same SQL tools they know and have come to trust like
DbVisualizer, Hibernate and Active Record.
 100% ACID - Guaranteed atomicity, consistency, isolation, and
durability (ACID). NuoDB fully supports ACID transactions so no
compromises are required when it comes to the accuracy of
your data.
 Elastically Scalable - NuoDB allows you to horizontally scale out
or in without bringing down the system, changing a single line
of code, or giving up the power of SQL. Your applications behave
as expected whether you add one node or one hundred nodes.
 Built-in Redundancy - Disaster recovery at the database level
is now a thing of the past. You no longer need to spend
double on redundant hardware that will sit idle until there is
a disaster. NuoDB’s distributed architecture will continue to
operate as a single cohesive database even if there are
multiple points of failure. Its peer-to-peer architecture
makes it easy to deal with hardware failures and power
outages without any downtime.
 Multi-Tenancy - NuoDB allows you to deploy one or more
databases within a single administrative domain via the
NuoConsole. This greatly reduces the administrative burden
of configuring, managing and monitoring the NuoDB
system.
 Auto Replication - Low latency environments often require a
separate replicated database to support operational
reporting requirements. With NuoDB you are no longer
required to setup extraneous processes to support
operational intelligence reporting. Simply add another
storage node to the database and let NuoDB handle the
replication for you.
 Easy Administration - NuoDB is designed for simplicity and
(almost) zero administration. It’s simple to monitor your
database and add or remove nodes to a running
database. No sharding or caching strategies are needed.
 Built-in Security - Cloud deployment always begs the
question “how secure is my data?”. NuoDB is not an SQL
database retrofitted for the cloud; it was born? to live in the
cloud. All asynchronous peer-to-peer communication
between NuoDB transaction and storage nodes is secure
and encrypted by default. And NuoDB can be easily
configured to persist data to an encrypted file store. You
are no longer required to make the security vs.
performance trade-offs associated with traditional
databases.
 NuoConsole - Centralized monitoring of your decentralized
database is made easy with the NuoDB monitoring web
app. The NuoConsole allows you to start and stop your
database, add additional resources to your database such
as Transaction Engines and Storage Managers, and monitor
your database in real-time.
 Developer Tools - Integrate NuoDB with the most popular
development frameworks like JAVA EE, Ruby on Rails,
Zend, Coldfusion, .NET, node.js, Python and many others
to build new applications or to scale existing ones. NuoDB
works seamlessly with many ORM tools such as Hibernate,
Active Record, and PHP PDO.
 Heterogeneous Deployment - The Emergent Architecture
provides an unprecedented level of deployment flexibility.
NuoDB is the only database system that can be distributed
across a heterogeneous set of operating systems and
infrastructure resources that include the cloud, large data
centres, or local commodity hardware, and still continue to
function as a single instance of a database. NuoDB runs on
Windows, MacOS, Linux, and Solaris platforms today.
Emergent architecture
 An emergent architecture is characterized by simple,
autonomous actions by individual components
producing complex, coordinated behaviors in the
overall system.
Atomicity
NuoDB is an asynchronous, decentralized, peer-to-peer
database and object-oriented. Objects in NuoDB know how
to perform various actions that create specific behaviors in
the overall database. And every object in NuoDB is an
Atom. An Atom in NuoDB is like a single bird in a flock.
Atoms are self-describing objects (data and metadata) that
together comprise the database. Everything in the NuoDB
database is an Atom, including the schema, the indexes,
and even the underlying data. For example, each table is
an Atom that describes the metadata for the table and can
reference other Atoms; such as Atoms that describe ranges
of records in the table and their versions.
Atoms are Powerful
Atoms are intelligent, powerful, self-describing objects
that together form the NuoDB database. Atoms know
how to perform many actions, like these:
 Atoms know how to make copies of themselves.
 Atoms keep all copies of themselves up to date.
 Atoms can broadcast messages. Atoms listen for
events and changes from other Atoms.
 Atoms can request data from other Atoms.
 Atoms can serialize themselves to persistent
storage.
 Atoms can retrieve data from storage.
Consistency via Asynchronous
Decentralized Messaging
Atoms communicates P2P asynchronously. This is ideal for the
decentralized nature of an elastic cloud infrastructure.
A key reason to a traditional SQL database is so hard to scale in the cloud
is that it operates synchronously, relying on a single master node to lock
the database and orchestrate transactions. They weren’t designed for the
decentralized, asynchronous nature in the cloud.
In a NuoDB database, using object-oriented Atoms, it is able to perform
all the coordinated actions of a traditional SQL database (CRUD a record)
without locking.
When an Atom changes in NuoDB, it informs all other instances of itself in
all other locations, transactionally replicating the changes via
asynchronous message queues.
It is the right mechanism in the context of the decentralized,
geographically disparate, shared-nothing architecture of the cloud.
The Atoms are the
Database
 Everything in NuoDB database is an Atom, and the
Atoms are the database. The Atoms work in concert to
form both the Transaction and the Storage tiers.
 A NuoDB Transaction Engine is a process that executes
the SQL layer and is comprised completely of Atoms.
The Transaction Engine operates on Atoms, listens for
changes, and communicates changes with other
Transaction Engines in the database.
 A NuoDB Storage Manager is simply a special kind of
Transaction Engine that allows Atoms to serialize
themselves to permanent storage (such as a local disk
or Amazon S3).
 A NuoDB database can be as simple as a single
Transaction Engine and a single Storage Manager, or can
be as complex as tens of Transaction Engines and
Storage Managers distributed across dozens of
computer hosts.
12 Rules of A Cloud Data
Management System
(CDMS)
1. Modern Superset of an RDBMS
2. Elastic Scale-out for Extreme
Performance
3. Single Logical Database
4. Run Anywhere, Scale Anywhere
5. Nonstop Availability
6. Dynamic Multi-tenancy
7. Active/Active Geo-distribution
8. Embrace Cloud
9. Store Anywhere,
Store Redundantly
10. Workload Mix
11. Tuneable Durability Guarantees
12. Distributed Security
13. Empower Developers &
Administrators
Source:
http://go.nuodb.com/rs/nuodb/images/NuoDB_12_Rules_v
4.pdf
Development with .NET
 JRE – Java Runtime Environment
 .NET Framework
 NuoDB driver for ADO.NET
 NuoDB Provider for Entity Framework (EF5)
Video demos
 NuoDB in 90 seconds
 https://vimeo.com/52935940
 The NuoDB Distributed DBMS Architecture
 https://vimeo.com/63356635
 NuoDB Continuous Availability Demo
 https://vimeo.com/119475588
The demo
References
 http://www.nuodb.com/
 http://www.vimeo.com/nuodb
 http://newsql.sourceforge.net/
 http://www.nuodb.com/groups/drivers-and-tools/
Any Questions?
“
”
How NuoDB is
unique from other
databases?
 Emergent architecture
 Everything is an atoms
 Minimum administration
 CDMS + RDBMS + NoSQL + NewSQL
 100% (SQL + ACID + Availability)
 No (sharding + caching)
 Heterogeneous deployments
Thank you!

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

Amazon RDS with Amazon Aurora | AWS Public Sector Summit 2016
Amazon RDS with Amazon Aurora | AWS Public Sector Summit 2016Amazon RDS with Amazon Aurora | AWS Public Sector Summit 2016
Amazon RDS with Amazon Aurora | AWS Public Sector Summit 2016
 
Master Data Management : quels outils ? quelles bonnes pratiques ?
Master Data Management : quels outils ? quelles bonnes pratiques ?Master Data Management : quels outils ? quelles bonnes pratiques ?
Master Data Management : quels outils ? quelles bonnes pratiques ?
 
Melbourne: Certus Data 2.0 Vault Meetup with Snowflake - Data Vault In The Cl...
Melbourne: Certus Data 2.0 Vault Meetup with Snowflake - Data Vault In The Cl...Melbourne: Certus Data 2.0 Vault Meetup with Snowflake - Data Vault In The Cl...
Melbourne: Certus Data 2.0 Vault Meetup with Snowflake - Data Vault In The Cl...
 
Databricks Fundamentals
Databricks FundamentalsDatabricks Fundamentals
Databricks Fundamentals
 
Speeding Time to Insight with a Modern ELT Approach
Speeding Time to Insight with a Modern ELT ApproachSpeeding Time to Insight with a Modern ELT Approach
Speeding Time to Insight with a Modern ELT Approach
 
Azure storage
Azure storageAzure storage
Azure storage
 
Modern Data Architecture
Modern Data ArchitectureModern Data Architecture
Modern Data Architecture
 
Databricks Platform.pptx
Databricks Platform.pptxDatabricks Platform.pptx
Databricks Platform.pptx
 
[DSC Europe 22] Overview of the Databricks Platform - Petar Zecevic
[DSC Europe 22] Overview of the Databricks Platform - Petar Zecevic[DSC Europe 22] Overview of the Databricks Platform - Petar Zecevic
[DSC Europe 22] Overview of the Databricks Platform - Petar Zecevic
 
Accelerate Oracle to Aurora PostgreSQL Migration (GPSTEC313) - AWS re:Invent ...
Accelerate Oracle to Aurora PostgreSQL Migration (GPSTEC313) - AWS re:Invent ...Accelerate Oracle to Aurora PostgreSQL Migration (GPSTEC313) - AWS re:Invent ...
Accelerate Oracle to Aurora PostgreSQL Migration (GPSTEC313) - AWS re:Invent ...
 
CloudStack vs OpenStack
CloudStack vs OpenStackCloudStack vs OpenStack
CloudStack vs OpenStack
 
Data Mesh 101
Data Mesh 101Data Mesh 101
Data Mesh 101
 
Introduction SQL Analytics on Lakehouse Architecture
Introduction SQL Analytics on Lakehouse ArchitectureIntroduction SQL Analytics on Lakehouse Architecture
Introduction SQL Analytics on Lakehouse Architecture
 
How to Take Advantage of an Enterprise Data Warehouse in the Cloud
How to Take Advantage of an Enterprise Data Warehouse in the CloudHow to Take Advantage of an Enterprise Data Warehouse in the Cloud
How to Take Advantage of an Enterprise Data Warehouse in the Cloud
 
Introducing Azure SQL Database
Introducing Azure SQL DatabaseIntroducing Azure SQL Database
Introducing Azure SQL Database
 
Accelerating Data Warehouse Modernization
Accelerating Data Warehouse ModernizationAccelerating Data Warehouse Modernization
Accelerating Data Warehouse Modernization
 
Modernizing to a Cloud Data Architecture
Modernizing to a Cloud Data ArchitectureModernizing to a Cloud Data Architecture
Modernizing to a Cloud Data Architecture
 
Azure Synapse Analytics Overview (r2)
Azure Synapse Analytics Overview (r2)Azure Synapse Analytics Overview (r2)
Azure Synapse Analytics Overview (r2)
 
Introduction to azure cosmos db
Introduction to azure cosmos dbIntroduction to azure cosmos db
Introduction to azure cosmos db
 
Free Training: How to Build a Lakehouse
Free Training: How to Build a LakehouseFree Training: How to Build a Lakehouse
Free Training: How to Build a Lakehouse
 

Semelhante a Introduction to NuoDB

EOUG95 - Client Server Very Large Databases - Paper
EOUG95 - Client Server Very Large Databases - PaperEOUG95 - Client Server Very Large Databases - Paper
EOUG95 - Client Server Very Large Databases - Paper
David Walker
 
Altoros using no sql databases for interactive_applications
Altoros using no sql databases for interactive_applicationsAltoros using no sql databases for interactive_applications
Altoros using no sql databases for interactive_applications
Jeff Harris
 
Database management-system
Database management-systemDatabase management-system
Database management-system
kalasalingam
 
my no sql introductiobkjhikjhkjhkhjhgchjvbbnn.ppt
my no sql introductiobkjhikjhkjhkhjhgchjvbbnn.pptmy no sql introductiobkjhikjhkjhkhjhgchjvbbnn.ppt
my no sql introductiobkjhikjhkjhkhjhgchjvbbnn.ppt
wondimagegndesta
 

Semelhante a Introduction to NuoDB (20)

NuoDB Product Brochure
NuoDB Product BrochureNuoDB Product Brochure
NuoDB Product Brochure
 
Rise of NewSQL
Rise of NewSQLRise of NewSQL
Rise of NewSQL
 
1. introduction to no sql
1. introduction to no sql1. introduction to no sql
1. introduction to no sql
 
Introduction to NoSQL
Introduction to NoSQLIntroduction to NoSQL
Introduction to NoSQL
 
EOUG95 - Client Server Very Large Databases - Paper
EOUG95 - Client Server Very Large Databases - PaperEOUG95 - Client Server Very Large Databases - Paper
EOUG95 - Client Server Very Large Databases - Paper
 
Altoros using no sql databases for interactive_applications
Altoros using no sql databases for interactive_applicationsAltoros using no sql databases for interactive_applications
Altoros using no sql databases for interactive_applications
 
Sql vs NO-SQL database differences explained
Sql vs NO-SQL database differences explainedSql vs NO-SQL database differences explained
Sql vs NO-SQL database differences explained
 
NoSql Databases
NoSql DatabasesNoSql Databases
NoSql Databases
 
No sql database
No sql databaseNo sql database
No sql database
 
A Seminar on NoSQL Databases.
A Seminar on NoSQL Databases.A Seminar on NoSQL Databases.
A Seminar on NoSQL Databases.
 
Unit 3 MongDB
Unit 3 MongDBUnit 3 MongDB
Unit 3 MongDB
 
Datastores
DatastoresDatastores
Datastores
 
Database management-system
Database management-systemDatabase management-system
Database management-system
 
No sql
No sqlNo sql
No sql
 
No sql databases explained
No sql databases explainedNo sql databases explained
No sql databases explained
 
Nosql seminar
Nosql seminarNosql seminar
Nosql seminar
 
Quantitative Performance Evaluation of Cloud-Based MySQL (Relational) Vs. Mon...
Quantitative Performance Evaluation of Cloud-Based MySQL (Relational) Vs. Mon...Quantitative Performance Evaluation of Cloud-Based MySQL (Relational) Vs. Mon...
Quantitative Performance Evaluation of Cloud-Based MySQL (Relational) Vs. Mon...
 
my no sql introductiobkjhikjhkjhkhjhgchjvbbnn.ppt
my no sql introductiobkjhikjhkjhkhjhgchjvbbnn.pptmy no sql introductiobkjhikjhkjhkhjhgchjvbbnn.ppt
my no sql introductiobkjhikjhkjhkhjhgchjvbbnn.ppt
 
MongoDB vs Mysql. A devops point of view
MongoDB vs Mysql. A devops point of viewMongoDB vs Mysql. A devops point of view
MongoDB vs Mysql. A devops point of view
 
Unit-10.pptx
Unit-10.pptxUnit-10.pptx
Unit-10.pptx
 

Mais de Sandun Perera

Mais de Sandun Perera (12)

Azure EventGrid vs Azure ServiceBus.pptx
Azure EventGrid vs Azure ServiceBus.pptxAzure EventGrid vs Azure ServiceBus.pptx
Azure EventGrid vs Azure ServiceBus.pptx
 
iUpgradable
iUpgradableiUpgradable
iUpgradable
 
Bootstrap 5 whats new
Bootstrap 5   whats newBootstrap 5   whats new
Bootstrap 5 whats new
 
Blazor
BlazorBlazor
Blazor
 
Angular Form Validations
Angular Form ValidationsAngular Form Validations
Angular Form Validations
 
Microsoft Dynamics CRM 2013 Customization
Microsoft Dynamics CRM 2013 CustomizationMicrosoft Dynamics CRM 2013 Customization
Microsoft Dynamics CRM 2013 Customization
 
SQL Windowing
SQL WindowingSQL Windowing
SQL Windowing
 
Windows PowerShell
Windows PowerShellWindows PowerShell
Windows PowerShell
 
Car care
Car careCar care
Car care
 
Tale of the photo camera
Tale of the photo cameraTale of the photo camera
Tale of the photo camera
 
Visual Studio Unleashed - Tips and Tricks
Visual Studio Unleashed - Tips and TricksVisual Studio Unleashed - Tips and Tricks
Visual Studio Unleashed - Tips and Tricks
 
What’s new in Visual Studio 2010
What’s new in Visual Studio 2010What’s new in Visual Studio 2010
What’s new in Visual Studio 2010
 

Introduction to NuoDB

  • 2. What is NuoDB? NuoDB is the first and only emergent database that is;  100% SQL compliant  100% ACID transactions  Elastically scalable  Highly resilient and requires minimal database administration Your SQL database wasn’t designed to scale elastically in the cloud. However as your traffic grows, the database simply must scale. But it’s hard. SQL databases - every single one - were designed to run on the traditional client server systems that were architected back in the last century. They are all monolithic, synchronous, and centralized, which means that performing actions like doing a CRUD operation for a single record in the database, requires locking the database on the master node.
  • 3. Key features  100% SQL - NewSQL looks and behaves just like a traditional SQL database but scales and provides the same flexibility of NoSQL. Developers can focus on building scalable applications using the same SQL tools they know and have come to trust like DbVisualizer, Hibernate and Active Record.  100% ACID - Guaranteed atomicity, consistency, isolation, and durability (ACID). NuoDB fully supports ACID transactions so no compromises are required when it comes to the accuracy of your data.  Elastically Scalable - NuoDB allows you to horizontally scale out or in without bringing down the system, changing a single line of code, or giving up the power of SQL. Your applications behave as expected whether you add one node or one hundred nodes.
  • 4.  Built-in Redundancy - Disaster recovery at the database level is now a thing of the past. You no longer need to spend double on redundant hardware that will sit idle until there is a disaster. NuoDB’s distributed architecture will continue to operate as a single cohesive database even if there are multiple points of failure. Its peer-to-peer architecture makes it easy to deal with hardware failures and power outages without any downtime.  Multi-Tenancy - NuoDB allows you to deploy one or more databases within a single administrative domain via the NuoConsole. This greatly reduces the administrative burden of configuring, managing and monitoring the NuoDB system.  Auto Replication - Low latency environments often require a separate replicated database to support operational reporting requirements. With NuoDB you are no longer required to setup extraneous processes to support operational intelligence reporting. Simply add another storage node to the database and let NuoDB handle the replication for you.
  • 5.  Easy Administration - NuoDB is designed for simplicity and (almost) zero administration. It’s simple to monitor your database and add or remove nodes to a running database. No sharding or caching strategies are needed.  Built-in Security - Cloud deployment always begs the question “how secure is my data?”. NuoDB is not an SQL database retrofitted for the cloud; it was born? to live in the cloud. All asynchronous peer-to-peer communication between NuoDB transaction and storage nodes is secure and encrypted by default. And NuoDB can be easily configured to persist data to an encrypted file store. You are no longer required to make the security vs. performance trade-offs associated with traditional databases.  NuoConsole - Centralized monitoring of your decentralized database is made easy with the NuoDB monitoring web app. The NuoConsole allows you to start and stop your database, add additional resources to your database such as Transaction Engines and Storage Managers, and monitor your database in real-time.
  • 6.  Developer Tools - Integrate NuoDB with the most popular development frameworks like JAVA EE, Ruby on Rails, Zend, Coldfusion, .NET, node.js, Python and many others to build new applications or to scale existing ones. NuoDB works seamlessly with many ORM tools such as Hibernate, Active Record, and PHP PDO.  Heterogeneous Deployment - The Emergent Architecture provides an unprecedented level of deployment flexibility. NuoDB is the only database system that can be distributed across a heterogeneous set of operating systems and infrastructure resources that include the cloud, large data centres, or local commodity hardware, and still continue to function as a single instance of a database. NuoDB runs on Windows, MacOS, Linux, and Solaris platforms today.
  • 7. Emergent architecture  An emergent architecture is characterized by simple, autonomous actions by individual components producing complex, coordinated behaviors in the overall system.
  • 8. Atomicity NuoDB is an asynchronous, decentralized, peer-to-peer database and object-oriented. Objects in NuoDB know how to perform various actions that create specific behaviors in the overall database. And every object in NuoDB is an Atom. An Atom in NuoDB is like a single bird in a flock. Atoms are self-describing objects (data and metadata) that together comprise the database. Everything in the NuoDB database is an Atom, including the schema, the indexes, and even the underlying data. For example, each table is an Atom that describes the metadata for the table and can reference other Atoms; such as Atoms that describe ranges of records in the table and their versions.
  • 9. Atoms are Powerful Atoms are intelligent, powerful, self-describing objects that together form the NuoDB database. Atoms know how to perform many actions, like these:  Atoms know how to make copies of themselves.  Atoms keep all copies of themselves up to date.  Atoms can broadcast messages. Atoms listen for events and changes from other Atoms.  Atoms can request data from other Atoms.  Atoms can serialize themselves to persistent storage.  Atoms can retrieve data from storage.
  • 10. Consistency via Asynchronous Decentralized Messaging Atoms communicates P2P asynchronously. This is ideal for the decentralized nature of an elastic cloud infrastructure. A key reason to a traditional SQL database is so hard to scale in the cloud is that it operates synchronously, relying on a single master node to lock the database and orchestrate transactions. They weren’t designed for the decentralized, asynchronous nature in the cloud. In a NuoDB database, using object-oriented Atoms, it is able to perform all the coordinated actions of a traditional SQL database (CRUD a record) without locking. When an Atom changes in NuoDB, it informs all other instances of itself in all other locations, transactionally replicating the changes via asynchronous message queues. It is the right mechanism in the context of the decentralized, geographically disparate, shared-nothing architecture of the cloud.
  • 11. The Atoms are the Database  Everything in NuoDB database is an Atom, and the Atoms are the database. The Atoms work in concert to form both the Transaction and the Storage tiers.  A NuoDB Transaction Engine is a process that executes the SQL layer and is comprised completely of Atoms. The Transaction Engine operates on Atoms, listens for changes, and communicates changes with other Transaction Engines in the database.  A NuoDB Storage Manager is simply a special kind of Transaction Engine that allows Atoms to serialize themselves to permanent storage (such as a local disk or Amazon S3).  A NuoDB database can be as simple as a single Transaction Engine and a single Storage Manager, or can be as complex as tens of Transaction Engines and Storage Managers distributed across dozens of computer hosts.
  • 12. 12 Rules of A Cloud Data Management System (CDMS) 1. Modern Superset of an RDBMS 2. Elastic Scale-out for Extreme Performance 3. Single Logical Database 4. Run Anywhere, Scale Anywhere 5. Nonstop Availability 6. Dynamic Multi-tenancy 7. Active/Active Geo-distribution 8. Embrace Cloud 9. Store Anywhere, Store Redundantly 10. Workload Mix 11. Tuneable Durability Guarantees 12. Distributed Security 13. Empower Developers & Administrators Source: http://go.nuodb.com/rs/nuodb/images/NuoDB_12_Rules_v 4.pdf
  • 13. Development with .NET  JRE – Java Runtime Environment  .NET Framework  NuoDB driver for ADO.NET  NuoDB Provider for Entity Framework (EF5)
  • 14. Video demos  NuoDB in 90 seconds  https://vimeo.com/52935940  The NuoDB Distributed DBMS Architecture  https://vimeo.com/63356635  NuoDB Continuous Availability Demo  https://vimeo.com/119475588
  • 16. References  http://www.nuodb.com/  http://www.vimeo.com/nuodb  http://newsql.sourceforge.net/  http://www.nuodb.com/groups/drivers-and-tools/
  • 18. “ ” How NuoDB is unique from other databases?  Emergent architecture  Everything is an atoms  Minimum administration  CDMS + RDBMS + NoSQL + NewSQL  100% (SQL + ACID + Availability)  No (sharding + caching)  Heterogeneous deployments

Notas do Editor

  1. ACID Atomicity Atomicity requires that each transaction is "all or nothing": if one part of the transaction fails, the entire transaction fails, and the database state is left unchanged. An atomic system must guarantee atomicity in each and every situation, including power failures, errors, and crashes. To the outside world, a committed transaction appears (by its effects on the database) to be indivisible ("atomic"), and an aborted transaction does not leave effects on the database at all, as if it never existed. Consistency The consistency property ensures that any transaction will bring the database from one valid state to another. Any data written to the database must be valid according to all defined rules, including but not limited to constraints, cascades, triggers, and any combination thereof. This does not guarantee correctness of the transaction in all ways the application programmer might have wanted (that is the responsibility of application-level code) but merely that any programming errors do not violate any defined rules. Isolation The isolation property ensures that the concurrent execution of transactions results in a system state that would be obtained if transactions were executed serially, i.e. one after the other. Providing isolation is the main goal of concurrency control. Depending on concurrency control method, the effects of an incomplete transaction might not even be visible to another transaction. Durability Durability means that once a transaction has been committed, it will remain so, even in the event of power loss, crashes, or errors. In a relational database, for instance, once a group of SQL statements execute, the results need to be stored permanently (even if the database crashes immediately thereafter). To defend against power loss, transactions (or their effects) must be recorded in a non-volatile memory.