DUICUO

ShardingSphere分散データベースの紹介

[[441256]]

Apache ShardingSphere は、ユーザーと開発者がカスタマイズされたクラウドネイティブ エクスペリエンスを提供するために必要なエコシステムを備えたオープンソースの分散データベースです。

Apache ShardingSphereは、ユーザーと開発者がカスタマイズされたクラウドネイティブなエクスペリエンスを提供するために必要なエコシステムを備えたオープンソースの分散データベースです。Apache Foundationに加盟してから3年間、ShardingSphereコアチームはコミュニティと協力し、オープンソースで堅牢な分散データベースとそれを支えるエコシステムの構築に取り組んできました。

ShardingSphereは、業界で一般的に見られる単純な分散データベースミドルウェアソリューションのパターンに完全には適合しません。ShardingSphereは、分散型のプラグ可能なシステムを再構築することで、実世界のユーザー実装の発展を可能にし、コミュニティとデータベース業界に価値あるソリューションを提供します。

ShardingSphere は、Database Plusコンセプトを具体化することを目指しています。

データベースプラス

Database Plusは、断片化された基本データベースサービスの上に、標準レイヤーとエコシステムレイヤーを構築することを目指しています。統一・標準化されたデータベース利用仕様は、上位層アプリケーションの信頼性を高め、基盤となるデータベースの断片化によって企業が直面する課題を最小限に抑えます。データベースとアプリケーションを接続するために、トラフィックとデータのレンダリングおよび解析を活用します。分散データベース、データセキュリティ、データベースゲートウェイ、ストレステストといった強化されたコア機能をユーザーに提供します。

ShardingSphereは、Database Plusにプラガブルなカーネルアーキテクチャを採用しています。これはモジュール性を意味し、ユーザーに柔軟性を提供します。ShardingSphereは複数の異なるレイヤーで構成されています。

  • 基本層:さまざまなシナリオでのユーザーのニーズを満たすために、さまざまなアクセス端末とアクセス方法を提供します。
  • プラグイン層:スケーラビリティを実現することでインフラストラクチャ サポートを提供します。
  • 機能レイヤー:ユーザーのニーズを満たすさまざまな機能プラグインを提供し、ユーザーにプラグインの選択と組み合わせの柔軟性を提供します。
  • 製品レイヤー:エンドユーザーが目にするレイヤーです。業界特化型、シナリオ特化型の製品を提供します。つまり、ユーザーが行うあらゆる業務に適したツールを提供します。

データベースプラスプラットフォーム

(トリスタ・パン、CC BY-SA 4.0)

DistSQLを使用した標準化されたクラスタ管理

Apache ShardingSphereは、独自のSQL方言であるDistSQL(分散SQL)を使用して、ShardingSphereエコシステム全体の要素を接続します。ShardingSphere分散データベースエコシステムの標準インタラクティブ言語であるDistSQLを使用することで、ユーザーは単一のSQLコマンドで分散データベーステーブルの作成、変更、削除、暗号化、復号化を行うことができます。また、DistSQLは分散スケジューリング管理もサポートしています。

ディストリビューションSQL

(トリスタ・パン、CC BY-SA 4.0)

複数のアクセス端末

2年間の改良とテストを経て、ShardingSphere JDBCとShardingSphere Proxyは本番環境への導入準備が整いました。多くのコミュニティユーザーから、本番環境における関連するケーススタディが寄せられています。

共有コア アーキテクチャとさまざまな ShardingSphere アダプタのおかげで、ユーザーは実稼働環境で必要な場合にハイブリッド アダプタを展開することを選択できます (下の図を参照)。

ハイブリッド展開

(トリスタ・パン、CC BY-SA 4.0)

分散型ガバナンス

ShardingSphereエコシステムでは、コンピューティングとストレージが分離されているため、データベースの分散ガバナンスが可能になります。これにより、多数のストレージノードとコンピューティングノードを維持し、サーキットブレーカーを実装し、高可用性を確保できます。

分散型ガバナンス

(トリスタ・パン、CC BY-SA 4.0)

Grafanaによる監視

ShardingSphereは、インフラストラクチャを監視するためのステータスメトリクスも提供します。動的なエージェント読み込みメカニズムにより、メトリクスと追跡指標が提供され、APMシステムをGrafanaダッシュボードに簡単に統合できます。

Grafanaダッシュボード

(トリスタ・パン、CC BY-SA 4.0)

分散コミュニティにおける分散データベース

コミュニティはShardingSphereの最適化を続け、新しいアイデアや業界のシナリオを統合しています。ShardingSphereはコミュニティによって構築され、その開発の原動力の一つはユーザーからのフィードバックです。これはオープンソースの特徴であると同時に、チームのアプローチでもあります。ShardingSphereコミュニティのコアチームメンバーは、オープンソースに関心のある方を喜んで指導し、開発に協力したい学生には実践的な問題を提供します。また、新しい友人や貢献者がコミュニティに参加し、オープンなアイデア交換を促進し、真にグローバルな開発者コミュニティを形成してくれることを願っています。