More Related Content
Similar to 分散型台帳技術Orb DLTの紹介 (20)
分散型台帳技術Orb DLTの紹介
- 2. © 2017 orb, inc.
自己紹介
• 山田浩之 (情報理工学博士 東京大学)
• 専門:データベースシステム、並列分散システム
• 東京大学生産技術研究所
– 高性能・スケーラブルな次世代並列分散データ管理システムの研究開発
• 経産省未踏ソフトウェア クリエータ
– 次世代分散データベースシステムの研究開発
– (スーパークリエータに認定)
• Yahoo! Japan, IBM Japan
– 分散検索エンジン、高性能データベースカーネルの研究開発
2
- 3. © 2017 orb, inc.
Orbの事業内容の紹介
お客様の通貨や契約アプリケーションにおけるトランザクション処理・管理を担う専門部隊
3
- 4. Orb DLTの技術的な方向性
4
(Distributed)
Transaction
19801970 1990 2000 2010 2020
Blockchain
Nakamoto論文 Ethereum Sidechain
Transaction
(Jim Gray –
Turing Award
Winner)
Paxos Consensus
(Lamport –
Turing Award Winner)
Distributed
Transaction
Spanner
(Google)
Raft
Orb1
Orb DLT
Private
CP
Public
A(P)
Secure
Decentralized
Transaction
P2P
File Sharing PIER, PeerDB
(Non-transactional Query Processing)
X
Decentralization
Tamper Evidence
Private/Consortium
CP
No Finality
No Scalability
No Availability
Oracle
Performance
Scalability
Availability
- 5. © 2017 orb, inc.
Orb DLT : Orb Distributed Ledger Technology
ブロックチェーン技術と分散トランザクション技術
を融合
非中央管理型アーキテクチャ
高い改ざん耐性
ファイナリティ、強い一貫性
高いスケーラビリティ
高い可用性
コンソーシアム型、プライベート型のユースケース
にフォーカス
5
Orb
DLT
Orb
DLT
Orb
DLT
Orb
DLT
NodeData Center
高い改ざん耐性を有する非中央管理型分散トランザクションシステム
From Blockchain
From
Distributed
Transaction
- 7. © 2017 orb, inc.
Orb DLT アーキテクチャ
TOOLBOX for domain-specific solutions :
入金、決済、クリアリング、清算等のライブラリ/SDK群
CORE for complex use cases :
通貨および契約等におけるトランザクションを管理するミ
ドルウェア
APOLLO for platform innovation :
データの管理・処理を特定の計算機に依らずに実行す
る非中央管理型のデータオペレーティングシステム
7
Oracle
Cloud, @Customer, On-Premise
Apollo : Decentralized Data Operating System
CoinCore ContractCore
Wallet
App
Smart
Coin Custom App Custom App
Storage
Transaction Analytics
Toolbox
OrbDLT
QueryCore
- 9. © 2017 orb, inc.
Decentralized Transaction (patent pending)
9
特許出願中の技術であるため
公開は控えさせていただきます。
- 10. © 2017 orb, inc.
Decentralized Tamper-Evident Network (Patent-pending)
10
特許出願中の技術であるため
公開は控えさせていただきます。
- 11. © 2017 orb, inc.
ブロックチェーンの課題とOrb DLTでの解決方法:Finality, Consistency
不特定多数のノードにおける過半数合意
=> 合意不可能(No Finality)
特定多数のノードにおける過半数合意
Blockchain Orb DLT
11
- 12. © 2017 orb, inc.
FYI : Blockchain is a Probablistic State Machine [ICDCS
workshop’16]
12
- 13. © 2017 orb, inc.
ブロックチェーンの課題とOrb DLTでの解決方法:Performance
TX TX
TX TX
TX TX
TX TX
TX TX
TX TX
TX TX
TX TX
TX TX
TX TX
ブロックの単一リスト構造による原理的に低い並列性
(加えて、性能とノード数(計算資源)は直交 : P = c)
TXレコードのDAG構造による高い並列性
Blockchain Orb DLT
13
A
B
C
D
TX
始点または終点が衝突したときにデータが衝突
t
- 14. © 2017 orb, inc.
ブロックチェーンの課題とOrb DLTでの解決方法:Scalability
全データを全ノードに複製
DVi = DV (DV: Total amount of data)
データを複数のノードに複製
DVi = DV / N・RF (RF: Replication Factor << N)
TX
TX
TX
TXTX
TX
TX
TX
TXTX
Blockchain Orb DLT
14
- 15. © 2017 orb, inc.
ブロックチェーンの課題とOrb DLTでの解決方法:Availability
15
1ノードで検証後にクライアントに応答
伝播する前にノード群に障害が発生した場合は
データ消失の危険性あり
Quorum(定足数)への書き込み完了後に
クライアントに応答
(実際には2では複数回のコンセンサスおよび永続化を実施)
TX
TX
TX
TXTX
TX
TX
TX
TXTX
Blockchain Orb DLT
1
2
3
1
2
3
- 16. © 2017 orb, inc.
統合されたストレージと解析エンジン
16
トランザクションデータとアプリケーションデー
タをApolloで統合的に管理
トランザクション処理だけでなく、当該処理
において作成されたデータの柔軟な解析が
可能
様々なアプリケーションにおける実用的なプ
ラットフォームを志向
Analytics
QueryCore
Application
Storage
Transaction
CoinCore
Ledger Application-specific
data
- 17. © 2017 orb, inc.
CoinCore - 通貨におけるトランザクションの振る舞いを柔軟に定義可能なミドルウェア
• 地域通貨の例
• Regularコイン、Bonusコイン、Merchantコイン
• チャージ
– A銀行がユーザに指定額のRegularコインを付与
– チャージしたRegularコインの5%分のBonusコインをチャージボーナス消費者に付与
• 支払い
– 消費者はRegularコインもしくはBonusコインから必要な額のコインを加盟店に支払い
– A銀行は手数料として支払額の2%を加盟店から徴収
{"ID":"regular","Label":"regular
coin"}
{"ID":"bonus","Label":"bonus coin"}
{"ID":"merchant","Label":"merchant
coin"}
{"ID":"charge","CoinID":"reg
ular”}
{"ID":"payment","CoinID":nu
ll}
{"EventGroupID":"charge_0","ID":"charge_0_0","Type":1,"Target":0,"Percenta
ge":5}
{"EventGroupID":"charge_0","ID":"charge_0_1","Type":0,"Target":1,"Percenta
ge":null}
{"EventGroupID":"charge_1","ID":"charge_1_0","Type":1,"Target":0,"Percenta
ge":100}
{"EventGroupID":"charge_1","ID":"charge_1_1","Type":0,"Target":1,"Percenta
ge":null}
{"EventGroupID":"payment_0","ID":"payment_0_0","Type":1,"Target":1,"Perce
ntage":100}
Coinの定義
Eventの定義
EventGroupActionの定義
17
- 18. © 2017 orb, inc.
Orb DLTの性能評価システム@Oracle Cloud
• 48 x Oracle Compute Cloud (OC3 w/ Oracle Linux)
– 2 vCPU (H/W thread), 7.5 GB DRAM
– 128GB (-1TB) SSD
– Cost : 15000 yen/month
18
SSD Storage
Orb
DLT
Orb
DLT
Orb
DLT
・・・
SSD Storage
Orb
DLT
Orb
DLT
Orb
DLT
・・・
SSD Storage
Orb
DLT
Orb
DLT
Orb
DLT
・・・
16 node 16 node 16 node
- 19. © 2017 orb, inc.
支払いトランザクション処理を用いたベンチマーク
• データ
– 6千万ユーザレコード / ノード(データ量:約10GB/ノード)
– ユーザID、残高等からなるレコード
– 事前に十分な残高をチャージ
– レプリケーション数:3
• 支払いトランザクション処理(Apolloレベル)
– ユーザから別のユーザへの支払い(ユーザは一様乱数で選択)
– ACIDを保証して実行
19
- 20. © 2017 orb, inc.
トランザクションスループット
20
Orb DLTの高い性能とスケーラビリティを実証
(I/O性能に対してCPU性能が低いため、各ノードのCPUで性能が律速)
0
500
1000
1500
2000
2500
3000
3500
0 12 24 36 48
TPS
# of nodes
Multi-DCによる若干
の性能低下を確認
- 21. © 2017 orb, inc.
まとめ
• Orbでは独自の分散型台帳技術Orb DLTに基づくプラットフォームソフトウェア
を鋭意研究開発中
• 高い革新性と高い実用性の両立を志向
– Apollo:非中央管理型でデータを統合的に扱うデータOS
– Core:複雑なユースケースを簡潔・柔軟に解決するミドルウェア
– Toolbox:ドメイン特化型のソリューションを提供するツール群
• オラクルクラウドを用いた実験により高いスケーラビリティを実証
21
Editor's Notes
- コンポーネント、ネーミング修正
要件はここに
- HLはKafka(+Zookeeper)なので、可用性、Decentralizedはどうなの?
- ネットワーク太く