120 likes | 244 Vues
In the rapidly evolving landscape of database management systems (DBMS), traditional RDBMS face challenges with scalability and high workload demands. Alternative DBMS provide solid formal underpinnings and ensure rapid performance, even in vast application domains. They enable a distributed architecture without the need for a unified schema, allowing applications to access objects efficiently across numerous nodes. Notably, systems like Amazon's Dynamo and Google's Bigtable exemplify this approach, emphasizing decentralized storage, wide-area replication, and flexible querying capabilities, making them ideal for high-volume multimedia data.
E N D
Alterative DBs Data management in a post transaction-management world
Easy to understand and use • Solid formal underpinnings • Fast • Serves a broad class of application domains • Scales in volume What’s good with RDBMs?
Not good for highly varying workload demands – unstable scalability demands • Inability to scale across many nodes • Inability to search for widely dispersed objects in an extremely large volume environment Not so good issues…
Large scale distribution • Scalability across many servers • No need for a global, unified schema • Soft ACID controls • Eventually consistent, soft integrity, durably on at least one node, atomic when necessary • Supports wide area replication General goals for alternative dbms
Move from a small number of nodes all unifying to a single global state to a large set of shared states • Many overlapping states with numerous, varying combinations • Web servers can choose their desired combination • Finding objects quickly from within a huge db is more important than finding sets of related objects Architectural change in requirements
No notion of tables • Objects are accessed via a key map • Widely distributed storage Amazon’s Dynamo
Uses thousands of servers with massive amounts of data • Used for web indexing and Google Earth • Each row has a key, a column key, and a timestamp • Each value in a row is an array of bytes Google’s Bigtable
Row:string, column:string, time:integer value(string) • Example: web page storage • The row name is a reversed URL so that subpages are co-located • The “contents” column contains the contents of the page • Multiple “anchor” columns contain text of anchors that reference the page • The contents column can have 3 time-stamped versions Bigtable…
Decentralized • No centralized schema • Three operations • Insert – (table, key, row) • Get – (table, key, column name) • Delete – (table, key, column name) Cassandra
Focuses on documents • Supports embedded documents (minimal joins) • High performance • Streaming writes that are not acknowledged • Replication for high availability • Data can be automatically partitioned and distributed • No schemas • Query language – create, read, update, delete (CRUD) MongoDB
Multimedia • Extreme volume • Broadly shared • Versioned • Mined, not searched • Limited security needs Future…