新Cardanoノード、エクスプローラーバックエンド、ウェブAIPリリース

Cardanoのアーキテクチャーを一新 - 今後の開発へ向けて


2020年2月12日 Tim Harrison 読了時間4分

New Cardano node, explorer backend, and web API released
本日Cardanoチームの努力が1つの実を結び、新たなCardano Haskell実装がリリースされました。この実装は、CardanoノードCardanoエクスプローラーバックエンドおよびウェブAPIという2つの主要コンポーネントで構成されています。この18か月間、私たちは今後予定されているShelley、そしてGoguenのリリースに向けた準備のためだけでなく、第三者開発者およびエンタープライズにも適用できる新たなアーキテクチャー基盤を構築してきました。

変更はOuroborosをOuroboros BFT(ビザンチンフォールトトレランス)への更新から始まります。これは暫定的に2月20日に予定されています。現時点ではCardanoブロックチェーン生成は旧実装により実行されていますが、Ouroboros BFTへの更新後はブロックを生成するコアノードの移行が可能となります。またDaedalusユーザーは、対応するウォレットバックエンドが配信され次第更新が可能となります。

今変更する理由

2017年9月に公開されたオリジナルのネットワークノード実装は限界に達しました。長い間私たちは、私たちの描くロードマップを達成するためには、またShelley用のシステムそしてGoguenの基盤を整えると同時に今後のその他のリリースに対応するためには、新しいアーキテクチャーが必要であると認識していました。

この更新はCardanoのデザインを根本的に改良したもので、形式手法を使用した作業の利点が初めて活かされています。旧ノードがウォレットバックエンドやエクスプローラーといったコンポーネントをビルトインしたモノリシック構造であったのに対し、新バージョンではモジュラー形式を採用されています。このため今後の統合が簡易化され、ノードを取引所で使用されているもののような他のシステムへ組み込むことが比較的容易に行えるようになります。新アーキテクチャーでは、ノード、ウォレット、エクスプローラーは独立したコンポーネントとして存在しています(新しいウォレットバックエンドはまもなくリリースされます)。

影響

この実装がもたらす最大の功績は、コンセンサス層と台帳ルールの分離です。この分離により、コンセンサスを変更する(または壊すリスクを冒す)ことなしに台帳ルールを変更することができます。このため、今後行われるShelleyからGoguenへの移行の際には、台帳ルールのみ変更することになります。デプロイはより効率的に実行でき、新機能追加の頻度も上げることができます。検証やテストを減らしつつ、より効率的なデプロイをサポートできます。

一部の利点は即時的に、他は時間を追うごとに実感されるでしょう。直接的な利点としてはIOHKのエンジニアによるイノベーションが比較的容易となる点、また、他に影響を及ぼす必要なく特定のコンポーネントに変更を加えられる点です。この新実装はまた、Ouroboros BFTへの更新とともに、大幅なTPS(1秒間ごとのトランザクション)パフォーマンスの向上をもたらします。エンドユーザーにとっては、この更新が開発サポートおよびシステムの適応力とポータビリティの向上を促し、Cardanoネットワークが充実していくにつれ、その利益が増していくことになります。

この新実装は多くの尽力の賜物です。現在、形式手法への私たちのこだわりがようやく実を結び始めました。提供するネットワークはスケーリングが可能であるだけでなく、その間も安定性を保っています。新しいコードベースは、十分なテストを行っていますが、テストは現在も進行中です。そして旧コードベースの欠点を受け継ぐことなく、数多くの抜本的な改良を施してきています。

新Cardanoノードはまた、IPCインターフェイスを採用しており、ウォレット、エクスプローラー、CLIツール、さらにカスタム統合したAPIやツールを含む、複数のクライアントコンポーネントで使用できます。そのため、私たちだけでなく、外部の開発者も性能を向上させたシステムやアプリケーションの開発が可能となります。

CardanoエクスプローラーバックエンドとウェブAPI

Cardanoエクスプローラーノード、PostgreSQLデータベース、CardanoエクスプローラーウェブAPIで構成された新Cardanoエクスプローラーバックエンドに関する詳細はrelease notesおよびそこにリンクされたドキュメンテーションをご覧ください。

  • cardano-explorer-nodeはCardanoノードのクライアントであり、ByronチェーンデータをPostgreSQLデータベースに同期します。PostgreSQLデータベーススキーマは安定したパブリックインターフェイスで直接クエリに使用できます。
  • cardano-explorerウェブAPIはPostgreSQLデータベースからデータを読み取るREST APIサーバーであり、旧cardano-slエクスプローラーHTTP APIおよび旧ウェブフロントエンドと互換性を持ちます。

本リリースはCardanoの今後に向けての準備であり、スケーリング、アジャイルの維持、必要とされる相互運用性、双方向性、そして業界のユースケースが必要とする使いやすさを得るためのアーキテクチャーとネットワークを確保するためのものです。

Cardanoフォーラムや公式Twitterには、Cardanoの最新更新情報や新ウォレットバックエンドに関する情報が配信されます。ご期待ください。

1 Like