データ収集はデータ管理における基本的なステップであり、データソース(データベース、ログファイルなど)からデータを取得し、OceanBaseデータベースに転送するプロセスを指します。データ収集は、トリガーメカニズムや対象範囲に応じて、データサブスクリプション(増分移行)とファイルからのデータインポートという2種類に分類されます。
データサブスクリプション
データサブスクリプション(Data Subscription)、すなわち増分移行は、データソースの増分変更を継続的にキャプチャする技術です。その中核となるのは、変更データキャプチャ(CDC, Change Data Capture)であり、データの変更(追加、更新、削除)をリアルタイムまたは準リアルタイムでターゲットシステムに転送します。主な目的は以下の通りです。
- 低遅延同期:ターゲットシステムとソースシステムのデータの一貫性を確保。
- リソース効率化:完全データではなく差分データのみを転送。
- 柔軟な拡張性:複数のターゲットシステム(データウェアハウス、分析プラットフォームなど)に対応。
代表的な利用シーン:
- リアルタイム分析(例:注文システムからBIプラットフォームへのリアルタイムデータ同期)。
- ディザスタリカバリ(DR)およびアクティブ/アクティブ構成(例:データベースからDRクラスタへの増分レプリケーション)。
- システム間のデータガバナンス(例: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などのストリーミングデータ
詳細については、データインポートの概要を参照してください。