お仕事でHyperledger Fabricを使ったクライアントアプリケーションを構築した時に参照していた資料リンクの備忘録です。 社内で全世界のブロックチェーン猛者が集まる場で事例紹介をすることになったので、 当時のアプリ設計で考えていたことの整理と、今ならこれみておけば良かったなと感じた資料も合わせてまとめます。
この記事では「ブロックチェーン」とはHyperledger Fabricのことを指します。
Hyperledger Fabricの基本
-
- まずはこれを見なきゃ始まらない。
今度こそわかる!Hyperledger Fabric(再)入門
- Hyperledger Fabricの基礎知識を日本語で理解するならここを読むと分かりやすいです。
- Peer, Orderer, MSP, チェーンコード, Endorsementといった語彙は押さえておかないとクライアントアプリケーションも作りづらい。
アプリケーション設計
アプリケーションはHyperledger Fabricの性質を押さえて設計する必要があります。 Hyperledger Fabricの基本を押さえたら、アプリ設計に反映すべきポイントを以下の資料で確認します。
OCHaCafe #4 Hyperledger Fabricアプリケーション設計入門ガイド
- 一番よくまとまっている資料だと思います。
- ネットワーク構成やデータ配置、チェーンコードの呼び出し方とアプリのあり方、トランザクション設計といった知見は非常に参考になりました。
Tutorials - hyperledger fabric
- 設計するときはチュートリアルの実装をベースに始めると安心感がある。
Blockchain GIG #2 バックエンド業務まで見据えたHyperledger Fabricシステムの設計ポイント
- エンタープライズ領域で大量のデータの参照・分析するときの設計ポイントが簡潔にまとまっています。
- データの分割取得やデータ構造のスリム化のテクニックは私は採用しませんでしたが参考になりました。
実装パターンとプラクティス
主にデータ配置・設計と合わせてアプリを設計するときの資料です。 アプリ構築当時の悩みとしてブロックチェーンをRDB的に使おうとするとパフォーマンスに問題がありました。 キー検索は良くても範囲検索や集計・分析するには遅すぎて使い物にならないレベルでした。 その時に参照した/しておけば良かった資料たちです。
-
- 上記のデザインパターンでも出てきたオフチェーンへのコピーのサンプル実装です。
- ブロックイベントを読み取るサンプルなので、割とそのまま使えそうです。
他にも出てきたら追記します。
以上。