データ収集はデータ管理の基礎となるプロセスであり、データソース(データベース、ログファイルなど)からデータを取得し、OceanBaseデータベースに転送することを指します。データ収集のトリガーメカニズムとデータ範囲に基づき、主に2つのタイプに分類されます:データサブスクリプション(増分移行)とファイルからのデータインポートです。
データサブスクリプション
データサブスクリプション(Data Subscription)、すなわち増分移行は、データソースの増分変更を継続的に取得する技術です。その中核となるのは変更データキャプチャ(CDC, Change Data Capture)であり、データの変更(追加、更新、削除)をリアルタイムまたは準リアルタイムでターゲットシステムに転送します。主な目的は以下の通りです:
- 低遅延同期:ターゲットシステムとソースシステムのデータ一貫性を確保します。
- リソース効率化:全量データではなく、差分データのみを転送します。
- 柔軟な拡張性:データウェアハウスや分析プラットフォームなど、複数のターゲットシステムをサポートします。
代表的なユースケース:
- リアルタイム分析(例:注文システムからBIプラットフォームへのリアルタイムデータ同期)
- 災害復旧・マルチアクティブアーキテクチャ(例:データベースから災害復旧クラスタへの増分レプリケーション)
- システム間のデータガバナンス(例:MySQLデータをHiveにサブスクライブしてオフライン分析を実施)
詳細については、データサブスクリプションの概要を参照してください。
ファイルからのデータインポート
OceanBaseデータベースは、多様で柔軟なデータ取り込み方法を提供しており、さまざまなデータソースのデータをデータベースにインポートできます。異なるインポート方法は異なるシナリオに適用されるため、データソースの種類やビジネスシナリオに応じて、適切なデータ取り込みツールを選択してデータを取り込むことができます。シナリオが複雑で多様化する中、複数のインポート方法を組み合わせて使用することも可能です。
データ取り込み時には、データソースやデータファイル形式に加え、データ取り込みツールのサポート状況も考慮する必要があります。ビジネスシナリオにおいてデータソースとデータファイル形式が既に明確になっている場合は、データソースを起点とし、データ取り込みツールと組み合わせて取り込み計画を設計する必要があります。業務で使い慣れたデータ取り込みツールがある場合は、そのツールのサポート状況を考慮し、ビジネスシナリオに照らして取り込みの実現可能性を検討する必要があります。
主なインポート方法
- LOAD DATA 構文:大規模データのインポートに適しており、CSV、ORC、Parquetなどの形式をサポートします。
- OBLoader:OceanBaseが公式に提供するデータインポートツールで、多様なファイル形式の一括インポートをサポートします。
- 外部テーブル:データレイク分析シナリオに適しており、データを実際にデータベースにインポートする必要はありません。
- INSERT SQL:少量データの書き込み操作に適しています。
- サードパーティツール:OMS、DataX、Flink、Canalなど、異なるシナリオでのデータインポートをサポートします。
サポートされているデータソース
- ファイルシステム:ローカルファイル、オブジェクトストレージ、HDFSなど
- データベース:MySQL、Oracle、PostgreSQLなどのリレーショナルデータベース
- ビッグデータプラットフォーム:MaxCompute、StarRocks、Doris、HBaseなど
- リアルタイムデータストリーム:Kafka、Flinkなどのストリーミングデータ
詳細については、データインポートの概要を参照してください。