• kojikumagai

ブロックチェーンシステム開発に必要なアイテム Azure Blockchain Service を例に

ビジネスシーンでのブロックチェーン活用はシステム開発もさることながら日々の運用や機能改変からのデリバリなど様々な作業が発生します。また一般的に利用されているOSS系基盤ソフトでは他システムとの連携やブロック上のデータ参照、活用等の機能は提供されておらず本番の事業環境適用にはけっこうな投資(時間と金)がかかります。


そこで必要となるものがブロックチェーンシステム開発・運用基盤です。今回はマイクロソフト社が提供する開発・運用基盤 Azure Blockchain Service (以下ABS)の解説を通してブロックチェーンシステム開発に必要なモノ・コトを説明していきます。また本記事では大前提として特定組織・個人でのブロックチェーンネットワークを構成するコンソーシアム型のブロックチェーンで解説を進めていきます。


ABSはブロックチェーンの開発・運用に必要なツールをGUI、CUIとして提供しておりノードはクラウドサービスとして稼働します。ブロックチェーントランザクション処理にはEthereum ベースの Quorum 台帳を標準利用します。


・設定:ブロックチェーンネットワークの構成・設定

特定組織で構成されるコンソーシアム型ブロックチェーンでは用途毎のコンソーシアム作成、ノード作成と参加メンバー管理が必要です。素のブロックチェーン基盤ではこれらの構成、変更などにも結構手間がかかります。ABSはGUIを使った設定はもとよりコマンドとShellを組み合わせたスクリプティングによる設定など設定・変更を容易かつ柔軟に行なえます。


・開発:スマートコントラクトの開発とデプロイ及び周辺アプリケーション開発

ブロックチェーンシステムではスマートコントラクトを使ってブロックチェーン上で特定の処理を実行します。開発言語はいくつかありますがSolidityと言う言語が多く使われています。ABSではVisual Studio Codeの拡張機能であるAzure Blockchain Development Kit for Ethereum が提供されており、コード作成だけでなくコンパイル・テストそしてデプロイまでを一貫してサポートしスムーズにスマートコントラクトの開発を進めることができます。

またブロックチェーンシステムにおいてフロントアプリケーションや他アプリケーションとブロックチェーンとの接続そしてブロックチェーンさらにトランザクションデータを他システムで活用するといったシナリオは必ず存在します。こちらを支援する環境として以下のものが提供されます。

Blockchain Data Manager

ブロックチェーンのトランザクションデータを他システムで使える形へ変換、配信する事でブロックチェーンシステム開発を支援します。またAzureのイベント処理基盤であるEvent Gridを組み合わせるとワークフローへの接続やマイクロサービス呼び出しなど他システムへのトランザクションデータ受け渡しをコードを書かず行えます。ブロックチェーンはデータベースシステムではないためデータベース的な使い方は難しく、Blockchain Data Managerを通したデータ同期と活用そのようなシナリオで活躍します。


Ethereum Blockchain Connector と Azure LogicApps

Ethereum Blockchain Connector はAzure環境などで活用するEthereum 接続コンポーネントです。Azure LogicAppsはワークフロー、データ統合、システム統合を行うクラウドサービスであり、これと組み合わせフロントアプリからのメッセージをトリガにしてABS上のブロックチェーンを呼び出すこの様なしかけをノンコーディングで実現します。

そもそもスマートコントラクトだけアプリケーションが完結することはなく実証実験レベルであれば素のブロックチェーン基盤を使った開発でも困らないかもしれませんが、実プロジェクトではフロントアプリや他システムとの連携そしてデータの利用は必須でありこれらの仕組みが手放せないものになるでしょう。


・運用:実行監視とログ記録

ABSではノードのCPU、メモリ、ストレージの使用状況やトランザクションとブロッ、、アクティブな接続などのブロックチェーンシステム運用に必要な情報を監視しログとして記録します。また、しきい値を設定することでメールなどでアラートを出すことができます。


構築・設定からアプリケーション開発とデプロイそして運用。これがブロックチェーンシステムを開発するという事であり、その多くを人手で賄うのはコストの面でもそうですがサービスデリバリーまでに時間がかかるのは見逃せません。ABSはブロックチェーン基盤として設定・開発。運用をシームレスに支援するためデリバリーまでのリードタイムを大幅に短縮できますしクラウドサービスであるがゆえトランザクション増大にシステム構成を柔軟にあわせられる。ブロックチェーン技術そのものでなくブロックチェーン技術の活用が目的であればこのような基盤を活用する意義は大きいと言えるでしょう。




15回の閲覧0件のコメント

最新記事

すべて表示

Azure SQL Database ledger 台帳データベースの登場

2021年5月25日にマイクロソフトから 台帳データベース Azure SQL Database ledger が発表されました。 台帳データベース は分散台帳であるブロックチェーンと比較する事ができます。 ブロックチェーンは複数の当事者が関係するデータとデータ生成のロジックを分散運用し、データが改ざんされない仕組みを担保する事で当事間の合意(資産の移動等)保証する仕組みとして幅広い分野で利用が進