MASTEROF COMPUTER
APPLICATIONS
Polyglot Persistence forEnterprise
Cloud Applications
Lars Albino Lemos
Underthe Guidance of: Dr. K. Jaya
MCA 2012-2015 LARS ALBINO LEMOS
Polyglot Persistence forEnterprise Cloud Applications
› CAP Theorem
› Persistence RDBMS vs NoSQL DB
› Enterprise Cloud Infrastructures & Applications
› Polyglot Persistence
Polyglot Persistence forEnterprise Cloud Applications
› CAP Theorem
› Eric Brewer on distributed systems.
Polyglot Persistence forEnterprise Cloud Applications
› CAP Theorem Implementation
› There is Good, Cheap, Fast service.
Persistence
RDBMS
Advantages
Standard Query Interface (SQL)
Widely used and understood (Oracle, MySQL, SQL Server, PostgreSQL)
Tested in real environments(Concurrency and Mission Control)
Efficient use of storage space if data normalized properly(Normal Forms)
Great tools support (Reporting )
ACID semantics (Atomicity, Consistency, Isolation, Durability)
Incredibly flexible and powerful query language(PL/SQL, T-SQL)
Great framework support(.NET, Java SE/EE/ME )
Persistence
RDBMS
Disadvantages
Complex object graphs does not map very
well with tables structures.
 Difficult to evolve Schema with time.
 Data constraints and JOINs can be
expensive at runtime.
 Difficult to scale horizontally.
 Impendence mismatch
Persistence
NoSQL
Advantages
Schema Less
Scales writes and reads
Easy to scale horizontally
Solve practical use-case
Limitations
Complexity due to schema-less.
Inter-aggregate relations are hard to maintain
Enterprise Cloud Infrastructures
Enterprise Cloud Applications
Polyglot Persistence
Why Polyglot?
›Using multiple data storage technologies, chosen based upon the way data is being
used by individual applications or components of single application.
›Polyglot persistence will occur over the enterprise as different applications use
different data storage technologies. It will also occur within a single application as
different parts of an application’s data store have different access characteristics.
Advantages
Rapid access for reads and writes. No need to be durable
Needs transactional updates. Tabular structure fits data.
Needs high availability across multiple locations. Can merge inconsistent writes.
Rapidly traverse links between friends, product purchases and ratings.
Lots of reads, infrequent writes. Products make natural aggregate.
SQL interfaces well with reporting tools.
Large-scale analytics on large cluster.
Polyglot Persistence
Why Polyglot?
Limitations
Decisions: We have to decide what data storage technology to use, rather than just
go with relational.
Organizational change: How will our data groups react to this new technology.
Immaturity: NoSQL tools are still young and full of rough edges that new tools have.
Due to that there are no good patterns.
Eventual Consistency Paradigm: How will different stakeholders in the enterprise
data deal with that, how they will enforce rules to sync data across systems.
Polyglot Persistence
Polyglot Persistence
SystemArchitecture
Polyglot Persistence
 Ecommerce Architecture Implementation
Polyglot Persistence
 Ecommerce Product Implementation
References
Thinking Beyond RDBMS – ShekharGulati
Data Access for Highly - Scalable Solutions : Using SQL, NoSQL, and Polyglot Persistence - Douglas McMurtryAndrew
OakleyJohnSharpMani SubramanianHanz Zhang
NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence - PramodJ.Sadalage, MartinFowler
Seven Databases in Seven Weeks: A Guide to Modern Databases and the NoSQL Movement
- Eric Redmong, JimR. Wilson
ENDOF PRESENTATION
THANKYOU
LARS ALBINOLEMOS

Polyglot persistence for enterprise cloud applications

  • 1.
    MASTEROF COMPUTER APPLICATIONS Polyglot PersistenceforEnterprise Cloud Applications Lars Albino Lemos Underthe Guidance of: Dr. K. Jaya MCA 2012-2015 LARS ALBINO LEMOS
  • 2.
    Polyglot Persistence forEnterpriseCloud Applications › CAP Theorem › Persistence RDBMS vs NoSQL DB › Enterprise Cloud Infrastructures & Applications › Polyglot Persistence
  • 3.
    Polyglot Persistence forEnterpriseCloud Applications › CAP Theorem › Eric Brewer on distributed systems.
  • 4.
    Polyglot Persistence forEnterpriseCloud Applications › CAP Theorem Implementation › There is Good, Cheap, Fast service.
  • 5.
    Persistence RDBMS Advantages Standard Query Interface(SQL) Widely used and understood (Oracle, MySQL, SQL Server, PostgreSQL) Tested in real environments(Concurrency and Mission Control) Efficient use of storage space if data normalized properly(Normal Forms) Great tools support (Reporting ) ACID semantics (Atomicity, Consistency, Isolation, Durability) Incredibly flexible and powerful query language(PL/SQL, T-SQL) Great framework support(.NET, Java SE/EE/ME )
  • 6.
    Persistence RDBMS Disadvantages Complex object graphsdoes not map very well with tables structures.  Difficult to evolve Schema with time.  Data constraints and JOINs can be expensive at runtime.  Difficult to scale horizontally.  Impendence mismatch
  • 9.
    Persistence NoSQL Advantages Schema Less Scales writesand reads Easy to scale horizontally Solve practical use-case Limitations Complexity due to schema-less. Inter-aggregate relations are hard to maintain
  • 10.
  • 11.
  • 12.
    Polyglot Persistence Why Polyglot? ›Usingmultiple data storage technologies, chosen based upon the way data is being used by individual applications or components of single application. ›Polyglot persistence will occur over the enterprise as different applications use different data storage technologies. It will also occur within a single application as different parts of an application’s data store have different access characteristics. Advantages Rapid access for reads and writes. No need to be durable Needs transactional updates. Tabular structure fits data. Needs high availability across multiple locations. Can merge inconsistent writes. Rapidly traverse links between friends, product purchases and ratings. Lots of reads, infrequent writes. Products make natural aggregate. SQL interfaces well with reporting tools. Large-scale analytics on large cluster.
  • 13.
    Polyglot Persistence Why Polyglot? Limitations Decisions:We have to decide what data storage technology to use, rather than just go with relational. Organizational change: How will our data groups react to this new technology. Immaturity: NoSQL tools are still young and full of rough edges that new tools have. Due to that there are no good patterns. Eventual Consistency Paradigm: How will different stakeholders in the enterprise data deal with that, how they will enforce rules to sync data across systems.
  • 14.
  • 15.
  • 16.
    Polyglot Persistence  EcommerceArchitecture Implementation
  • 17.
    Polyglot Persistence  EcommerceProduct Implementation
  • 18.
    References Thinking Beyond RDBMS– ShekharGulati Data Access for Highly - Scalable Solutions : Using SQL, NoSQL, and Polyglot Persistence - Douglas McMurtryAndrew OakleyJohnSharpMani SubramanianHanz Zhang NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot Persistence - PramodJ.Sadalage, MartinFowler Seven Databases in Seven Weeks: A Guide to Modern Databases and the NoSQL Movement - Eric Redmong, JimR. Wilson
  • 19.