Submit Search
Upload
CAPとBASE、ACIDの呪縛
•
Download as PPTX, PDF
•
8 likes
•
3,461 views
Kazuki Aranami
Follow
Microsoft Tech・Ed Japan 2010 にて開催される船上パーティーでのライトニングトーク用の資料です。
Read less
Read more
Technology
Report
Share
Report
Share
1 of 16
Download now
Recommended
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
増田 亨
そんなトランザクションマネージャで大丈夫か?
そんなトランザクションマネージャで大丈夫か?
takezoe
Istioサービスメッシュ入門
Istioサービスメッシュ入門
Yoichi Kawasaki
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
NTT DATA Technology & Innovation
KeycloakでAPI認可に入門する
KeycloakでAPI認可に入門する
Hitachi, Ltd. OSS Solution Center.
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
Y Watanabe
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
NTT DATA Technology & Innovation
Recommended
ドメイン駆動設計のための Spring の上手な使い方
ドメイン駆動設計のための Spring の上手な使い方
増田 亨
そんなトランザクションマネージャで大丈夫か?
そんなトランザクションマネージャで大丈夫か?
takezoe
Istioサービスメッシュ入門
Istioサービスメッシュ入門
Yoichi Kawasaki
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
え、まって。その並列分散処理、Kafkaのしくみでもできるの? Apache Kafkaの機能を利用した大規模ストリームデータの並列分散処理
NTT DATA Technology & Innovation
KeycloakでAPI認可に入門する
KeycloakでAPI認可に入門する
Hitachi, Ltd. OSS Solution Center.
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
ツール比較しながら語る O/RマッパーとDBマイグレーションの実際のところ
Y Watanabe
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
その Pod 突然落ちても大丈夫ですか!?(OCHaCafe5 #5 実験!カオスエンジニアリング 発表資料)
NTT DATA Technology & Innovation
実践イカパケット解析
実践イカパケット解析
Yuki Mizuno
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
マイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦い
ota42y
イベント・ソーシングを知る
イベント・ソーシングを知る
Shuhei Fujita
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門
Kohei Tokunaga
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
Atsushi Nakada
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
Trainocate Japan, Ltd.
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
NTT DATA Technology & Innovation
What's new in Spring Batch 5
What's new in Spring Batch 5
ikeyat
TLS, HTTP/2演習
TLS, HTTP/2演習
shigeki_ohtsu
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
増田 亨
nginxの紹介
nginxの紹介
Takashi Takizawa
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
概念モデリング再入門 + DDD
概念モデリング再入門 + DDD
Hiroshima JUG
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
都元ダイスケ Miyamoto
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介
AdvancedTechNight
MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法
Tetsutaro Watanabe
はじめてのElasticsearchクラスタ
はじめてのElasticsearchクラスタ
Satoyuki Tsukano
トランザクションの設計と進化
トランザクションの設計と進化
Kumazaki Hiroki
CAPとBASEとEventually Consistent
CAPとBASEとEventually Consistent
Yohei Yamamoto
Cassandraとh baseの比較して入門するno sql
Cassandraとh baseの比較して入門するno sql
Yutuki r
More Related Content
What's hot
実践イカパケット解析
実践イカパケット解析
Yuki Mizuno
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
Akihiro Suda
マイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦い
ota42y
イベント・ソーシングを知る
イベント・ソーシングを知る
Shuhei Fujita
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門
Kohei Tokunaga
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
Atsushi Nakada
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
Trainocate Japan, Ltd.
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
NTT DATA Technology & Innovation
What's new in Spring Batch 5
What's new in Spring Batch 5
ikeyat
TLS, HTTP/2演習
TLS, HTTP/2演習
shigeki_ohtsu
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
増田 亨
nginxの紹介
nginxの紹介
Takashi Takizawa
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
概念モデリング再入門 + DDD
概念モデリング再入門 + DDD
Hiroshima JUG
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
都元ダイスケ Miyamoto
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介
AdvancedTechNight
MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法
Tetsutaro Watanabe
はじめてのElasticsearchクラスタ
はじめてのElasticsearchクラスタ
Satoyuki Tsukano
トランザクションの設計と進化
トランザクションの設計と進化
Kumazaki Hiroki
What's hot
(20)
実践イカパケット解析
実践イカパケット解析
BuildKitによる高速でセキュアなイメージビルド
BuildKitによる高速でセキュアなイメージビルド
マイクロサービスにおける 結果整合性との戦い
マイクロサービスにおける 結果整合性との戦い
イベント・ソーシングを知る
イベント・ソーシングを知る
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
コンテナ未経験新人が学ぶコンテナ技術入門
コンテナ未経験新人が学ぶコンテナ技術入門
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
PostgreSQLをKubernetes上で活用するためのOperator紹介!(Cloud Native Database Meetup #3 発表資料)
What's new in Spring Batch 5
What's new in Spring Batch 5
TLS, HTTP/2演習
TLS, HTTP/2演習
マイクロサービス 4つの分割アプローチ
マイクロサービス 4つの分割アプローチ
nginxの紹介
nginxの紹介
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
概念モデリング再入門 + DDD
概念モデリング再入門 + DDD
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
マイクロサービス時代の認証と認可 - AWS Dev Day Tokyo 2018 #AWSDevDay
単なるキャッシュじゃないよ!?infinispanの紹介
単なるキャッシュじゃないよ!?infinispanの紹介
MongoDBが遅いときの切り分け方法
MongoDBが遅いときの切り分け方法
はじめてのElasticsearchクラスタ
はじめてのElasticsearchクラスタ
トランザクションの設計と進化
トランザクションの設計と進化
Viewers also liked
CAPとBASEとEventually Consistent
CAPとBASEとEventually Consistent
Yohei Yamamoto
Cassandraとh baseの比較して入門するno sql
Cassandraとh baseの比較して入門するno sql
Yutuki r
Paxos
Paxos
Preferred Networks
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
Recruit Technologies
データベースシステム論13 - データベースの運用
データベースシステム論13 - データベースの運用
Shohei Yokoyama
データベースシステム論15 - 関係データモデル以外のデータベース
データベースシステム論15 - 関係データモデル以外のデータベース
Shohei Yokoyama
Cent7@zabbix2.4を試す
Cent7@zabbix2.4を試す
masayoshi shiraishi
Eight meets AWS
Eight meets AWS
Tetsuya Mase
Rest 勝利宣言
Rest 勝利宣言
Yohei Yamamoto
NoSQLとビックデータ入門編Update版
NoSQLとビックデータ入門編Update版
Koichiro Nishijima
[OCPJ PoCWG Engineering Workshop] Zabbixを用いたOCPベアメタル監視環境の自動構築
[OCPJ PoCWG Engineering Workshop] Zabbixを用いたOCPベアメタル監視環境の自動構築
cloudconductor
Wikipedia解析
Wikipedia解析
ghazel7
普通の人でもわかる Paxos
普通の人でもわかる Paxos
tyonekura
「クラウド本気で始めました」なSIerのChef活用と実践~Chefアンチパターンとの戦い~
「クラウド本気で始めました」なSIerのChef活用と実践~Chefアンチパターンとの戦い~
Terui Masashi
XMLデータベースについて
XMLデータベースについて
Koji Kawaguchi
Chefを利用した運用省力化とDevOpsの取り組みについて
Chefを利用した運用省力化とDevOpsの取り組みについて
Yuuki Namikawa
Riak: 本物の高可用性を実現する仕組みとは?
Riak: 本物の高可用性を実現する仕組みとは?
Takahiko Sato
VMware的インフラ仮想化の世界
VMware的インフラ仮想化の世界
Takahiro HAGIWARA
NoSQL勉強会
NoSQL勉強会
Yuji Otani
NoSQLに関するまとめ
NoSQLに関するまとめ
Gosuke Miyashita
Viewers also liked
(20)
CAPとBASEとEventually Consistent
CAPとBASEとEventually Consistent
Cassandraとh baseの比較して入門するno sql
Cassandraとh baseの比較して入門するno sql
Paxos
Paxos
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
RDB技術者のためのNoSQLガイド NoSQLの必要性と位置づけ
データベースシステム論13 - データベースの運用
データベースシステム論13 - データベースの運用
データベースシステム論15 - 関係データモデル以外のデータベース
データベースシステム論15 - 関係データモデル以外のデータベース
Cent7@zabbix2.4を試す
Cent7@zabbix2.4を試す
Eight meets AWS
Eight meets AWS
Rest 勝利宣言
Rest 勝利宣言
NoSQLとビックデータ入門編Update版
NoSQLとビックデータ入門編Update版
[OCPJ PoCWG Engineering Workshop] Zabbixを用いたOCPベアメタル監視環境の自動構築
[OCPJ PoCWG Engineering Workshop] Zabbixを用いたOCPベアメタル監視環境の自動構築
Wikipedia解析
Wikipedia解析
普通の人でもわかる Paxos
普通の人でもわかる Paxos
「クラウド本気で始めました」なSIerのChef活用と実践~Chefアンチパターンとの戦い~
「クラウド本気で始めました」なSIerのChef活用と実践~Chefアンチパターンとの戦い~
XMLデータベースについて
XMLデータベースについて
Chefを利用した運用省力化とDevOpsの取り組みについて
Chefを利用した運用省力化とDevOpsの取り組みについて
Riak: 本物の高可用性を実現する仕組みとは?
Riak: 本物の高可用性を実現する仕組みとは?
VMware的インフラ仮想化の世界
VMware的インフラ仮想化の世界
NoSQL勉強会
NoSQL勉強会
NoSQLに関するまとめ
NoSQLに関するまとめ
More from Kazuki Aranami
ソフトウェア開発法3
ソフトウェア開発法3
Kazuki Aranami
ソフトウェア開発法2
ソフトウェア開発法2
Kazuki Aranami
Project erp
Project erp
Kazuki Aranami
Project erp
Project erp
Kazuki Aranami
Ns総合演習 ソフトウェア開発概論
Ns総合演習 ソフトウェア開発概論
Kazuki Aranami
ERP FAS DESIGN
ERP FAS DESIGN
Kazuki Aranami
分散システムにおけるUUID(汎用一意識別子)の利用拡大
分散システムにおけるUUID(汎用一意識別子)の利用拡大
Kazuki Aranami
法学入門 資金決済法
法学入門 資金決済法
Kazuki Aranami
法学入門 日本経済新聞電子版 免責規定編
法学入門 日本経済新聞電子版 免責規定編
Kazuki Aranami
クラウドカンファレンスIn静岡 r cloud
クラウドカンファレンスIn静岡 r cloud
Kazuki Aranami
20110924静岡イベント
20110924静岡イベント
Kazuki Aranami
20110926 クラウドカンファレンス静岡
20110926 クラウドカンファレンス静岡
Kazuki Aranami
20110924 shizuoka azure-forsharing
20110924 shizuoka azure-forsharing
Kazuki Aranami
情報処理の高度化等に対処するための刑法等の一部を改正する法律案
情報処理の高度化等に対処するための刑法等の一部を改正する法律案
Kazuki Aranami
複雑ネットワークとP2Pネットワーク
複雑ネットワークとP2Pネットワーク
Kazuki Aranami
クラウドの原理とパラダイム 第一章
クラウドの原理とパラダイム 第一章
Kazuki Aranami
Cloud principles and paradigms kimtea-2010-04-24
Cloud principles and paradigms kimtea-2010-04-24
Kazuki Aranami
More from Kazuki Aranami
(17)
ソフトウェア開発法3
ソフトウェア開発法3
ソフトウェア開発法2
ソフトウェア開発法2
Project erp
Project erp
Project erp
Project erp
Ns総合演習 ソフトウェア開発概論
Ns総合演習 ソフトウェア開発概論
ERP FAS DESIGN
ERP FAS DESIGN
分散システムにおけるUUID(汎用一意識別子)の利用拡大
分散システムにおけるUUID(汎用一意識別子)の利用拡大
法学入門 資金決済法
法学入門 資金決済法
法学入門 日本経済新聞電子版 免責規定編
法学入門 日本経済新聞電子版 免責規定編
クラウドカンファレンスIn静岡 r cloud
クラウドカンファレンスIn静岡 r cloud
20110924静岡イベント
20110924静岡イベント
20110926 クラウドカンファレンス静岡
20110926 クラウドカンファレンス静岡
20110924 shizuoka azure-forsharing
20110924 shizuoka azure-forsharing
情報処理の高度化等に対処するための刑法等の一部を改正する法律案
情報処理の高度化等に対処するための刑法等の一部を改正する法律案
複雑ネットワークとP2Pネットワーク
複雑ネットワークとP2Pネットワーク
クラウドの原理とパラダイム 第一章
クラウドの原理とパラダイム 第一章
Cloud principles and paradigms kimtea-2010-04-24
Cloud principles and paradigms kimtea-2010-04-24
Recently uploaded
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Toru Tamaki
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
taisei2219
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
Recently uploaded
(9)
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
CAPとBASE、ACIDの呪縛
1.
CAPとBASE、ACIDの呪縛 荒浪一城 http://d.hatena.ne.jp/kazuki-aranami/
@kimtea
2.
3.
このセッションの対象となる方々 次の言葉を見聞きして、どうも気になる方 CAP定理と聞いて(ガラッ
KVS(キー・バリュー型データストア)において分散されたノード間でのトランザクション どのように何千台ものノード間でトランザクションを実行して、コミットするの? 何千台ものノードにトランザクションがはしっている間、ACID特性を保って結果が待っているの? ∀・ ASE特性で何でも解決するよ
4.
そもそもトランザクションとは? トランザクションとは、「取引」を意味する 相手とのやりとりを通じて、最終的に「合意」に至るまでの一連のプロセス(処理単位)を指し示す
合意
5.
オールオアナッシング 成功または失敗のどちらか一方で終わる トランザクションは、そのプロセスがやりとりする範囲(処理単位)が、成功または失敗のどちらか一方で終わる、というオールオアナッシングの考えに基づいている
成功 失敗 or
6.
トランザクションモデル ローカルトランザクション フラットトランザクション
グローバルトランザクション 入れ子トランザクション(ネステドトランザクション) 分散トランザクション 厳密な定義は、ジム・グレイの「トランザクション処理 概念と技法」上下巻を参照のこと。トランザクションモデルは、上巻189ページへ
7.
ローカルとグローバルの違い ローカルトランザクション 単一のリソースマネージャー内部のみ
グローバルトランザクション 複数のリソースマネージャーにまたがる リソースマネージャー = DBMS (X/Open DTP) SQL Server Oracle
8.
フラットトランザクション ACID特性を持つトランザクション Atomicity:原子性
Consistency:一貫性 Isolation:分離性 Durability:持続性 厳密な定義は、ジム・グレイの「トランザクション処理 概念と技法」上下巻を参照のこと。フラットトランザクションは、上巻197ページより
9.
グローバルトランザクション 入れ子トランザクション トランザクションが木構造になっている
航空機のチケットとホテルの部屋を同時に予約した場合に、航空会社とホテルのそれぞれデータベースへ、サブトランザクションがはしることになる Oracle DB2 航空会社 ホテル
10.
グローバルトランザクション 分散トランザクション 分散環境で実行されるフラットトランザクション
データがどこにあるかに依存し、ネットワーク中の複数のノードを訪問する必要がある BigTable BigTable BigTable BigTable BigTable BigTable
11.
入れ子と分散トランザクションの違い 入れ子:アプリケーションの機能的な分解、つまりはアプリケーションが何を制御領域としているかによって決められる 分散:ネットワーク中のデータの分散に依存する
分散トランザクションの問題 データのロック、トランザクション全体のコミット、そして分散相互排他アルゴリズムが必要となる点である 分散相互排他アルゴリズムの例 Paxos(GoogleApp Engine)、Zab(Zookeeper)
12.
CAP conjecture(CAP経験則) Eric
BrewerのCAP定理 Consistency(一貫性、コンシステンシー) Availability(可用性、アベイラビリティー) Partition-tolerance(分割耐性、パーティショントレランス) 数学的に証明された「定理(theorem) 」ではないことに注意。この定理は、ACIDな共有システムでのみ有効である 正しくは、「CAP conjecture (推測・推定) 」 個人的には、ACID特性に基づく「CAP経験則」という呼び方を提唱したい
13.
BASE Eric BrewerのBASE
Basically Available(ベイシカリーアベイラブル) 基本的には可用性がある Soft-state(ソフトステイト) 限られた時間のみ状態を保持する Hard-stateと対比する形で、RFCなどのプロトコルを起源とするが、分散システムの世界では、 Soft-stateのみが用いられる Eventual Consistency(イベンチュアルコンシステンシー) 一時的に古い状態が見えることもある、結果整合性 BASEの概念は、2000年のACMPODCでの発表より以前の1997年、ACM SOSPにおける論文「Cluster-Based Scalable Network Services」の1.4 BASESemanticsで詳細に述べられている
14.
なぜACIDの呪縛に我々は捕らわれたのか? 典型的なトランザクションは、リレーショナルデータベースにおける銀行口座の入出金やオークションの入札などフラットトランザクションモデルの事例である これらは、即時応答性の要求されるタイプのトランザクションであり、ACID特性を持つフラットトランザクションでは有効だが、DNSやインターネットの商取引モデルなどBASE特性を持つトランザクションを描くには限界がある
ショッピングサイトでの買い物も「取引」であり、最終的に商品が消費者の手元に到着するまで数日かかるという「合意」に至るまでの、一連のプロセスもまたトランザクションである
15.
まとめ トランザクションとは「取引」のこと トランザクションモデル
ローカルトランザクション フラットトランザクション グローバルトランザクション 入れ子トランザクション 分散トランザクション CAP conjecture(CAP経験則) ACID特性が満たされる共有システムで鉄則 BASE特性 ACID特性から呪縛をほどいてくれるもの
16.
参考文献 トランザクション処理 概念と技法 上下巻 分散システム 原理とパラダイム 第一版
分散システム 原理とパラダイム 第ニ版 Principle of TRANSACTION PROCESSING SECOND EDITION Distributed Transaction Processing:The XA Specification(X/Open DTP)
Download now