書籍メモ「Persistence Best Practices for Java Applications」Chapter 2

https://learning.oreilly.com/library/view/persistence-best-practices/9781837631278/

Part 1: Persistence in Cloud Computing – Storing and Managing Data in Modern Software Architecture

Chapter 2 Exploring the Multiple Database Flavors

・A look back at relational databases
・A deep dive into non-relational databases
・NewSQL databases – trying to get the best out of both worlds

リレーショナル・データベース
構造化クエリー 言語 (SQL)を使用できること。
SQLが複数のベンダーによってサポートされている標準的なクエリ言語であるという事実は、SQLコードがポータブルであることを意味し、同じSQLコードが多くのデータベースシステム上でほとんど、あるいはまったく変更することなく動作する。
ACID原則を遵守。

ACID原則:原子性、一貫性、分離、耐久性

NoSQLデータベース
非構造化データ(非リレーショナル)を格納・検索するメカニズムを提供。
より優れたパフォーマンスと高いスケーラビリティを持っています。
BASEが重要な特徴。

BASE:基本的な可用性、ソフトステート、最終的な一貫性

NoSQLデータベースの種類
キー・バリュー:Amazon DynamoDB、Hazelcast、Redis
ドキュメント:Amazon SimpleDB、Apache CouchDB、MongoDB
ワイドカラム/カラムファミリ:HBase、Cassandra、Scylla
グラフ:Neo4j、InfoGrid、Sones、HyperGraphDB

NewSQLデータベース
リレーショナル・データベースとNoSQLデータベースの両方の長所を併せ持つハイブリッド・データベースであり、構造化されたデータを固定スキーマで保存・照会する機能を提供する一方、NoSQLデータベースのスケーラビリティと柔軟性の特徴も備えている。
ACID原則の保証を維持しながら、水平方向のスケーラビリティの組み合わせを提供しようとしています。

memoO'REILLY Learning

Posted by shi-n