【TiDB】分析エンジンのTiFlash がオープンソースに。分散データベースのイノベーションを更に加速へ。
[22/04/05]
提供元:PRTIMES
提供元:PRTIMES
PingCAP株式会社(東京都千代田区、以下:PingCAP)は、TiDBの分析エンジンであるTiFlashが、Apache License 2.0の下でオープンソース化されたことを発表します。 TiFlashは、TiDBのHTAP(Hybrid Transactional and Analytical Processing)アーキテクチャに不可欠なコンポーネントで、ユーザーがリアルタイムなOLTPデータの価値を最大化します。 TiFlashのオープンソース化により、TiDBプラットフォームにおける分析アプリケーションに向けたエコシステムのイノベーションが加速されます。オープンソースはPingCAPの信念に深く根ざしています。
TiDB(https://pingcap.co.jp/tidb-overview)コミュニティの主要な力として、他のコントリビューターと協力してコードベースを成長させており、コミュニティユーザーはその採用を通じてプロジェクトを共同設計しています。
TiFlashは、2年前にTiDBの拡張機能としてスタートしました。
コミュニティにとってより良い形になるまで待つため、当初はオープンソース化しませんでした。その開発の過程では、すでにコミュニティから多大な恩恵を受けており、コミュニティのサポートなくしてTiFlashはあり得ませんでした。
TiFlashのフレームワークは、ベースライブラリに加え、ClickHouseをベースとしています。
ClickHouseをTiFlashのスタンドアロンのランタイムおよびサーバフレームワークとして使用し、そのストレージインターフェースを再利用しています。
オンライン・トランザクションに対する分析を実現するために、トランザクション関連のロジック、MPP機能、リアルタイムに更新可能なカラムストレージエンジンを追加しました。
また、TiFlashをTiDBアーキテクチャと完全に統合するために、RaftプロトコルとMySQLの互換性を導入しました。
PingCAPは、高性能なコンピュートエンジンをコミュニティに提供し、TiFlashの開発を加速させるためのビルディングブロックを提供してくれたClickHouseに感謝しています。
ただし、TiFlashとClickHouseでは、フォーカスしているシナリオが全く異なることは言及しておく必要があります。TiFlashはトランザクションデータのリアルタイム分析に重点を置いているのに対し、ClickHouseは非トランザクションデータに重点を置いています。
TiFlashは若い分析エンジンであるため、コミュニティのユーザーに大きく助けられてきました。ユーザーの声を間近に聞きながらプロジェクトを進め、その結果、ユーザーの分析サイクルを短縮し、リアルタイムの洞察をより活用できるようになりました。
当初、友好的なユーザーとの初期の実験の失敗から、リファクタリングを行いました。その後、TiFlashは、ZTO Express社やXiaohongshu社といった急成長中の企業で採用され、困難なシナリオをスムーズにこなせるか試されました。
その過程で、TiDBコミュニティのユーザーは常にTiFlashを信頼し、当時TiFlashがオープンソースでなかったにもかかわらず、受け入れてくれました。
TiFlashが更に成熟し、価値のあるものになるためには、コミュニティからの信頼と承認が最も重要です。私たちは、オープンソースにすることが、TiFlashを更にコミュニティに受け入れられる統合するための手段であると信じています。
※TiFlashに関する参考資料
TiFlash’s repository on GitHub(https://github.com/pingcap/tiflash)
TiDB: A Raft-based HTAP Database(https://www.vldb.org/pvldb/vol13/p3072-huang.pdf)
HTAPデータベースを構築してデータプラットフォームをシンプル化する方法(https://pingcap.co.jp/blog-how-we-build-an-htap-database-that-simplifies-your-data-platform)
Delivering Real-time Analytics and True HTAP by Combining Columnstore and Rowstore(https://en.pingcap.com/blog/delivering-real-time-analytics-and-true-htap-by-combining-columnstore-and-rowstore)
TiDB(https://pingcap.co.jp/tidb-overview)コミュニティの主要な力として、他のコントリビューターと協力してコードベースを成長させており、コミュニティユーザーはその採用を通じてプロジェクトを共同設計しています。
TiFlashは、2年前にTiDBの拡張機能としてスタートしました。
コミュニティにとってより良い形になるまで待つため、当初はオープンソース化しませんでした。その開発の過程では、すでにコミュニティから多大な恩恵を受けており、コミュニティのサポートなくしてTiFlashはあり得ませんでした。
TiFlashのフレームワークは、ベースライブラリに加え、ClickHouseをベースとしています。
ClickHouseをTiFlashのスタンドアロンのランタイムおよびサーバフレームワークとして使用し、そのストレージインターフェースを再利用しています。
オンライン・トランザクションに対する分析を実現するために、トランザクション関連のロジック、MPP機能、リアルタイムに更新可能なカラムストレージエンジンを追加しました。
また、TiFlashをTiDBアーキテクチャと完全に統合するために、RaftプロトコルとMySQLの互換性を導入しました。
PingCAPは、高性能なコンピュートエンジンをコミュニティに提供し、TiFlashの開発を加速させるためのビルディングブロックを提供してくれたClickHouseに感謝しています。
ただし、TiFlashとClickHouseでは、フォーカスしているシナリオが全く異なることは言及しておく必要があります。TiFlashはトランザクションデータのリアルタイム分析に重点を置いているのに対し、ClickHouseは非トランザクションデータに重点を置いています。
TiFlashは若い分析エンジンであるため、コミュニティのユーザーに大きく助けられてきました。ユーザーの声を間近に聞きながらプロジェクトを進め、その結果、ユーザーの分析サイクルを短縮し、リアルタイムの洞察をより活用できるようになりました。
当初、友好的なユーザーとの初期の実験の失敗から、リファクタリングを行いました。その後、TiFlashは、ZTO Express社やXiaohongshu社といった急成長中の企業で採用され、困難なシナリオをスムーズにこなせるか試されました。
その過程で、TiDBコミュニティのユーザーは常にTiFlashを信頼し、当時TiFlashがオープンソースでなかったにもかかわらず、受け入れてくれました。
TiFlashが更に成熟し、価値のあるものになるためには、コミュニティからの信頼と承認が最も重要です。私たちは、オープンソースにすることが、TiFlashを更にコミュニティに受け入れられる統合するための手段であると信じています。
※TiFlashに関する参考資料
TiFlash’s repository on GitHub(https://github.com/pingcap/tiflash)
TiDB: A Raft-based HTAP Database(https://www.vldb.org/pvldb/vol13/p3072-huang.pdf)
HTAPデータベースを構築してデータプラットフォームをシンプル化する方法(https://pingcap.co.jp/blog-how-we-build-an-htap-database-that-simplifies-your-data-platform)
Delivering Real-time Analytics and True HTAP by Combining Columnstore and Rowstore(https://en.pingcap.com/blog/delivering-real-time-analytics-and-true-htap-by-combining-columnstore-and-rowstore)