SlideShare une entreprise Scribd logo
1  sur  75
Télécharger pour lire hors ligne
RDB脳でCassandra/MSAを始めた僕達が、
分散Drivenなトランザクション管理に
たどり着くまで
Kota Futami
AC Div. Expense Dept.
Works Applications CO., LTD
Cassandra Summit 2017
ざっくりどんなストーリー?
Season 1:不整合問題をロールバックで解決するまで
1. Cassandra使って、Monolithicなアプリ
2. (途中から) MSAだーーー!
3. MSAまたぐところで、データの不整合
4. ひとまずRollback処理を書いて回避(ここがRDB脳)
Season 2: 分散Drivenへ
1. Rollbackのデメリットが多すぎる、根本解決しよう
2. Rollfoward, Choreographyの方針で、再設計
3. 1サービスで実装&検証 ←今ここ
4. 別サービスに展開
コンテンツ紹介
目次
1. 文脈の共有 3分
2. 前半: メインストーリー 15分
2.1. MSA化と不整合問題
2.2. Rollbackで止血。そのデメリット
2.3. 分散ドリブンへの移行 (概要)
2.4. Season1へのQ&A (5分以内)
3. 後半: もっと細かい話 15分
3.1. この場合どうなるの? エラーパターンをいくつか紹介
3.2. 派生したでてきた検討すべきこと
3.3. 全体通したQ&A (時間終了まで)
聞くメリット1
プロダクション開発の最前線で
起きている生々しい話が聞ける
聞くメリット2
実構成に限りなく同じ内容で説明
→「うちはもっと複雑だから」が起きにくい
ゆえに後半は細かい話で眠くなるかも
「概要だけ知れればいい」という方は
前半のQAで帰ることをおすすめします
1. 文脈の共有
Who am I?
二見 広太
株式会社ワークスアプリケーションズ
AC Div. Expense Dept.
ソフトウェアエンジニア / DBアーキテクト
2015年からビジネスアプリケーション「 HUE」の経費精算アプリの開発に参加、フロントからサーバーサイドまで手
掛ける。
RDBからの移行に苦労する人が多いなか、特に詳しくもないのに「 Cassandra Meister」を自称し始める。
徐々に知識をつけ、レビューや勉強会開催などを通じ、データモデリングの品質向上に努める。
Cassandra Summit プロフィールより
HUE Expense: どんなプロダクト?
BtoB BtoC CtoC
HUE Expense: どんなプロダクト?
freee
楽楽精算
concur
フルラインナップ
経費精算専用
チームスピリット
Workday
会計,人事,SCM...
大企業向け中小企業向け
新製品
- 1300社以上での実績
- 無償バージョンアップ
- Consumerアプリと同じUX
- 圧倒的な速度
技術が大きく変わった
- Monolithic
- Client: Delphi, WEB
- Server: Java
- MW: RDBMS, Tomcat
- オンプレ
- MSA
- Client: WEB
- Server: Java
- MW: Cassandra, Kafka, Elasticsearch,
Redis….
- SaaS
- Other: OCR, 自然言語処理, 機械学習...
もとからDB寄りではない
Base
Technolog
y
Product
- 技術選定
- フレームワーク実装
- アーキテクチャ設計
- etc.
- AC
- HR
- SCM
- EC
- etc.
基本この辺の人間
ごりごりDBな人はこっち
Fullstack
Front side
Server side
CI
UIデザイン
設計
実装 etc.
×
余談:
Cassandra はキャリアの面で、
投資効率のいいトピックだったなー、
という話
最初は「なんかCassandraとか詳しくなっとけばお
得かも」くらいなノリで、
Cassanra Meisterってアダ名もらう
知識のキャッチアップに使った時間は、
大して多くない
の割には、けっこうデカイ顔できるようになった
データベース以外にも、
● 他の人があんまり興味持っていない
● けど重要
というトピックあるはず
そういうのを探して、
「◯◯大臣」とか自称してみるといいよ
2. 前半: メインストーリー
目次
1. 文脈の共有 3分
2. 前半: メインストーリー 15分
2.1. MSA化と不整合問題
2.2. Rollbackで止血。そのデメリット
2.3. 分散ドリブンへの移行 (概要)
2.4. Season1へのQ&A (5分以内)
3. 後半: もっと細かい話 15分
3.1. この場合どうなるの? エラーパターンをいくつか紹介
3.2. 派生したでてきた検討すべきこと
3.3. 全体通したQ&A (時間終了まで)
最初期はMonolithic (2015年あたりまで)
ひとつのAP Server
Expense
Talent
SearchTimeline
Cassandra
ESS
(途中から) MSAにするぞーーー!
Expense Service A
Service B
Cassandra
Cassandra
Cassandra
2016年春あたり
Expenseがそれを始めた歴史的 MR
http://product-ci/company/hue-ac-expense/commit/c15dac05a5d8e58b311b1211952e49a44166d00d
「出張旅費精算」って・・・
出張時に
立替えた領収書をまとめ
て提出
会社からお金を返しても
らう
出張旅費精算書を1枚提出したとき
Expense
承認
ワークフロー
仕訳
Cassandra
Cassandra
Cassandra
支払い予定 Cassandra
メール送信 SMTP
INSERT
POST
単純に呼ぶだけだと
Expense
承認
ワークフロー
仕訳
Cassandra
Cassandra
Cassandra
支払い予定 Cassandra
メール送信 SMTP
INSERT
Timeout
データ無
し
エラーが起きると、申請したのに・・
- 支払い予定日が決まらない
- 出張者にお金が返ってこない
- 仕訳が立たない
- 決算の数字が正しくない
会計システムとして
致命的な不具合
目次
1. 文脈の共有 3分
2. 前半: メインストーリー 15分
2.1. MSA化と不整合問題
2.2. Rollbackで止血。そのデメリット
2.3. 分散ドリブンへの移行 (概要)
2.4. Season1へのQ&A (5分以内)
3. 後半: もっと細かい話 15分
3.1. この場合どうなるの? エラーパターンをいくつか紹介
3.2. 派生したでてきた検討すべきこと
3.3. 全体通したQ&A (時間終了まで)
最低限
不整合が起きないようにしよう
エラーが起きたら
Rollbackしよう
(これがRDB脳・・)
Rollbackを実装して止血
Expense
承認
ワークフロー
仕訳
Cassandra
Cassandra
Cassandra
支払い予定 Cassandra
メール送信 SMTP
DELETE
Timeout
データ無
し
Rollback
DELETE 削除
削除
これでめでたしめでたし?
NO
Rollback実装のデメリット
1. 関わるmicroserviceが増えるほど、速度が遅くなる、可用性が下
がる
2. Rollbackの質は、各プロダクトの開発者の腕任せ
3. 不整合が起きるパターンが引き続き残り、手動リカバリが必要
目次
1. 文脈の共有 3分
2. 前半: メインストーリー 15分
2.1. MSA化と不整合問題
2.2. Rollbackで止血。そのデメリット
2.3. 分散ドリブンへの移行 (概要)
2.4. Season1へのQ&A (5分以内)
3. 後半: もっと細かい話 15分
3.1. この場合どうなるの? エラーパターンをいくつか紹介
3.2. 派生したでてきた検討すべきこと
3.3. 全体通したQ&A (時間終了まで)
基本的なアイデア
経費申請書のデータがDBに入ったら、
自動仕訳や支払い予定って、
ちょっと経った後でインサートされてもいいじゃん
Rollback から Roll-forward へ
非同期でPOST + リトライ
Expense
承認
ワークフロー
仕訳
Cassandra
Cassandra
Cassandra
支払い予定 Cassandra
メール送信 SMTP
INSERT
全部非同期
でPOST
クライアントには
すぐ成功で返す
これでOK?
NO
非同期でPOST + リトライ のデメリット
1. 成功するまでスレッドを専有し続ける
2. Expenseのサーバー落ちたら復旧できない
直接HTTPで呼ぶことに限界
orchestration with point-to-point から
Choreography へ
Source: Introduction into Microservices by Oliver Wolf
https://specify.io/concepts/microservices#choreography
Kafkaを間にはさむ
Expense
承認
ワークフロー
仕訳
Cassandra
Cassandra
Cassandra
支払い予定 Cassandra
メール送信 SMTP
INSERT
PRODUCE
CONSUME
目次
1. 文脈の共有 3分
2. 前半: メインストーリー 15分
2.1. MSA化と不整合問題
2.2. Rollbackで止血。そのデメリット
2.3. 分散ドリブンへの移行 (概要)
2.4. Season1へのQ&A (5分以内)
3. 後半: もっと細かい話 15分
3.1. この場合どうなるの? エラーパターンをいくつか紹介
3.2. 派生したでてきた検討すべきこと
3.3. 全体通したQ&A (時間終了まで)
3. 後半: もっと細かい話
目次
1. 文脈の共有 3分
2. 前半: メインストーリー 15分
2.1. MSA化と不整合問題
2.2. Rollbackで止血。そのデメリット
2.3. 分散ドリブンへの移行 (概要)
2.4. Season1へのQ&A (5分以内)
3. 後半: もっと細かい話 15分
3.1. この場合どうなるの? エラーパターンをいくつか紹介
3.2. 派生したでてきた検討すべきこと
3.3. 全体通したQ&A (時間終了まで)
3.1.1 成功パターン
ブラウザ
経費AP
Kafka
topic=仕訳呼ぶ
Kafka
topic=支払い予定呼ぶ
経費Cassandra
1 申請処理開始
2 Produce
3 Produce
Kafka
topic=仕訳作成
仕訳AP
仕訳Cassandra
Kafka
topic=支払い予定作成
支払い予定AP
支払い予定
Cassandra
4 Insert
5 「申請成功したぜ」
1 Consume
3 Produce
4 Consume
5 INSERT
支払予定も仕訳と同様
なので省略
2 SELECT
3.1.2 呼び先のAPがダウン
ブラウザ
経費AP
Kafka
topic=仕訳呼ぶ
Kafka
topic=支払い予定呼ぶ
経費Cassandra
1 申請処理開始
2 Produce
3 Produce
Kafka
topic=仕訳作成
仕訳AP
仕訳Cassandra
Kafka
topic=支払い予定作成
支払い予定AP
支払い予定
Cassandra
4 Insert
5 「申請成功したぜ」
1 Consume
3 Produce
4 Consume
5 INSERT
復旧したタイミングで
Consumeされる
2 SELECT
この期間ダウン
3.1.3 Kafkaがダウン
ブラウザ
経費AP
Kafka
topic=仕訳呼ぶ
Kafka
topic=支払い予定呼ぶ
経費Cassandra
1 申請処理開始
2 Produce
Kafka
topic=仕訳作成
仕訳AP
仕訳Cassandra
Kafka
topic=支払い予定作成
支払い予定AP
支払い予定
Cassandra
3 「システムエラーだよ・・」
Error
3.1.4 二つ目のProduce時に
Kafkaがダウン
ブラウザ
経費AP
Kafka
topic=仕訳呼ぶ
Kafka
topic=支払い予定呼ぶ
経費Cassandra
1 申請処理開始
2 Produce
3 Produce
Kafka
topic=仕訳作成
仕訳AP
仕訳Cassandra
Kafka
topic=支払い予定作成
支払い予定AP
支払い予定
Cassandra
4 「システムエラーだよ・・」
1 Consume
精算書データがないので、
仕訳データを作りに行かない
2 SELECT
Error
No
data
3.1.5 申請書データの
INSERTが遅延
ブラウザ
経費AP
Kafka
topic=仕訳呼ぶ
Kafka
topic=支払い予定呼ぶ
経費Cassandra
1 申請処理開始
2 Produce
3 Produce
Kafka
topic=仕訳作成
仕訳AP
仕訳Cassandra
Kafka
topic=支払い予定作成
支払い予定AP
支払い予定
Cassandra
4 Insert
5 「申請成功したぜ」
1 Consume
3 Produce
4 Consume
5 INSERT
2 SELECT
No
data
成功するまでリトライ
→ ということは3.1.4のパターン
でもリトライが発生する
リトライに関する補足
1. 当然有限回数しかリトライしない
2. リトライ中にAPが落ちた場合、MessageをCommitしていないので
復旧後再実行される
3. 有限回数内ですべてエラーになった場合は別途リカバリが必
要
目次
1. 文脈の共有 3分
2. 前半: メインストーリー 15分
2.1. MSA化と不整合問題
2.2. Rollbackで止血。そのデメリット
2.3. 分散ドリブンへの移行 (概要)
2.4. Season1へのQ&A (5分以内)
3. 後半: もっと細かい話 15分
3.1. この場合どうなるの? エラーパターンをいくつか紹介
3.2. 派生したでてきた検討すべきこと
3.3. 全体通したQ&A (時間終了まで)
リトライがすべて失敗した場合
- リカバリバッチが必要
- 直近の申請データをつってきて、突き合わせ?
- ここは現在設計中
2重Consume問題
- Kafkaのキューは「1度しかConsumeされない」保証無し
- 冪等性の確保が必要
- LWT
- Counterカラムは使わない
- 既存のAPIがすでに使っているので改修必要
仕訳データを作る前にバリデーションしたい
- 仕訳作成APIの呼び出しが非同期になった
- 不正なデータだったら仕訳作らず、エラーにしたい
- 確認画面に行くときに、予めバリデーションが必要
すべてのサービスを同時に直す余裕がない
Expense
承認
ワークフロー
仕訳
Cassandra
Cassandra
Cassandra
支払い予定 Cassandra
メール送信 SMTP
INSERT
POST
ひとまずこの2つから置き換え
残りはロールバックのまま
KafkaのConsumeが極端に遅れた場合は?
- 仕訳など作成期限ある
- リカバリバッチでなんとかする
- あるいは、何かトリガーがあるなら、そこで同期実行
デバッグしにくい
- 今のところ妙案なし・・・
- いい案知ってる方教えてください
リグレッションテストが大変
- 自動テストなども遅延込みで見直す
他のサービスは?
- どこまで同様のパターンでいけるのか調査必要
- ドキュメントに落とす
- 社内エバンジェリストをたて、啓蒙してもらう
まだまだ戦いは続く・・
目次
1. 文脈の共有 3分
2. 前半: メインストーリー 15分
2.1. MSA化と不整合問題
2.2. Rollbackで止血。そのデメリット
2.3. 分散ドリブンへの移行 (概要)
2.4. Season1へのQ&A (5分以内)
3. 後半: もっと細かい話 15分
3.1. この場合どうなるの? エラーパターンをいくつか紹介
3.2. 派生したでてきた検討すべきこと
3.3. 全体通したQ&A (時間終了まで)

Contenu connexe

Tendances

Kafka Connect & Streams - the ecosystem around Kafka
Kafka Connect & Streams - the ecosystem around KafkaKafka Connect & Streams - the ecosystem around Kafka
Kafka Connect & Streams - the ecosystem around KafkaGuido Schmutz
 
iSAQB gathering 2021 keynote - Architectural patterns for rapid, reliable, fr...
iSAQB gathering 2021 keynote - Architectural patterns for rapid, reliable, fr...iSAQB gathering 2021 keynote - Architectural patterns for rapid, reliable, fr...
iSAQB gathering 2021 keynote - Architectural patterns for rapid, reliable, fr...Chris Richardson
 
Scylla Summit 2022: New AWS Instances Perfect for ScyllaDB
Scylla Summit 2022: New AWS Instances Perfect for ScyllaDBScylla Summit 2022: New AWS Instances Perfect for ScyllaDB
Scylla Summit 2022: New AWS Instances Perfect for ScyllaDBScyllaDB
 
How Uber scaled its Real Time Infrastructure to Trillion events per day
How Uber scaled its Real Time Infrastructure to Trillion events per dayHow Uber scaled its Real Time Infrastructure to Trillion events per day
How Uber scaled its Real Time Infrastructure to Trillion events per dayDataWorks Summit
 
API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...
API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...
API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...CA API Management
 
Delivering: from Kafka to WebSockets | Adam Warski, SoftwareMill
Delivering: from Kafka to WebSockets | Adam Warski, SoftwareMillDelivering: from Kafka to WebSockets | Adam Warski, SoftwareMill
Delivering: from Kafka to WebSockets | Adam Warski, SoftwareMillHostedbyConfluent
 
Microservices Architecture Part 2 Event Sourcing and Saga
Microservices Architecture Part 2 Event Sourcing and SagaMicroservices Architecture Part 2 Event Sourcing and Saga
Microservices Architecture Part 2 Event Sourcing and SagaAraf Karsh Hamid
 
Shaping serverless architecture with domain driven design patterns
Shaping serverless architecture with domain driven design patternsShaping serverless architecture with domain driven design patterns
Shaping serverless architecture with domain driven design patternsAsher Sterkin
 
Capella Days 2021 | Enhancing CubeSat design through ARCADIA and Capella: a c...
Capella Days 2021 | Enhancing CubeSat design through ARCADIA and Capella: a c...Capella Days 2021 | Enhancing CubeSat design through ARCADIA and Capella: a c...
Capella Days 2021 | Enhancing CubeSat design through ARCADIA and Capella: a c...Obeo
 
Microservice Architecture Patterns, by Richard Langlois P. Eng.
Microservice Architecture Patterns, by Richard Langlois P. Eng.Microservice Architecture Patterns, by Richard Langlois P. Eng.
Microservice Architecture Patterns, by Richard Langlois P. Eng.Richard Langlois P. Eng.
 
Exploring Java Heap Dumps (Oracle Code One 2018)
Exploring Java Heap Dumps (Oracle Code One 2018)Exploring Java Heap Dumps (Oracle Code One 2018)
Exploring Java Heap Dumps (Oracle Code One 2018)Ryan Cuprak
 
SAP HANA 2.0 Cockpit Installation and Configuration.pdf
SAP HANA 2.0 Cockpit Installation and Configuration.pdfSAP HANA 2.0 Cockpit Installation and Configuration.pdf
SAP HANA 2.0 Cockpit Installation and Configuration.pdfYevilina Rizka
 
[네전따] 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요
[네전따] 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요[네전따] 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요
[네전따] 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요Jo Hoon
 
A Capability Blueprint for Microservices
A Capability Blueprint for MicroservicesA Capability Blueprint for Microservices
A Capability Blueprint for MicroservicesMatt McLarty
 
Kafka Retry and DLQ
Kafka Retry and DLQKafka Retry and DLQ
Kafka Retry and DLQGeorge Teo
 
Security at the Speed of Software Development
Security at the Speed of Software DevelopmentSecurity at the Speed of Software Development
Security at the Speed of Software DevelopmentDevOps.com
 
[124]네이버에서 사용되는 여러가지 Data Platform, 그리고 MongoDB
[124]네이버에서 사용되는 여러가지 Data Platform, 그리고 MongoDB[124]네이버에서 사용되는 여러가지 Data Platform, 그리고 MongoDB
[124]네이버에서 사용되는 여러가지 Data Platform, 그리고 MongoDBNAVER D2
 
Best Practices in Security with PostgreSQL
Best Practices in Security with PostgreSQLBest Practices in Security with PostgreSQL
Best Practices in Security with PostgreSQLEDB
 

Tendances (20)

Kafka Connect & Streams - the ecosystem around Kafka
Kafka Connect & Streams - the ecosystem around KafkaKafka Connect & Streams - the ecosystem around Kafka
Kafka Connect & Streams - the ecosystem around Kafka
 
iSAQB gathering 2021 keynote - Architectural patterns for rapid, reliable, fr...
iSAQB gathering 2021 keynote - Architectural patterns for rapid, reliable, fr...iSAQB gathering 2021 keynote - Architectural patterns for rapid, reliable, fr...
iSAQB gathering 2021 keynote - Architectural patterns for rapid, reliable, fr...
 
Scylla Summit 2022: New AWS Instances Perfect for ScyllaDB
Scylla Summit 2022: New AWS Instances Perfect for ScyllaDBScylla Summit 2022: New AWS Instances Perfect for ScyllaDB
Scylla Summit 2022: New AWS Instances Perfect for ScyllaDB
 
How Uber scaled its Real Time Infrastructure to Trillion events per day
How Uber scaled its Real Time Infrastructure to Trillion events per dayHow Uber scaled its Real Time Infrastructure to Trillion events per day
How Uber scaled its Real Time Infrastructure to Trillion events per day
 
DFM BIT Coursework
DFM BIT CourseworkDFM BIT Coursework
DFM BIT Coursework
 
API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...
API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...
API Design Methodology - Mike Amundsen, Director of API Architecture, API Aca...
 
Delivering: from Kafka to WebSockets | Adam Warski, SoftwareMill
Delivering: from Kafka to WebSockets | Adam Warski, SoftwareMillDelivering: from Kafka to WebSockets | Adam Warski, SoftwareMill
Delivering: from Kafka to WebSockets | Adam Warski, SoftwareMill
 
Microservices Architecture Part 2 Event Sourcing and Saga
Microservices Architecture Part 2 Event Sourcing and SagaMicroservices Architecture Part 2 Event Sourcing and Saga
Microservices Architecture Part 2 Event Sourcing and Saga
 
Shaping serverless architecture with domain driven design patterns
Shaping serverless architecture with domain driven design patternsShaping serverless architecture with domain driven design patterns
Shaping serverless architecture with domain driven design patterns
 
Capella Days 2021 | Enhancing CubeSat design through ARCADIA and Capella: a c...
Capella Days 2021 | Enhancing CubeSat design through ARCADIA and Capella: a c...Capella Days 2021 | Enhancing CubeSat design through ARCADIA and Capella: a c...
Capella Days 2021 | Enhancing CubeSat design through ARCADIA and Capella: a c...
 
Microservice Architecture Patterns, by Richard Langlois P. Eng.
Microservice Architecture Patterns, by Richard Langlois P. Eng.Microservice Architecture Patterns, by Richard Langlois P. Eng.
Microservice Architecture Patterns, by Richard Langlois P. Eng.
 
Istio a service mesh
Istio   a service meshIstio   a service mesh
Istio a service mesh
 
Exploring Java Heap Dumps (Oracle Code One 2018)
Exploring Java Heap Dumps (Oracle Code One 2018)Exploring Java Heap Dumps (Oracle Code One 2018)
Exploring Java Heap Dumps (Oracle Code One 2018)
 
SAP HANA 2.0 Cockpit Installation and Configuration.pdf
SAP HANA 2.0 Cockpit Installation and Configuration.pdfSAP HANA 2.0 Cockpit Installation and Configuration.pdf
SAP HANA 2.0 Cockpit Installation and Configuration.pdf
 
[네전따] 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요
[네전따] 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요[네전따] 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요
[네전따] 네트워크 엔지니어에게 쿠버네티스는 어떤 의미일까요
 
A Capability Blueprint for Microservices
A Capability Blueprint for MicroservicesA Capability Blueprint for Microservices
A Capability Blueprint for Microservices
 
Kafka Retry and DLQ
Kafka Retry and DLQKafka Retry and DLQ
Kafka Retry and DLQ
 
Security at the Speed of Software Development
Security at the Speed of Software DevelopmentSecurity at the Speed of Software Development
Security at the Speed of Software Development
 
[124]네이버에서 사용되는 여러가지 Data Platform, 그리고 MongoDB
[124]네이버에서 사용되는 여러가지 Data Platform, 그리고 MongoDB[124]네이버에서 사용되는 여러가지 Data Platform, 그리고 MongoDB
[124]네이버에서 사용되는 여러가지 Data Platform, 그리고 MongoDB
 
Best Practices in Security with PostgreSQL
Best Practices in Security with PostgreSQLBest Practices in Security with PostgreSQL
Best Practices in Security with PostgreSQL
 

Similaire à RDB脳でCassandra / MSAを始めた僕達が、分散Drivenなトランザクション管理にたどり着くまで / A journey to achieved a KVS Driven Transaction Management, Started with Cassandra / MSA from RDB driven'

RDB脳でCassandra/MSAを始めた僕達が、 分散Drivenなトランザクション管理に たどり着くまで
RDB脳でCassandra/MSAを始めた僕達が、 分散Drivenなトランザクション管理に たどり着くまでRDB脳でCassandra/MSAを始めた僕達が、 分散Drivenなトランザクション管理に たどり着くまで
RDB脳でCassandra/MSAを始めた僕達が、 分散Drivenなトランザクション管理に たどり着くまでKota Futami
 
分割と整合性と戦う
分割と整合性と戦う分割と整合性と戦う
分割と整合性と戦うYugo Shimizu
 
インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門Akihiro Kuwano
 
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)NTT DATA Technology & Innovation
 
クラウドを支える基盤技術の最新動向と今後の方向性
クラウドを支える基盤技術の最新動向と今後の方向性クラウドを支える基盤技術の最新動向と今後の方向性
クラウドを支える基盤技術の最新動向と今後の方向性Masayoshi Hagiwara
 
Cloudnative online-2021-stepfunction
Cloudnative online-2021-stepfunctionCloudnative online-2021-stepfunction
Cloudnative online-2021-stepfunctionkota tomimatsu
 
Lv1から始めるWebサービスのインフラ構築
Lv1から始めるWebサービスのインフラ構築Lv1から始めるWebサービスのインフラ構築
Lv1から始めるWebサービスのインフラ構築伊藤 祐策
 
負荷対策はCloudFront
負荷対策はCloudFront負荷対策はCloudFront
負荷対策はCloudFrontiret, Inc.
 
初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなし初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなしOonishi Takaaki
 
Movable Type for AWS を用いた環境構築のポイント
Movable Type for AWS を用いた環境構築のポイントMovable Type for AWS を用いた環境構築のポイント
Movable Type for AWS を用いた環境構築のポイントMakoto Tajima
 
あなたの環境は大丈夫?来月に迫る Exchange Online 接続への変更点
あなたの環境は大丈夫?来月に迫る Exchange Online 接続への変更点あなたの環境は大丈夫?来月に迫る Exchange Online 接続への変更点
あなたの環境は大丈夫?来月に迫る Exchange Online 接続への変更点Mari Miyakawa
 
日本語環境におけるWordPressの高速化
日本語環境におけるWordPressの高速化日本語環境におけるWordPressの高速化
日本語環境におけるWordPressの高速化Kengyu Nakamura
 

Similaire à RDB脳でCassandra / MSAを始めた僕達が、分散Drivenなトランザクション管理にたどり着くまで / A journey to achieved a KVS Driven Transaction Management, Started with Cassandra / MSA from RDB driven' (14)

RDB脳でCassandra/MSAを始めた僕達が、 分散Drivenなトランザクション管理に たどり着くまで
RDB脳でCassandra/MSAを始めた僕達が、 分散Drivenなトランザクション管理に たどり着くまでRDB脳でCassandra/MSAを始めた僕達が、 分散Drivenなトランザクション管理に たどり着くまで
RDB脳でCassandra/MSAを始めた僕達が、 分散Drivenなトランザクション管理に たどり着くまで
 
分割と整合性と戦う
分割と整合性と戦う分割と整合性と戦う
分割と整合性と戦う
 
NATS on VCAP
NATS on VCAPNATS on VCAP
NATS on VCAP
 
インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門
 
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
 
クラウドを支える基盤技術の最新動向と今後の方向性
クラウドを支える基盤技術の最新動向と今後の方向性クラウドを支える基盤技術の最新動向と今後の方向性
クラウドを支える基盤技術の最新動向と今後の方向性
 
Cloudnative online-2021-stepfunction
Cloudnative online-2021-stepfunctionCloudnative online-2021-stepfunction
Cloudnative online-2021-stepfunction
 
Lv1から始めるWebサービスのインフラ構築
Lv1から始めるWebサービスのインフラ構築Lv1から始めるWebサービスのインフラ構築
Lv1から始めるWebサービスのインフラ構築
 
負荷対策はCloudFront
負荷対策はCloudFront負荷対策はCloudFront
負荷対策はCloudFront
 
初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなし初心者向け負荷軽減のはなし
初心者向け負荷軽減のはなし
 
20120914 aws summit_lt
20120914 aws summit_lt20120914 aws summit_lt
20120914 aws summit_lt
 
Movable Type for AWS を用いた環境構築のポイント
Movable Type for AWS を用いた環境構築のポイントMovable Type for AWS を用いた環境構築のポイント
Movable Type for AWS を用いた環境構築のポイント
 
あなたの環境は大丈夫?来月に迫る Exchange Online 接続への変更点
あなたの環境は大丈夫?来月に迫る Exchange Online 接続への変更点あなたの環境は大丈夫?来月に迫る Exchange Online 接続への変更点
あなたの環境は大丈夫?来月に迫る Exchange Online 接続への変更点
 
日本語環境におけるWordPressの高速化
日本語環境におけるWordPressの高速化日本語環境におけるWordPressの高速化
日本語環境におけるWordPressの高速化
 

Plus de Works Applications

Gitで安定マスターブランチを手に入れる
Gitで安定マスターブランチを手に入れるGitで安定マスターブランチを手に入れる
Gitで安定マスターブランチを手に入れるWorks Applications
 
Javaでつくる本格形態素解析器
Javaでつくる本格形態素解析器Javaでつくる本格形態素解析器
Javaでつくる本格形態素解析器Works Applications
 
新入社員が多い中で効果的なレビューを行うための方法 レビューの準備からフィードバックまでの工夫
新入社員が多い中で効果的なレビューを行うための方法 レビューの準備からフィードバックまでの工夫新入社員が多い中で効果的なレビューを行うための方法 レビューの準備からフィードバックまでの工夫
新入社員が多い中で効果的なレビューを行うための方法 レビューの準備からフィードバックまでの工夫Works Applications
 
Cassandraに不向きなcassandraデータモデリング基礎 / Data Modeling concepts for NoSQL weak point
Cassandraに不向きなcassandraデータモデリング基礎 / Data Modeling concepts for NoSQL weak pointCassandraに不向きなcassandraデータモデリング基礎 / Data Modeling concepts for NoSQL weak point
Cassandraに不向きなcassandraデータモデリング基礎 / Data Modeling concepts for NoSQL weak pointWorks Applications
 
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善Works Applications
 
Enterprise UI/UX - design as code
Enterprise UI/UX - design as codeEnterprise UI/UX - design as code
Enterprise UI/UX - design as codeWorks Applications
 
Kubernetesにまつわるエトセトラ(主に苦労話)
Kubernetesにまつわるエトセトラ(主に苦労話)Kubernetesにまつわるエトセトラ(主に苦労話)
Kubernetesにまつわるエトセトラ(主に苦労話)Works Applications
 
Global Innovation Nights - Spark
Global Innovation Nights - SparkGlobal Innovation Nights - Spark
Global Innovation Nights - SparkWorks Applications
 

Plus de Works Applications (11)

Gitで安定マスターブランチを手に入れる
Gitで安定マスターブランチを手に入れるGitで安定マスターブランチを手に入れる
Gitで安定マスターブランチを手に入れる
 
Javaでつくる本格形態素解析器
Javaでつくる本格形態素解析器Javaでつくる本格形態素解析器
Javaでつくる本格形態素解析器
 
新入社員が多い中で効果的なレビューを行うための方法 レビューの準備からフィードバックまでの工夫
新入社員が多い中で効果的なレビューを行うための方法 レビューの準備からフィードバックまでの工夫新入社員が多い中で効果的なレビューを行うための方法 レビューの準備からフィードバックまでの工夫
新入社員が多い中で効果的なレビューを行うための方法 レビューの準備からフィードバックまでの工夫
 
Cassandraに不向きなcassandraデータモデリング基礎 / Data Modeling concepts for NoSQL weak point
Cassandraに不向きなcassandraデータモデリング基礎 / Data Modeling concepts for NoSQL weak pointCassandraに不向きなcassandraデータモデリング基礎 / Data Modeling concepts for NoSQL weak point
Cassandraに不向きなcassandraデータモデリング基礎 / Data Modeling concepts for NoSQL weak point
 
形態素解析
形態素解析形態素解析
形態素解析
 
Erpと自然言語処理
Erpと自然言語処理Erpと自然言語処理
Erpと自然言語処理
 
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善SpotBugs(FindBugs)による 大規模ERPのコード品質改善
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
 
Enterprise UI/UX - design as code
Enterprise UI/UX - design as codeEnterprise UI/UX - design as code
Enterprise UI/UX - design as code
 
Kubernetesにまつわるエトセトラ(主に苦労話)
Kubernetesにまつわるエトセトラ(主に苦労話)Kubernetesにまつわるエトセトラ(主に苦労話)
Kubernetesにまつわるエトセトラ(主に苦労話)
 
Demystifying kubernetes
Demystifying kubernetesDemystifying kubernetes
Demystifying kubernetes
 
Global Innovation Nights - Spark
Global Innovation Nights - SparkGlobal Innovation Nights - Spark
Global Innovation Nights - Spark
 

RDB脳でCassandra / MSAを始めた僕達が、分散Drivenなトランザクション管理にたどり着くまで / A journey to achieved a KVS Driven Transaction Management, Started with Cassandra / MSA from RDB driven'