第 1 章: 分散データベースと集中型データベースの違い
1. データベースはコア IT インフラストラクチャです
・インターネットビジネスの成長に伴い、基幹システムを刷新
・基幹システムにデータベース分散やクラウド化を導入し、水平的かつ円滑な展開をサポート
• 5G の大規模な普及により、IT システムのアップグレードが促進されます
• 5G には大帯域幅と超低遅延という機能があり、データベース システムには応答速度と同時実行性を向上させる必要があります
• スマート政府の構築
• データベースのパフォーマンスと拡張に対するより高い要件を提唱するスマート政府を目標に、「インターネット +」ビジネス構築を実現する
2. 従来の集中型データベースが直面する課題
2.1 従来のデータベース アーキテクチャ
2.2 利点
• 成熟して安定: 40 年近くの開発の後、さまざまな産業に適用されており、製品技術は非常に成熟して安定しています •
強力な産業適応性: さまざまな産業のさまざまなニーズに適応します
• 完璧なエコロジー: 多数の製品がありますISV アプリケーション開発者とテクノロジの開発者、テクノロジ エコロジー、インダストリー エコロジー、タレント エコロジーはすべて完了しています。
2.3 短所
高コスト: 独自のソフトウェアの価格が高く、ハイエンドのハードウェアに依存するため、CAPEX と OPEX のコストが高く、
水平方向に拡張できない: 容量の増加は、デバイス自体のパフォーマンスを向上させることによってのみ達成できます。 (CPU/メモリ/ハードディスクの増設、PCサーバーから小型サーバーへのアップグレードなど)、1点の上限に触れることができる必要があります。
3. データベースミドルウェアを使用したサブデータベースとサブテーブルのスキームにはまだ欠点があります
• 汎用データベースを使用すると、データベースの線形拡張が実現できる;
• データベースはシングルポイント データベースであり、データベース間の接続はなく、他のデータベースの存在は不明であり、ミドルウェアを使用してトランザクションを完了するクロスデータベースを必要とするもの; •
データベースミドルウェアは、さまざまなデータベースを接続し、サブデータベースサブテーブルを実現します。
3.1 利点
線形拡張: サブデータベースとサブテーブルを介して、データベースの水平拡張を迅速に実現できます
技術コストが低い: コア データベース エンジンを変更する必要がないか、ほとんど変更する必要はありません
3.2 短所
クロスデータベース分散トランザクション: データベースのコア エンジンには分散機能がなく、ミドルウェアによってのみ分散処理を完了することができますが、ミドルウェアが RPO=0 を達成することは困難であるため、例外が発生した場合に分散トランザクションを 100% 保証することはできません。 ACID 機能
グローバルな一貫性: 複数のデータベース サーバーのタイムスタンプに一貫性がないため、複数のデータベース間でデータ バージョン番号のグローバルな一貫性を確保することは困難 負荷分散: 拡張および縮小時に、基盤となるデータベース エンジンがオンラインでデータ分散を調整でき
ないそのため、業務を中断してデータをリダイレクトする必要があり、業務や運用・保守にとって大きな課題となっています
データベース間複合SQL:データベース間複合SQL操作(マルチテーブルシャーディングキーなど)独立した関連付けクエリ) はミドルウェアでのみ完了することができます. ただし、ミドルウェアには分散並列コンピューティング機能がないため、最終的にアプリケーションによる SQL の使用が制限され、ビジネスへの侵入が発生します.
4. ネイティブ分散リレーショナル データベース アーキテクチャ
4.1 利点
高いデータ信頼性 + 高いサービス可用性: マルチコピー コンセンサス プロトコル Paxos の産業グレードの実装により、個々のノードに障害が発生した場合にゼロ データ損失 (RPO=0) と迅速なサービス リカバリ (RTO<30 秒) を保証します。ボリューム
容量拡張 (オンライン プロモーション時など) を増やし、ビジネス ボリュームの減少 (プロモーション後など) に応じて容量を縮小します
。
: 分散トランザクションをサポートし、グローバルな一貫性を確保し、分散された複雑なクエリをサポートします. 柔軟な展開方法: 3 つのセンター、5 つのセンター、アクティブ/スタンバイ、およびその他の展開モードをサポートします
。データベース、およびビジネス移行の低レトロフィット コスト
5. OceanBase と従来のデータベースの比較
従来の集中型データベース | OceanBase に代表される分散型データベース | |
---|---|---|
製品アーキテクチャ | 古典的な「一点集中型」アーキテクチャは、「Share-Everything」アーキテクチャを採用しています。IBMハイエンドサーバーやEMCハイエンドストレージデバイスなどのハイエンドハードウェアに基づいて構築されています。 | ネイティブの「分散」データベースは、業界で最も厳格な Paxos 分散コンセンサス プロトコルを採用しており、通常の PC ハードウェアに基づいて設計されており、ハイエンド ハードウェアを必要としません。 |
データの信頼性とサービスの高可用性 | ハイエンドのハードウェア機器を使用してデータの信頼性を確保し、「マスター/スレーブ レプリケーション」を採用します. マスター ノードに障害が発生した場合、データが失われます (RPO>0); サービスは自動的に復元できず、サービスの回復時間 (RTO) ) は通常、時間単位で計算されます | 通常の PC ハードウェアに基づいて、Paxos 分散コンセンサス プロトコルを使用してデータの信頼性を確保します。 |
マスター ノードに障害が発生した場合、Paxos はデータ損失 (つまり、RPO=0) を保証し、サービスを自動的に選択して復元できます。サービス復旧時間 (RTO) は 30 秒以内です。 | ||
スケーラビリティ | データ ストレージは単一ポイント内でのみ垂直拡張を実現でき、最終的には単一ポイント アーキテクチャの下で容量の上限に到達することは避けられません。通常、計算ノードはスケーラブルではありません。コンピューティング ノードはいくつかのモード (RAC、pureScale など) で拡張できますが、複数のコンピューティング ノードがシングルポイント共有ストレージにアクセスする必要があり、スケーラブルなコンピューティング ノードの数は限られています。 | データノードとコンピューティングノードの両方がMPPアーキテクチャの下で水平方向に拡張できます.データノードとコンピューティングノードの数に制限はありません.十分なネットワーク帯域幅を前提に,それらは任意の数に拡張できます. |
適用シナリオ | 企業顧客(金融、通信、官公庁など)の基幹システムに集中し、インターネットビジネスのシナリオに対応できず、適用事例が少ない | Alipay コア、MYbank コア、Alibaba の多くの事業、および多数の外部商業銀行。徐々に伝統的なビジネスに移行 |
コスト | ハイエンドの基本ハードウェア、高額なソフトウェア ライセンス料、および製品サービス料を支払う必要があるため、より高額になります。 | 比較的低価格、PCハードウェアをベースとした設計でハードウェアコストを削減、ソフトウェアライセンスコストやサービスコストも有利 |
6. まとめ
40 年近くの開発を経て、従来の集中型データベースは非常に成熟しました。しかし, ビッグデータの現在の時代, 従来のデータベースはまだ多くの課題に直面しています. 分散データベースはこれらの問題を効果的に解決できます, これは将来のデータベース開発の重要な方向性です. 1: 従来のデータベースはハードウェアインフラストラクチャの要件が高いことが多く
,縦展開、横展開できず、性能の上限に達しやすい
2:サブデータベース、サブテーブルは横展開できるが、複雑なSQLに対応していないACIDなど新たな課題も持ち込む分散トランザクションを保証する; 3:
分散データベースはこれらの問題を効果的に解決できます. アプリケーションは集中型データベースのように分散データベースを使用できます. 分散データベースには、ハードウェアコストが低く、スケーラビリティが高く、可用性が高いという特徴があります.