ブロックチェーンはデータベースですか?
「分散データベース」と「分散台帳」は、ブロックチェーンの別名として多くの人に理解されています。多くの場合、それらは「同じように見える」、あるいは「同じように機能する」ことさえあります。
では、ブロックチェーンはデータベースと同一視できるのでしょうか?
Cardano コミュニティの記事では、データをキーワードとしてこのトピックを探求しています。 stakefish は記事内の主な視点を抽出し、誰もが独自の答えを見つけられるようにコミュニティと共有します。
ブロックチェーンは遅くて高価なデータベースであり、拡張性も良くないとよく言われます。本当?
確かに、ブロックチェーンは従来のデータベースほど高速になることはありません。ただし、ブロックチェーンにはデータベースに比べて利点があるため、これらの利点を理解することが重要です。
副題
「ブロックチェーン」から「ブロックチェーン」へ
画像の説明

リンクリスト構造
ブロックチェーンには、履歴データの改ざんを防ぐ機能が追加されています。
1991 年、2 人の著者、スチュアート ハーバーと W. スコット ストーネッタは、初めて暗号化に基づく「ブロックのチェーン」の研究を行い、文書の改ざんができないタイムスタンプ システムを構築したいと考えました。
画像の説明

暗号ベースの「ブロックチェーン」構造
なお、当時は「ブロックチェーン」という言葉ではなく、サトシ・ナカモト氏もビットコイン白書で使用した「ブロックチェーン」という言葉が使われていた。
副題
文章
文章
一般的なデータベースは「ブロック」ではなく「テーブル」を使用します。テーブルは、データベースにテーブル形式で格納されている、列と行で構成される関連データの集合です。
画像の説明

データシート
データベース内のデータに対して使用できる基本的な操作は、作成、読み取り、更新、削除 (CRUD) の 4 つです。
ただし、ブロックチェーンでは作成と読み取りの 2 つの操作のみが許可されます。ブロックチェーンはブロックチェーンの最後に完全なブロック (トランザクションを含む) のみを追加でき、その後はデータを更新または削除できません。
副題
違い 2: データ権限
「管理者のグループ」≠ ブロックチェーンノード
「どのような操作が許可されるか」に加えて、「誰が操作するか」も、ブロックチェーンとデータベースの違いを見る際の重要な側面です。
データベースは、1 人または管理者のグループによって保守されます。管理者は、データに対してやりたいことを何でも行う権利があります (CRUD 4 操作)。マネージャーは通常、大企業の従業員であり、会社の所有者が設定したルールに従う必要があり、データを作成、読み取り、変更、または削除するための限定的な権限をユーザーに付与します。
ただし、ユーザーが正しいデータを入力した場合でも、管理者はそのデータを変更または削除することができます。データの正確性について論争がある場合、ユーザーには変更権限がないか、制限された権限しかなく、管理者は常にユーザーよりも多くの権限を持ちます。
権限データを変更および削除する管理者はブロックチェーン内に存在しません。ネットワーク内のノードは、追加するデータについて同意する必要があります。ブロックが追加され確認されると、誰も簡単に履歴データを変更することはできなくなり、ブロックチェーンを通じて過去に何が起こったのかを常に確認できます。
ブロックチェーンは、管理者によって維持される単一のサーバーを、追加される内容に同意する一連の独立したノードに置き換えます。
副題
違い3: データのバックアップ
「冗長データベース」≠ブロックチェーン
画像の説明

データ複製
画像の説明

すべてのノードが合意に達した後、データはすべてのディスクに書き込まれます
複数のバックアップ データベースもブロックチェーンほど安全ではありません。
「データ レプリケーション」とは、あるサーバーがバックアップのためにデータを他のサーバーに送信することを意味します。データを保存する前に、特定のバージョンのデータを保存するという合意がサーバー間でありません。 1 つのサーバーが無効または間違ったデータを送信した場合、他のサーバーはそのデータをただ盲目的に受信して保存します (ある種のデータ検証はまだ実行中です)。
副題
違い4: データ転送
分散システム ≠ 分散ソリューション
従来のデータベースはクライアント/サーバー アーキテクチャを採用しています。これは、クライアント システムとサーバー システムの 2 つの部分で構成されるソフトウェア構造モデルです。これらは、コンピュータ ネットワークを介して、または同じコンピュータ上で通信します。マスタースレーブアーキテクチャのアプリケーションプログラムは、クライアントソフトウェアとサーバーソフトウェアで構成される分散システムですが、それでもサーバーを中心とした集中ソリューションです。
データベースはサーバー上に構築されます。したがって、サーバーが 1 台しかない場合、いわゆる単一障害点が発生する可能性があります。サーバーがダウンすると、クライアントはサーバーと通信できなくなり、クライアント同士も通信できなくなります。
データの観点から見ると、すべてのクライアントはサーバーが正直で安全であると信頼する必要があります。
現在では、サーバーが 1 台しかないネットワークを見ることはほとんどありません。ほとんどの場合、ネットワーク内にはさらに多くの冗長サーバーが存在します。 1 つのサーバーがクラッシュするか一時的に利用できなくなった場合、代わりに別のサーバーがすべてのリクエストを処理しますが、これが可能となるのはサーバー間でデータがレプリケートされている場合のみです。
副題
違い5: データストレージ
不変で価値の証明
データベースは、セキュリティ監視、シグナリング、情報収集、承認などのシナリオで使用できます。多くのデータベースは、データベース トリガーの形式で効率的なデータベース機能を提供します。クラウド データベースを使用する場合、データは通常、少数の人にとってのみ重要であり、データベース システムにセキュリティを実装するだけで十分です。発生する可能性のある問題を解決するための法律などの他のメカニズムがあるため、ユーザーはデータベース所有者を信頼できます。
副題
違いとトレードオフ
データベースは非常に強力であり、人々はそれを使用して必要なほぼすべての機能を実現できますが、ブロックチェーンの独自の機能はデータベースでは実現できません。
一歩下がって、従来のデータベースでは実現できないブロックチェーンの機能を見てみましょう。
データは変更できません。ブロックチェーンは本質的に分散型ネットワークであり、データは合意に達した後、同時に多数のディスクに書き込まれます。履歴データを変更することは非常に困難、またはほぼ不可能です。主な違いは、データベースが分散型で実装されているかどうかです。
追加の安全性データ。前の点で述べたように、新しいブロックはエンティティの過半数が同意した場合にのみ追加されます。したがって、無効とみなされるデータを挿入することはできません。参加者はルールを厳格に遵守する必要があり、より相互に独立した組織がルールの実施に重点を置きます。
管理者はいません。ブロックチェーン上には、何かを変更できる権限を持つ管理者のような役割はありません。ノードは相互に交渉し、責任を共有します。ブロックチェーンには、信頼不要で削除されないという特徴があります。
単一障害点はありません。これは主に PoS および PoW コンセンサス メカニズムに当てはまります。 DPoS コンセンサスの場合、複数のノードが同時に利用できない場合に問題が発生する可能性があります。
人々は、さまざまなニーズに応じて、従来のデータベースまたはブロックチェーンテクノロジーの使用を選択できます。ブロックチェーンを採用する場合、プライベート チェーンまたはパブリック チェーンを選択することで、さまざまなレベルの分散データ管理を実現できます。
高いスケーラビリティを実現し、高度な分散性を維持することは困難です。データは世界中に分散する必要があるため、ネットワークの遅延を考慮する必要があります。世界的な合意に達するまでには時間がかかるだろう。ブロックチェーンはデータベースほど効果的ではありませんが、トラストレス性、分散化、履歴データの改ざん防止という点で保護を提供できます。
分散型アプローチには、従来のインターネットの巨人に取って代わる可能性もあり、より多くの人がデータを制御し、その恩恵を受けることができるようになります。
元のタイトル: データベースはブロックチェーンではありません
投稿者: Cardanians.io
コンパイル: ステークフィッシュ


