tailieunhanh - NoSQL Databases
The connection between the client and the database server is a key component of the overall architecture of a computing system. The database connection is responsible for supporting all communications between an application and the data it uses. Ora- cle includes a number of features that establish and tune your database connections. The following features relate to the way the Oracle database handles the connection between the client and server machines in a database interaction. We’ve divided the discussion in this section into two categories: database networking and Oracle Appli- cation Server | NoSQL Databases Christof Strauch cs134@ Lecture Selected Topics on Software-Technology Ultra-Large Scale Sites Lecturer Prof. Walter Kriha Course of Studies Computer Science and Media CSM University Hochschule der Medien Stuttgart Stuttgart Media University Contents i Contents 1 Introduction 1 Introduction and Overview . 1 Uncovered Topics. 1 2 The NoSQL-Movement 2 Motives and Main Drivers. 2 Criticism. 15 Classifications and Comparisons of NoSQL Databases. 23 3 Basic Concepts Techniques and Patterns 30 Consistency . 30 Partitioning . 37 Storage Layout. 44 Query Models. 47 Distributed Data Processing via MapReduce. 50 4 Key- Value-Stores 52 Amazon s Dynamo. 52 Project Voldemort. 62 Other Key- Value-Stores. 67 5 Document Databases 69 Apache CouchDB. 69 MongoDB. 76 6 Column-Oriented Databases 104 Google s Bigtable . 104 Bigtable Derivatives . 113 Cassandra . 114 7 Conclusion 121 A Further Reading Listening and Watching iv B List of abbreviations ix C Bibliography xii List of Figures ii List of Figures Vector Clocks. 34 Vector Clocks - Exchange via Gossip in State Transfer Mode. 36 Vector Clocks - Exchange via Gossip in Operation Transfer Mode. 37 Consistent Hashing - Initial Situation . 40 Consistent Hashing - Situation after Node Joining and Departure . 40 Consistent Hashing - Virtual Nodes Example . 41 Consistent Hashing - Example with Virtual Nodes and Replicated Data. 41 Membership Changes - Node X joins the System. 43 Membership Changes - Node B leaves the System . 43 Storage Layout - Row-based Columnar with out Locality Groups. 45 Storage Layout - Log Structured Merge Trees. 45 Storage Layout - MemTables and SSTables in Bigtable. 46 Storage Layout - Copy-on-modfify in CouchDB. 47 Query Models - Companion SQL-Database . 48 Query Models - Scatter Gather Local Search. 49 Query Models - Distributed B Tree. 49
đang nạp các trang xem trước