お問い合わせ 今すぐ始める
htap tech path-banner

※このブログは2022年10月17日に公開された英語ブログ「Technical Paths to HTAP: Greenplum and TiDB as Examples」の拙訳です。

何十年もの間、オンライントランザクション処理 (OLTP) とオンライン分析処理 (OLAP) がデータベースインフラの基準となってきました。OLTPデータベースはトランザクションデータ処理を扱います。OLAPデータベースは、抽出、変換、ロード (ETL) を介してOLTPデータベースからインポートされたデータに基づいて分析クエリを処理します。しかし、このOLTP + ETL + OLAPソリューションは高価で複雑であり、ビジネスの成長に伴い最新のデータ分析にタイムリーにアクセスしたいという需要をなかなか満たすことができません。

ハイブリッド・トランザクション&アナリティカル・プロセッシング (HTAP) データベースは、OLTPとOLAPのワークロードを同じアーキテクチャで処理するソリューションです。HTAPはトランザクションが完了すると、ほぼ即時にデータを分析しクエリすることができ、トランザクションデータと分析データはリアルタイムで強力な一貫性を維持します。

2014年にガートナー社によってバズワードとして作られたHTAPですが、技術的な課題から当初はあまり浸透しませんでした。しかし最近になって、Greenplum、TiDB、AlloyDB、Unistoreのような最新のアーキテクチャが登場すると、HTAPは改めて注目を集めているようです。

>> Download the White Paper: Enabling Data Agility with an HTAP Database (英文) <<

この記事では、HTAPデータベースの主な技術的な道筋を説明し、それぞれの道筋に沿って代表的なデータベースを比較します。

HTAPへの技術的な道筋

HTAPデータベースは、OLTPとOLAPの両方の機能を同じデータベース上で統合したものです。技術的なアプローチとしては、OLAPデータベースでトランザクション処理機能を拡張するか、OLTPデータベースで分析処理機能を拡張するか、至ってシンプルな二択となります。

OLAPから拡張されたHTAP

OLAPデータベースは、1回の書き込みで複数の読み取りを処理し、クエリのスキャン機能に重点を置いています。また、超並列処理 (MPP) やベクトル・コンピューティングなどの主要なテクノロジーも使用されています。しかし、高性能なトランザクションを処理するには、行データへの頻繁かつ高速なアクセスが必要なため、列型ストレージエンジンはそのような目的には設計されていません。列ベースのOLAPデータベースがHTAP機能を提供するためには、データベースは列の一括処理と、単一の行に対する高度に同時的な変更とクエリの両方をサポートする必要があります。

OLTPから拡張されたHTAP

OLTPデータベースはトランザクション処理のために設計されています。行ストレージ、高い並行性制御、ディザスタリカバリなどの技術に支えられ、特定のデータ行をいかに素早く見つけて書き込むかに重点を置き、小さなデータを同時にバッチで書き込む処理を得意としています。しかし、行ベースのOLTPデータベースで高性能な分析クエリを実行するには、データベースが膨大なデータや特定のフィールドを対象とした集計や関連付けなど、複雑な計算をサポートする必要があります。行ストレージエンジンはこのために設計されていません。OLTPデータベースをHTAPデータベースに変換する際の最大の課題は、いかにして大量の行ベースのデータに対する複雑なクエリを処理するかということです。

各道筋ごとの代表的なHTAPデータベース

HTAPの両方の技術的な道筋に沿って、製品の数は増えています。GreenplumとTiDBはその代表的な製品です。

OLAP拡張HTAPの例:Greenplum

Greenplumはシェアード・ナッシング・アーキテクチャで構築されたMPPのOLAPデータベースです。

Greenplum 6.0は、マルチフォーマットストレージによってOLTP機能を強化しました。

Greenplumは、コールドデータ、ホットデータそれぞれに対して、複数のストレージフォーマットのサポートを提供しています。また、論理的にパーティショニングされたテーブルを通して、エンドユーザーにシングルテーブルアクセスのインターフェイスを提供します。しかし、OLTPのパフォーマンス向上のために、頻繁に変更する必要のあるデータは行ストレージに格納されます。ある意味、これは行ストレージでフォーマットされたデータが列ストレージに変換される前の分析パフォーマンスを弱めることにもなります。

Greenplumにおける複数のストレージフォーマット

OLTP拡張HTAPの例:TiDB

MPP技術を使用していることにより、クラスタはスケールアップ時にデータを再分配する必要があります。データ量が大きいと、この処理に時間がかかることがあります。

TiDBはオープンソースの分散SQLデータベースで、強力な一貫性、分散トランザクション、水平スケーリング、MySQLとの互換性を備えています。

TiDB 5.0より前は、典型的なOLTPデータベースでしたが、TiFlashエンジンを導入し、完全にHTAPデータベースに生まれ変わりました。TiFlashはTiDBの行ストレージであるTiKVを列ストレージとして拡張したものです。TiFlashは優れた分離レベルを提供し、強力な一貫性を保証します。

TiDBはRaftプロトコルを拡張し、行フォーマットのトランザクションデータを列フォーマットに変換します。TiFlashに格納することで、トランザクションデータに対する高速な分析クエリをサポートします。TiDBはOLAPとOLTPを同時に処理することができ、データは行フォーマットと列フォーマットの両方で利用可能です。Greenplumとは異なり、ホットデータとコールドデータに対する特別な処理はありません。そのため、すべてのデータに対するパフォーマンスは一貫しています。しかし、TiDBのHTAP機能による代償としては、より多くのストレージが必要になることが挙げられます。

TiDBのHTAPアーキテクチャ

さらに、TiDBはRaftベースの一貫性プロトコルにより、数百ノードまでスケールアップすることが可能です。スケーリングプロセスの間、システムは自動的にデータを再分配し、サービスは継続状態を維持します。

GreenplumとTiDBの比較

以下の表は、GreenplumとTiDBの主な機能をまとめたものです。

GreenPlumTiDB
適用シナリオヘビーOLAP + ライトOLTPヘビーOLTP + ライトOLAP
Database as a Serviceの提供いいえはい
オープンソースはいはい
スケーラビリティ中くらい高い
スケールの容易さいいえはい
SQL互換PostgreSQLMySQL
ストレージ費用安い高い
分析性能 (ホットデータ)低い高い
分析性能 (コールドデータ)高い高い

GreenplumとTiDB、そしてそれぞれの技術的な道筋を比較することで、どちらにも長所と短所があることがわかります。

GreenplumのHTAPは、主にオンライン分析が中心となる準リアルタイムのデータウェアハウスと分析に適しています。これには以下が含まれます。

  • 準リアルタイムのデータ挿入と更新を必要とする複雑なデータ分析と処理
  • ホットデータ分析の需要が高くなく、コールドデータのための複雑なデータ分析と処理

TiDBは、オペレーショナルデータのリアルタイム分析クエリに適しています。これには以下が含まれます。

  • 増大する大量のデータと高速クエリによる高同時OLTPオペレーション
  • OLTP事業に影響を与えることなく、オペレーショナルデータをリアルタイムで分析

まとめ

HTAPデータベースは、従来のOLTPデータベースやOLAPデータベースが単独でワークロードを処理するのが極めて困難である場合に必要となります。OLTPからHTAP、OLAPからHTAPといった技術的な道筋にかかわらず、TiDBやGreenplumのようなHTAPデータベースの増加は、デジタルトランスフォーメーション時代において、さらなる選択肢を提供します。この2つを組み合わせることで、ユーザーは急成長する複雑なビジネス・ワークロードに常に対応できるようになるのです。

TiDBを体験するには、無料サインアップよりTiDB Serverlessをお試しください。日本語ドキュメントのTiDBクイックスタートガイド、または無料オンライントレーニングのご利用をお勧めします。ご不明な点などございましたら、お問い合わせフォームよりご連絡ください。 また、GitHubにて問題を報告することもできます。


Have questions? Let us know how we can help.

Contact Us
TiDB Dedicated

TiDB Dedicated

TiDB Cloudのエンタープライズ版。
専用VPC上に構築された専有DBaaSでAWSとGoogle Cloudで利用可能。

TiDB Dedicated

TiDB Serverless

TiDB Cloudのライト版。
TiDBの機能をフルマネージド環境で使用でき無料かつお客様の裁量で利用開始。