ブロックチェーンと集中型データベース

ブロックチェーンと通常のデータベースのXNUMXつの主な違い

私の以前の投稿を読んでいるなら、ブロックチェーンは単に 新しいタイプのデータベース。 つまり、中央管理者を必要とせずに、書き込みの意味で、非信頼関係者のグループによって直接共有できるデータベースです。 これは、ある種の分散アーキテクチャが壁内で使用されている場合でも、単一のエンティティによって制御される従来の(SQLまたはNoSQL)データベースとは対照的です。

最近与えた 情報セキュリティの観点からブロックチェーンについて説明しました。ブロックチェーンは通常のデータベースよりも安全な場合と安全でない場合があると結論付けました。 考えると 主役 集中管理されたデータベースが今日のテクノロジスタックで機能していることから、これらのXNUMXつのテクノロジ間のトレードオフについてより広く考えることができました。 確かに、誰かが私に尋ねるときはいつでも マルチチェーン 特定の目的に使用できますが、私の最初の応答は常に「通常のデータベースでそれを実行できますか?」です。 あなたが思っているよりも多くのケースで、答えはイエスです、以下の単純な理由があります:

信頼性と堅牢性が問題でない場合、ブロックチェーンが通常のデータベースではできないことは何もできません。

これが誤解の多いポイントです。 保存できるデータのタイプ、およびそのデータに対して実行できるトランザクションの観点から、ブロックチェーンは新しいことを何もしません。 明確にするために、この観察は、セクシーな名前とイメージにもかかわらず、「スマートコントラクト」にも適用されます。 スマートコントラクトは、ブロックチェーン内のすべてのノードで実行されるコンピューターコードにすぎません。 ストアドプロシージャ 集中型データベースについても同じです。 (このコードが必要な場合、ブロックチェーンを使用することもできません 開始する 外の世界との相互作用。)

ブロックチェーンについての真実は、それらにはいくつかの利点がありますが、欠点もあります。 言い換えれば、ほとんどのテクノロジーの決定と同様に、ブロックチェーンと通常のデータベースの間の選択は、一連のトレードオフに帰着します。 誇大広告に目がくらんで、騒音に耳が聞こえない場合、客観的にその選択をすることはほとんどありません。 したがって、次のガイドが役立つことを願っています。

Disintermediation:Advantage blockchains

ブロックチェーンの中心的な価値は、中央の管理者を必要とせずに、データベースを信頼の境界を越えて直接共有できるようにすることです。 これが可能なのは、ブロックチェーントランザクションには、集中化されたアプリケーションロジックがこれらの制約を強制するのではなく、独自の有効性の証明と独自の承認の証明が含まれているためです。 したがって、トランザクションは複数の「ノード」によって個別に検証および処理でき、ブロックチェーンはコンセンサスメカニズムとして機能して、これらのノードの同期を維持します。

この中立性に価値があるのはなぜですか? データベースは単なるビットとバイトですが、 それも具体的なものです。 データベースの内容は、特定のコンピューターシステムのメモリとディスクに格納され、そのシステムへの十分なアクセス権を持つユーザーは、内部のデータを破壊または破損する可能性があります。 その結果、データを通常のデータベースに委ねると同時に、 人間 そのデータベースが存在する組織。

現在、世界はこの信頼を得ている組織で満たされています-政府と銀行(主に)、大学、業界団体、さらにはGoogleやFacebookなどの民間企業です。 ほとんどの場合、特に先進国では、これらは非常にうまく機能します。 私の投票は常に数えられていると私は信じています。銀行が私のお金を盗んだことはありません。私はまだより良い成績のために支払う方法を見つけていません。 だから問題は何ですか? 組織が重要なデータベースを管理している場合、そのデータベースが改ざんされないようにするために、多くの人とプロセスを整備する必要もあります。 人々は雇用を必要とし、プロセスは設計される必要があり、これにはすべてかなりの時間とお金がかかります。

したがって、ブロックチェーンはこれらの組織を分散データベースに置き換える方法を提供し、巧妙な暗号化によってロックダウンされます。 以前と同じように、彼らはコンピュータシステムのますます増大する能力を活用して、人間をコードに置き換える新しい方法を提供します。 そして、いったんコードが記述されてデバッグされると、コードは大幅に安価になる傾向があります。

機密性:集中型データベースの利点

前述したように、ブロックチェーン内のすべてのノードは、すべてのトランザクションを個別に検証および処理します。 ノードは、(a)データベースの現在の状態、(b)トランザクションによって要求された変更、および(c)トランザクションの発信元を証明するデジタル署名を完全に可視化しているため、これを行うことができます。 これは間違いなくデータベースを構築するための賢い新しい方法であり、実際に機能します。 では、どこに問題があるのでしょうか。 多くのアプリケーション、特に財務部門では、すべてのノードが享受する完全な透過性は絶対的な取引キラーです。

通常のデータベースで構築されたシステムはどのようにこの問題を回避しますか? ブロックチェーンと同様に、特定のユーザーが実行できるトランザクションを制限しますが、これらの制限は XNUMXつの中心的な場所。 その結果、データベースの全内容は、複数のノードではなく、その場所でのみ表示可能である必要があります。 データの読み取り要求もこの中央機関を通過します。中央機関は、適切と思われる要求を受け入れたり拒否したりできます。 つまり、通常のデータベースが読み取り制御されている場合 および 書き込み制御、ブロックチェーンは書き込み制御のみ可能です。

公平を期すために、この問題を緩和するための多くの戦略が利用可能です。 これらは、複数のブロックチェーンアドレスの下でのトランザクションのような単純なアイデアから、次のような高度な暗号化技術まで多岐にわたります。 機密取引 および ゼロ知識証明 (現在開発中)。 それでも、ブロックチェーンで非表示にしたい情報が多いほど、トランザクションの生成と検証にかかる計算負荷が大きくなります。 そして、これらの手法がどのように開発されても、データを完全に隠す単純で簡単な方法に勝るものはありません。

堅牢性:ブロックチェーンの利点

ブロックチェーンを利用したデータベースのXNUMX番目の利点は、組み込みの冗長性に起因する極端なフォールトトレランスです。 すべてのノードがすべてのトランザクションを処理するため、データベース全体にとって個々のノードが重要になることはありません。 同様に、ノードは高密度のピアツーピア方式で相互に接続しているため、多くの通信リンクが停止してから停止します。 ブロックチェーンは、ダウンしたノードが常にミスしたトランザクションに追いつくことを保証します。

ですから、通常のデータベースが多くのテクニックを提供することは事実ですが レプリケーション、ブロックチェーンはこれをまったく新しいレベルに引き上げます。 まず、構成は必要ありません。いくつかのブロックチェーンノードを接続するだけで、自動的に同期されます。 さらに、ノードはネットワークに対して自由に追加または削除でき、準備や影響はありません。 最後に、外部ユーザーはトランザクションを任意のノードまたは複数のノードに同時に送信でき、これらのトランザクションは自動的かつシームレスに他のすべてのユーザーに伝達されます。

この堅牢性により、データベースの可用性の経済性が変わります。 通常のデータベースでは、高価なインフラストラクチャと 災害からの回復。 プライマリデータベースは、問題が厳密に監視されているハイエンドハードウェアで実行され、トランザクションは別の物理的な場所にあるバックアップシステムに複製されます。 プライマリデータベースに障害が発生した場合(停電や壊滅的なハードウェア障害など)、アクティビティは自動的にバックアップに移され、新しいプライマリになります。 障害が発生したシステムが修正されると、必要に応じて、新しいバックアップとして機能するように配置されます。 これはすべて実行可能ですが、コストがかかり、正しく行うことは悪名高いほど困難です。

代わりに、世界のさまざまな場所で10個のブロックチェーンノードを実行していて、すべて商品ハードウェア上にあるとしたらどうでしょうか。 これらのノードは相互に密に接続され、ピアツーピアベースでトランザクションを共有し、コンセンサスを確保するためにブロックチェーンを使用します。 トランザクションを生成するエンドユーザーはこれらのノードの(たとえば)5つに接続するため、いくつかの通信リンクがダウンしても問題はありません。 また、XNUMXつまたはXNUMXつのノードが特定の日に完全に失敗した場合でも、十分な数のコピーが残っているため、誰も問題を感じません。 たまたま、この低コストシステムと高い冗長性の組み合わせは、まさにGoogleが その検索エンジンをとても安く構築した。 ブロックチェーンはデータベースに対して同じことを行うことができます。

パフォーマンス:集中型データベースの利点

ブロックチェーンは常に集中型データベースよりも遅くなります。 それだけではない 今日の テクノロジーは新しく、最適化されていないため、ブロックチェーンは遅いですが、それは 自然 ブロックチェーン自体の。 トランザクションを処理するとき、ブロックチェーンは通常のデータベースとまったく同じことを行う必要がありますが、XNUMXつの追加の負担があります。

  1. 署名検証。 すべてのブロックチェーントランザクションは、次のような官民暗号方式を使用してデジタル署名する必要があります。 ECDSA。 トランザクションはピアツーピアの方法でノード間を伝播するため、ソースが証明されないため、これは必要です。 これらの署名の生成と検証は計算が複雑であり、当社のような製品の主要なボトルネックを構成しています。 対照的に、集中型データベースでは、接続が確立されると、それを介して送信されるすべての要求を個別に検証する必要はありません。
  2. コンセンサスの仕組み。 ブロックチェーンなどの分散データベースでは、ネットワーク内のノードが確実に合意に達するように努力する必要があります。 使用されるコンセンサスメカニズムによっては、これには重要なやり取りや、フォークおよびその結果のロールバックの処理が含まれる場合があります。 一元化されたデータベースは競合するトランザクションや中止されたトランザクションにも対処する必要があることは事実ですが、トランザクションが単一の場所でキューに入れられて処理される場合は、トランザクションの可能性ははるかに低くなります。
  3. 冗長化。 これは個々のノードのパフォーマンスではなく、ブロックチェーンに必要な計算の総量です。 集中型データベースはトランザクションをXNUMX回(またはXNUMX回)処理しますが、ブロックチェーンでは、ネットワーク内のすべてのノードが個別に処理する必要があります。 したがって、同じ最終結果に対してさらに多くの作業が行われています。

ボトムライン

もちろん、ブロックチェーンと通常のデータベースを比較する方法は他にもあります。 コードベースの成熟度、開発者の魅力、エコシステムの幅などについて話すことができました。 しかし、これらの問題はどれも 固有の テクノロジー自体に。 それで、ブロックチェーンの使用に関する長期的な決定になると、尋ねる質問はこれです:私のユースケースにとって何がより重要ですか? 仲介と堅牢性? または機密性とパフォーマンス?

この単純な観点から検討すると、現在議論されている多くのユースケース 意味をなさない。 最大の問題は機密性です。 激しく競争する市場の参加者は、お互いの活動をお互いに明らかにするよりも、集中型データベースのプライバシーを当然好むでしょう。 これは、信頼できる中央当事者がすでに存在し、そのデータベースが常駐できる中立的な領域を提供できる場合に特に当てはまります。 この中央プロバイダーに関連するコストがあるかもしれませんが、これは保持されるプライバシーの価値によって正当化される以上のものです。 ブロックチェーンへの移行の唯一の動機は、積極的な新しい規制です。

それにもかかわらず、ブロックチェーンには強力な使用例があり、機密性とパフォーマンスよりも中傷と堅牢性が重要です。 これらについては次の投稿で詳しく説明しますが、これまでに見た中で最も有望な分野は、(a)会社間の監査証跡、(b)来歴の追跡、(c)です。 軽量 金融システム。 XNUMXつのケースすべてで、人々は好奇心と実験だけでなく、展開に対する明確な見方でマルチチェーンを構築していることがわかりました。 したがって、ブロックチェーンがビジネスに真の価値を追加する方法を探している場合、それらは開始するのに適した場所かもしれません。

コメントを投稿してください LinkedInの上に.

タイムスタンプ:

より多くの マルチチェーン