NoSQLとNewSQLの技術革新、マルチテナンシーの実現と高いスケーラビリティを提供

2024年8月19日(月)
木村 慎治
CloudNative Days Summer 2024から、NoSQLとNewSQLの違いやサーバーレスデータベースの最新技術を解説したセッションを紹介する。

CloudNative Days Summer 2024において、PingCAP株式会社の小板橋 由誉氏が「変化と挑戦:NoSQLとNewSQL、Serverless Databaseの技術革新とマルチテナンシーの秘密」と題するセッションを行った。データベース技術の進化、NoSQLとNewSQLの違い、そしてサーバーレスデータベースの最新技術について詳細に解説を行った。とくにAmazon DynamoDBとTiDBに焦点を当て、これらのデータベースがどのようにマルチテナンシーを実現し、高いスケーラビリティとパフォーマンスを提供しているかについて紹介した。

NoSQLとNewSQLの理解に重要な3つの観点

NoSQLデータベースは、インターネット普及に伴い、水平スケーリングを実現するために登場した。代表例として、GoogleのBigTable、FacebookのCassandra、AmazonのDynamoDBがある。これらは非リレーショナルデータモデルを採用し、大規模データ処理を可能にするが、一貫性を犠牲にすることが多い。一方、NewSQLデータベースは、RDBMSとNoSQLの利点を融合し、高いスケーラビリティと強整合性を提供する。代表例には、GoogleのCloud SpannerやTiDBがある。

小板橋氏はまず、NoSQLとNewSQLの理解において重要な3つの観点について説明した。まず「RDBMSにおけるシャーディングの課題についてです。設計によってはパフォーマンスの低下や分散トランザクションの問題を引き起こすことがあります。とくにテーブル結合がストレージをまたぐ場合、性能が低下しやすくなります」と述べた。

次の観点はNoSQLデータベースのデータモデルだ。非リレーショナルなデータモデルとして設計されていることや、SQLのインターフェースを持たないことが課題になるケースがある。「複雑に組み上げられたサブクエリによって高負荷がかかることも珍しくありません」と小板橋氏。

「NoSQLのデータモデル」

「NoSQLのデータモデル」

三つ目に「一番重要な観点」として、分散システムの仕組みについても詳述した。「分散データベースにおける整合性の話が一番重要だと思っている」と強調しながら、小板橋氏は分散システムにおける課題について説明した。

「分散システムの整合性を維持するための仕組みとして、まずWriterの観点があります。これはデータを書き込む際にどのノードに書き込むかを制御し、一貫性を保つ方法です。次に、シャーディングの観点です。データを複数のノードに分散させることでスケーラビリティを向上させますが、テーブルリレーションを持つデータのシャーディングは複雑であり、慎重に設計する必要があります。そして分散トランザクションの観点です。これは、複数のノードにまたがるトランザクションを管理し、一貫性を保つための仕組みです」と語った。

とくに分散システムにおける整合性の重要性について、小板橋氏は以下のように語った。「分散システムでは、データの一貫性を保つために合意形成アルゴリズム(例えばPaxosやRaft)が不可欠です。これらのアルゴリズムを用いることで、システム全体が一致した状態を保ち、データの信頼性と可用性を確保します。整合性の確保は、分散システムのパフォーマンスとスケーラビリティを両立させるために非常に重要な要素です」と述べた。

さらに小板橋氏はCAP定理についても説明した。CAP定理は、一貫性(Consistency)、可用性(Availability)、分断耐性(Partition Tolerance)の3つを同時に満たすことができないという理論だ。「NoSQLデータベースでは、スケーラビリティを高めるために一貫性を犠牲にすることが多いです」と説明した。またConsistent Hashingについても言及し、「Consistent Hashingは、データを均等に分散させるための技術であり、DynamoDBやCassandraなどで採用されています。この技術により、ノードの追加や削除があってもデータの再配置が最小限に抑えられ、システムの安定性と効率性が向上します」と述べた。

「CAP定理とConsistent hashing」

「CAP定理とConsistent hashing」

小板橋氏はまた分散システムの設計と運用におけるベストプラクティスについても触れ、「分散システムの設計には、データの一貫性、可用性、スケーラビリティをバランス良く考慮することが求められます。これにより、システム全体の信頼性と性能を最大化することができます」と述べた。

Amazon DynamoDBに見るNoSQLのアーキテクチャ

次に小板橋氏はAmazon DynamoDBを例に、NoSQLデータベースの具体的な技術的特徴について解説した。

「DynamoDBは、Key-Valueのデータモデルを採用し、結果整合性を維持しながらスケールするShardingアルゴリズムを使用しています。この設計により高いスケーラビリティとパフォーマンスを実現しています」と説明した。

「Amazon DynamoDB」

「Amazon DynamoDB」

さらに、DynamoDBの多重なレプリケーションについても触れ、「DynamoDBは、常に3つのアベイラビリティゾーン(AZ)でデータをレプリケートし、I/O操作も3つのAZで実行することで、データの可用性と耐障害性を確保しています」と述べた。

システム管理については、「DynamoDBのシステム管理には、パーティションメタデータシステムや自動管理機能が含まれており、テーブルとインデックスの作成、プロビジョニング、パーティションの分割・修復が自動で行われます」と具体的な機能を紹介した。

またマルチテナンシーの実現方法についても言及し、「DynamoDBのアーキテクチャには、メタデータシステム、リクエストルーター、Auto Adminが含まれており、各リクエストを適切なストレージノードにルーティングすることで、効率的なリソース利用が可能となります」と小板橋氏は語った。

「Multi-tenancy」

「Multi-tenancy」

TiDBに見るNewSQLのアーキテクチャ

次に小板橋氏はNewSQLの具体例として、TiDBの具体的な技術的特徴について説明した。TiDBは、PingCAPによって開発されたNewSQLデータベースであり、高い耐久性、可用性、パフォーマンスを提供する。またサーバーレスの形態でも提供されており、数十秒で起動し、自動でスケールするといった特徴を備える。

「TiDB Architecture」

「TiDB Architecture」

TiDBのストレージとコンピューティングの分離については、TiDBはストレージ層とコンピューティング層を分離しており、Amazon EBSとAmazon S3を組み合わせることで、高いデータ信頼性を実現している。

またマルチテナントアーキテクチャについても説明があり、「TiDBのマルチテナントアーキテクチャは、Shared Gateway、Isolated SQL Layer、Shared Storage Layerで構成されており、負荷に応じて専用のTiDBがアサインされることで、効率的なリソース利用が可能となります」と小板橋氏は述べた。

さらにサーバーレスの利点についても強調し、TiDB Serverlessはサーバーの管理不要で自動拡張し、従量課金で利用できる点が非常に魅力的であることや、リアルタイム分析やAIアシスタント機能も利用可能であり、柔軟なデータ処理が可能である点を説明した。

「TiDB Serverless」

「TiDB Serverless」

スケーラビリティの向上についても触れ、「TiDBは、コンピューティングノードの追加やデータの水平分割が容易であり、スケーラビリティの向上が図られています。またデータの永続性や整合性も確保されており、信頼性の高いデータベース運用が可能です」と小板橋氏は強調した。

変化と挑戦

NoSQLとNewSQLの技術革新は、分散システムやサーバーレス設計における課題を解決し、業界に新たな可能性をもたらしている。とくにAmazon DynamoDBとTiDBの例は、マルチテナンシーの実現と高いスケーラビリティを提供するための具体的な技術的アプローチを示している。これらの技術革新が、今後もデータベースの世界における重要な役割を果たすだろう。

小板橋氏は「皆さんが携わっているサービスの裏側には変化と挑戦が必ずあります。今日のセッションが何かの参考になれば幸いです」として、セッションを締めくくった。

IT系出版社にて雑誌、Webメディアの編集職を経て、2011年からフリーランス。IT系の雑誌やWebメディア、ベンダーのWebサイトなどで事例紹介・製品サービス紹介記事などの執筆、編集、企画を中心に活動。ITソリューション、データセンター、ネットワーク関連を中心に多くのITベンダー、ユーザー企業を取材、執筆を行っている。

連載バックナンバー

クラウドイベント
第9回

Wantedlyがマイクロサービス基盤としてKubernetesを選んだ理由

2024/10/29
CloudNative Days Summer 2024にてWantedlyのエンジニアが自社のマイクロサービス基盤として、フルマネージドサービスではなくKubernetesを選択した理由を説明したセッションを紹介する。
システム開発イベント
第8回

デプロイ・QA・Four Keysを自動化し、可視化するfreeeの統合デリバリー基盤の進化とその実践

2024/10/28
CloudNative Days Summer 2024から、デプロイ、QA、Four Keysを自動化・可視化した統合デリバリー基盤を解説したセッションを紹介する。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています