10 KiB
title | slug | description | keywords | |||||||
---|---|---|---|---|---|---|---|---|---|---|
Rocksetからの移行 | /ja/migrations/rockset | RocksetからClickHouseへの移行 |
|
Rocksetからの移行
Rocksetはリアルタイム分析データベースであり、2024年6月にOpenAIに買収されました。 ユーザーは2024年9月30日午後5時PDTまでにサービスからオフボードする必要があります。
私たちは、ClickHouse CloudがRocksetユーザーにとって素晴らしい選択肢となると考えています。このガイドでは、RocksetからClickHouseに移行する際に考慮すべきポイントについて説明します。
では、始めましょう!
即時のサポート
即時のサポートが必要な場合は、このフォームにご記入いただき、人間の担当者が対応いたします!
ClickHouseとRocksetの比較 - 概要
まず、ClickHouseの強みと、Rocksetとの比較で期待される利点について簡単に説明します。
ClickHouseは、スキーマファーストアプローチを通じてリアルタイムパフォーマンスとコスト効率に焦点を当てています。 半構造化データもサポートしていますが、ユーザーはデータの構造をどのように設定するかを決定することで、性能とリソースの効率を最大化するという哲学を持っています。 上記のスキーマファーストアプローチの結果として、ベンチマークでは、ClickHouseはRocksetを上回るスケーラビリティ、インジェスショントラフプット、クエリパフォーマンス、およびコスト効率を実現しています。
他のデータシステムとの統合に関しては、ClickHouseにはRocksetを超える広範な機能があります。
RocksetとClickHouseの両方は、クラウドベースの製品と関連するサポートサービスを提供しています。 Rocksetとは異なり、ClickHouseにはオープンソース製品とコミュニティがあります。 ClickHouseのソースコードはgithub.com/clickhouse/clickhouseで見つけることができ、執筆時点で1,500人を超える貢献者がいます。 ClickHouse Community Slackには、7,000人以上のメンバーが経験やベストプラクティスを共有し、問題に対する支援をしています。
この移行ガイドはRocksetからClickHouse Cloudへの移行に焦点を当てていますが、ユーザーはオープンソース機能に関するその他のドキュメントも参照できます。
Rocksetのキーポイント
まず、Rocksetのキーポイントを見て、ClickHouse Cloudでの同等の機能(存在する場合)を説明します。
データソース
RocksetとClickHouseの両方が様々なソースからデータのロードをサポートしています。
Rocksetでは、データソースを作成し、そのデータソースに基づいて_コレクション_を作成します。 イベントストリーミングプラットフォーム、OLTPデータベース、クラウドバケットストレージに対する完全管理された統合があります。
ClickHouse Cloudでは、完全管理された統合の同等物はClickPipesです。 ClickPipesはイベントストリーミングプラットフォームとクラウドバケットストレージから継続的にデータをロードすることをサポートしています。 ClickPipesはデータを_テーブル_にロードします。
インジェスト変換
Rocksetのインジェスト変換は、Rocksetに入ってくる生データをコレクションに保存する前に変換することができます。 ClickHouse CloudでもClickPipesを通じて同様のことができ、ClickHouseのMaterialized View機能を使用してデータを変換します。
コレクション
Rocksetでは、クエリをコレクションに対して実行します。ClickHouse Cloudでは、クエリをテーブルに対して実行します。 どちらのサービスでも、クエリはSQLを使用して実行されます。 ClickHouseは、データを操作および変換するためのSQL標準の関数に加えて、さらなる関数を追加しています。
クエリ ラムダ
Rocksetは、専用のRESTエンドポイントから実行できる名前付きのパラメータ化されたクエリであるクエリ ラムダをサポートしています。 ClickHouse CloudのクエリAPIエンドポイントは同様の機能を提供しています。
ビュー
Rocksetでは、SQLクエリで定義された仮想的なコレクションであるビューを作成できます。 ClickHouse Cloudはさまざまなビューをサポートしています:
- 通常のビュー はデータを保持しません。クエリ時に別のテーブルからの読み取りを行います。
- パラメータ化されたビュー は通常のビューと似ていますが、クエリ時に解決されるパラメータと共に作成できます。
- Materialized View は対応する
SELECT
クエリによって変換されたデータを格納します。関連するソースデータに新しいデータが追加されたときにトリガーとして機能します。
エイリアス
Rocksetのエイリアスは、複数の名前をコレクションに関連付けるために使用されます。 ClickHouse Cloudでは、同等の機能はサポートされていません。
ワークスペース
Rocksetのワークスペースは、リソース(例:コレクション、クエリラムダ、ビュー、およびエイリアス)および他のワークスペースを保持するコンテナです。
ClickHouse Cloudでは、完全な分離を実現するために異なるサービスを利用できます。 また、異なるテーブル/ビューへのRBACアクセスを簡素化するためにデータベースを作成することもできます。
設計上の考慮事項
このセクションでは、Rocksetのキーフィーチャーをいくつか確認し、ClickHouse Cloudを使用する際の対応方法を学びます。
JSONサポート
Rocksetは、Rockset固有の型をサポートする拡張版JSON形式をサポートしています。
ClickHouseでJSONを操作するための方法はいくつかあります:
- JSON推論
- クエリ時のJSON抽出
- インサート時のJSON抽出
ユーザーケースに最適なアプローチを理解するには、JSONに関するドキュメントをご覧ください。
さらに、ClickHouseにはまもなく半構造化カラムデータ型が追加されます。 この新しい型は、RocksetのJSON型が提供する柔軟性をユーザーに提供するはずです。
フルテキスト検索
RocksetはSEARCH
関数でフルテキスト検索をサポートしています。
ClickHouseは検索エンジンではありませんが、文字列検索用のさまざまな関数を持っています。
ClickHouseはまた、多くのシナリオで役立つブルームフィルターをサポートしています。
ベクトル検索
Rocksetには類似度インデックスがあり、ベクトル検索アプリケーションで使用される埋め込みをインデックスするために使用できます。
ClickHouseも線形スキャンを使用してベクトル検索を実行できます:
ClickHouseにはベクトル検索類似度インデックスもありますが、このアプローチは現在実験中であり、新しいクエリアナライザーとはまだ互換性がありません。
OLTPデータベースからのデータのインジェスト
Rocksetの管理された統合は、MongoDBやDynamoDBなどのOLTPデータベースからのデータのインジェストをサポートしています。
DynamoDBからデータをインジェストする場合は、こちらのDynamoDB統合ガイドを参照してください。
コンピュート・コンピュート分離
コンピュート・コンピュート分離は、リアルタイム分析システムにおけるアーキテクチャデザインパターンで、突然のデータ流入やクエリに対応できるようにするものです。 単一のコンポーネントがインジェストとクエリの両方を処理する場合、クエリの急増があるとインジェスト待機時間が増加し、データ流入が急増するとクエリ待機時間が増加します。
コンピュート・コンピュート分離は、この問題を回避するためにデータインジェストとクエリ処理のコードパスを分離します。この機能は2023年3月にRocksetで実装されました。
この機能は現在ClickHouse Cloudで実装中であり、プライベートプレビューに近づいています。サポートに連絡して有効化してください。
無料移行サービス
Rocksetユーザーにとってストレスの多い時期であることを私たちは理解しています - 誰も短期間で本番データベースを移行したいとは思わないでしょう!
ClickHouseがあなたに適しているかもしれない場合、移行をスムーズに行うために無料移行サービスを提供しています。