どんなデータベースがあるの?
2017年のdb tech showcaseでもたくさんのデータベースのテクノロジーを紹介させて頂きました。従来からあるリレーショナルデータベースを始めとしてHadoopのような分散型でスケールアウト可能なデータマネージメントシステム、NoSQL系のデータベース、最近では、時系列データベースやGPUデータベースまで多岐に渡ります。
最近、これだけデータベースの種類が増えている理由の1つは、IoTのような、従来では捨てられていたようなデータを大量に処理する基盤が必要になってきたことがあるように思います。では、このように多岐に渡るデータベースでは、それぞれ別のデータを関係無く保持しているのでしょうか?そうでは無いと思います。同じデータを用途によって異なるデータベースに配置することも多くあります。従来からあるDWHでも、基幹システムのデータを分析システムへ取り込むことを行っていました。しかし、その取り込みは、夜間バッチやCSVファイルをデータローダーによってデータ連携を行っているケースがほとんどでした。
分析データ容量も多くなく、データの鮮度(分析対象データの時間的新しさ)が問題にならなければ、従来の手法でも大丈夫です。しかし、昨今のビックデータはIoTなどから生まれるデータが分析の対象となっており、1週間前や前日のIoTデータの分析を行っても分析自体に意味が無いケースが多くなっています。今発生していることに対して素早くアクションを起こすことがビジネスで重要なポイントになりつつあります。
では、どうすれば良いでしょうか?
必要なデータを適切なデータ処理基盤(データベース)に素早く取り込み、結果を得る。このために最近必要性が高まっているのがレプリケーションツールです。レプリケーションツールは、昔から存在していましたが、その用途はDR(災対対策)だったり処理分散のためでした。しかし、最近データレプリケーションツールは、多岐に渡るデータ分析基盤間でのリアルタイムのデータ連携のために使用されることが急速に増えています。
データレプリケーションツール「Attunity Replicate」
弊社でもデータレプリケーションツール「Attunity Replicate」を扱っています。従来型のデータ連携方式と比較すると、データ連携をリアルタイムに実行することで、データ連携の遅延を小さくすることが出来ることと、データ連携の実装が容易に出来ることが大きな特徴です。
Attunity Replicateは、ロジカルレプリケーションと呼ばれる手法でデータ連携しますが同様の製品としては、Oracle社の「GoldenGate」やQuest社の「SharePlex」などがあります。Attunity Replicateは他社製品と比較してサポートしているデータベースが非常に多いことと、データベースへのエージェントインストールが不要で負荷が低いことが大きな特徴です。
では、このように異なるデータベース間でデータを連携することが出来るのはどうしてでしょうか?
この仕組みを次回以降のブログで少しご紹介したいと思います。
【異なるデータベース間のデータ同期が出来るわけ】連載一覧
- どんなデータベースがあるの
- データレプリケーションツール「Attunity Replicate」
- ロジカルレプリケーションの仕組み
- Oracleのトランザクションログに含まれる情報
- LogMinerを使用してトランザクションログを覗く
- LogMiner検証手順
- V$LOGMNR_CONTENTSを参照する
- SUPPLEMENTAL LOGGING
- V$LOGMNR_CONTENTSを参照する(追加設定後)
- Oracle以外でも同じか?