More Related Content
PDF
PDF
PDF
PDF
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ PDF
Cassandraとh baseの比較して入門するno sql PPT
Devsumi2013【15-e-5】NoSQLの野心的な使い方 ~Apache Cassandra編~ PDF
Db tech showcase2015 how to replicate between clusters PDF
What's hot
PDF
[db tech showcase Tokyo 2014] L32: Apache Cassandraに注目!!(IoT, Bigdata、NoSQLのバ... PDF
PPTX
RDB開発者のためのApache Cassandra データモデリング入門 PPTX
PDF
Amazon Redshiftへの移行方法と設計のポイント(db tech showcase 2016) PDF
事例から見るNoSQLの使い方 - db tech showcase Tokyo 2015 2015/06/11 PDF
[db tech showcase Tokyo 2015] A33:Amazon DynamoDB Deep Dive by アマゾン データ サービス ... PDF
DB Tech showcase Tokyo 2015 Works Applications PDF
Cassandraのトランザクションサポート化 & web2pyによるcms用プラグイン開発 PDF
Datastax Enterpriseをはじめよう PPTX
サンプルで学ぶCassandraアプリケーションの作り方 PPTX
Cassandra Meetup Tokyo, 2016 Spring PDF
PPT
Cassandra(no sql)によるシステム提案と開発 PDF
PPT
PDF
Cassandra Summit Tokyo 2015 - intra-mart PDF
Percona ServerをMySQL 5.6と5.7用に作るエンジニアリング(そしてMongoDBのヒント) PPT
PDF
Couchbase introduction-20150611 Similar to NoSQLに関するまとめ
PDF
PDF
PPTX
PPTX
PDF
Not only sql _ 新卒エンジニア勉強会20130417 PDF
PDF
PDF
RDBNoSQLの基礎と組み合わせDB構成をちょっとよくする話 PDF
PPTX
PDF
PDF
PDF
PDF
AWS初心者向けWebinar AWSでのNoSQLの活用 PDF
PDF
PDF
PDF
PPTX
RDBMSより高速なNoSQLを実際に使ってみた話 PDF
[db tech showcase Tokyo 2015] A27: RDBエンジニアの為のNOSQL, 今どうしてNOSQLなのか? More from Gosuke Miyashita
PDF
Walter ファミリーの紹介 at Shibuya.go#1 PDF
Serverspec at Testing Framework Meeting PPTX
Serverspec at July Tech Festa 2013 PPTX
Serverspec at hbstudy #45 PPTX
PPTX
Maglica - A Simple Internal Cloud Tool at #techkayac PPTX
PPTX
Inside Sqale's Backend at RubyConf Taiwan 2012 PPTX
PPTX
PPTX
Inside Sqale's Backend at YAPC::Asia Tokyo 2012 PPTX
Inside Sqale's Backend at Sapporo Ruby Kaigi 2012 PPT
Assurer - a pluggable server testing/monitoring framework PPTX
Open Source System Administration Framework - Func PPTX
PPTX
PPTX
PPT
Puppet Best Practices? at COOKPAD PPT
How Danga::Socket handles asynchronous processing and how to write asynchrono... PPT
Danga::Socketの非同期処理の仕組みとPerlbalで非同期処理するプラグインを書く方法 NoSQLに関するまとめ
- 1.
- 2.
NoSQLとは?
• Not OnlySQLの略
– 元々は本当に「No SQL」だったみたいだけ
ど、印象悪いのでこうなったらしい
• SQLを使わない非リレーショナルなデータ
ベースの総称
– おおざっぱに言うとMySQLとかPostgreSQL以外
• どんなものがあるか
– kumofs, redis, Amazon
SimpleDB, hBase, Cassandra, memcachedb, Couch
DB, MongoDB, ...
- 3.
- 4.
- 5.
ACIDからBASEへ
• ACID: データベースのトランザクション特性
–Atomicity - トランザクションに含まれるタスクが
全て実行されるか、あるいは全く実行されないこ
とを保証する性質
– Consistency -トランザクション開始と終了時にあ
らかじめ与えられた整合性を満たすことを保証す
る性質
– Isolation -トランザクション中に行われる操作の過
程が他の操作から隠蔽されることを指す
– Durability -トランザクション操作の完了通知を
ユーザが受けた時点で、その操作は永続的とな
り、結果が失われないことを指す。
- 6.
- 7.
BASE
• Basically Available
–いつでもデータにアクセスできることが重要
• Soft-state
– ゆるい状態管理/データ管理
– 高負荷時の耐性が高い
• Eventual consistency
– 結果整合性。途中でデータに不整合が起きて
も、結果的に整合性がとれてればOK
- 8.
- 9.
ACID対BASE
ACID
• Strong Consistency
•Isolation
• Focus on “commit”
• Nested transactions
• Availability?
• Conservative(pessimistic)
• Difficult evolution(e.g.
schema)
BASE
• Weak consistency – stale
data ok
• Availability first
• Best effor
• Approximate answers OK
• Aggressive(optimistic)
• Simpler!
• Faster
• Easier evolution
- 10.
- 11.
CAP定理
• スケーラビリティや整合性に関する定理
• Consitency
–誰かがデータを更新したら、その後は必ず更新後の
データが返る
• Availability
– クライアントは必ずデータにアクセスできる
• Partition tolerance
– 耐ネットワーク分断性
– データを複数サーバに分散して保存できる、と読み
替えても良い
• この3つのうち、2つまでしか同時に満たせない、
というのがCAP定理
- 12.
- 13.
CAP定理の適用
• AvailabilityとPartition torelance
–データは分散され、いつでもデータにアクセスでき
る
– データ複製中は不整合な状態になりえる
– DNSなんかはその例
• 大規模分散システムにはこのAとPを満たすことが
重要
• Cはある程度妥協する(Eventual Consistency)
• ただし、VerticaはNoSQLながらもStrong Consitency
らしい
• CとAを満たすものがRDB。CとPやAとPを満たすも
のがNoSQL
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
データモデルで分類したソフト
ウェア
• Key-Value
– TokyoCabinet, Dynamo, Redis, Kai, kumofs
• 列指向
– Cassndra, hBase, HyperTable, BigTable, Vertica
• ドキュメント指向
– CouchDB, SimpleDB, MongoDB, Terrastore
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
参考リンク
• NoSQL登場の背景、CAP定理、データモデルの分類
– http://www.publickey1.jp/blog/10/nosqlcap.html
•クラウド上のリレーショナルデータベースはなぜ難しいの
か? BASEとCAP定理について
– http://www.publickey1.jp/blog/09/_basecap.html
• CAP と BASE について調べたこと
– http://yohei-y.blogspot.com/2009/03/cap-base.html
• CAPのCとACIDのC
– http://yohei-y.blogspot.com/2009/04/yokohamapm-eventually-
consistent.html
• 分散環境でのデータ管理におけるソフトステートのロバスト
性の評価
– http://www-imase.ist.osaka-u.ac.jp/paper/Yamaguchi05_IN12-J.pdf
• この辺から辿れるところを読んでおけば大体把握できるかと