データを1ヵ所に集めることは意外と困難……解決策は?
構造化データはもちろん、非構造化データや半構造化データを含む様々なデータを蓄積し、誰もが必要なデータをタイムリーに得られるようにしたいと考えている企業は多い。そのためのデータ基盤となるデータレイクやデータウェアハウスなどは、技術の進化、クラウドの登場などで比較的容易に実現できるようになった。大量のデータを蓄積するための基盤は、クラウドのデータ分析基盤サービスやオブジェクトストレージを利用すれば、初期費用を抑えて構築することも可能だ。
しかし、実際にあらゆるデータを1ヵ所に集めることは、実はそれほど簡単とはいえない。複数のデータソースから、バッチ処理などで物理的にデータを移動させる必要があるが、この作業には手間がかかる。データソースごとにデータを取得するためのバッチ処理ジョブを作り、それを適切に運用しなければならない。データソース側の制約に合わせ、データの整合性を確保するためのきめ細かな制御も必要となる。さらに、パブリッククラウド間でデータを移動すれば、移動させるデータ量に応じて別途コストがかかることも少なくない。
このように物理的にデータを1ヵ所に集めるには、相当の手間やコストがかかってしまう。この課題に対し「データ仮想化」という解決策を提唱するのはCData Software Japan 代表社員 職務執行者の疋田圭介氏。「データ仮想化は、物理的なデータ統合を必要とせず、既存のデータベースやシステムに分散したデータをそのまま活用できます」と話す。その特性から、システム連携にかかる時間やストレージ、インフラコストを大幅に削減可能だ。データソースのデータ形式が異なっていても、仮想データベース上で定義して統一的なビューを作成すれば、シームレスなデータ分析ができる。これにより、迅速な意思決定や新たなビジネスチャンスの創出に貢献できるのだ。
データ仮想化は、データの構造だけを定義した論理的なデータアクセス層を用意し、データの要求があった場合にのみデータソースに接続してデータを取得する。データ構造などの設計変更が難しいETLを利用した従来のデータ統合に対し、データ仮想化はデータの追加や変更にも柔軟に対応できる。さらに、定期的に実施されるバッチ処理と違い、データソースでのタイムラグがないため、リアルタイムな分析ができることもメリットだ。
一方、データ仮想化を利用するとき、データソースへ都度アクセスするためにオーバーヘッドが生じてしまい、物理データベースと比べると処理速度が遅くなってしまう。また、仮想データベース自体が単一障害点となる可能性もあり、障害発生時には影響範囲が広がるリスクも考慮しなければならない。
そこで注目を集めているのが「データファブリック」という管理手法だ。これはアプリケーションなどを問わずにデータを一元管理し、リアルタイム性を失うことなくデータの利活用を目指すというもの。ETLを利用した従来のデータ統合が苦手とするアクセス制御など、データガバナンスを強化しながら組織全体のデータを効率的に集約できるため、担当者の負担軽減にもつながるだろう。もちろん、それだけに実現のハードルは高く、多くの工数・リソースを要してしまう点も忘れてはいけない。
データ仮想化と、ETLを利用した従来のデータ統合の“いいとこ取り” 「次世代データ統合」とは
仮想データベースのソリューションは、ここ最近登場した新しいものではない。たとえば、BI(Business Intelligence)ツールにコネクタがあり、仮想のテーブルが定義されていて、裏でSaaSにデータを取りにいくような構成もデータ仮想化の一種だ。また、多くのリレーショナルデータベースの製品にもデータリンク機能があり、空のテーブルを定義しておくことで、アクセスがあった際にデータを取得するものも存在する。
もちろん、一部の小規模データの取得だけを仮想データベースで行うならば、特に問題は発生しないだろう。また、データの取得頻度がそれほど多くない場合も問題は生じないかもしれない。しかし、大規模なデータを仮想データベースで取得するような構成では、パフォーマンスに問題が生じてしまう。データソースが多様な場合には、BIツールなどにコネクタが用意されていないこともあり、別途それを用意する手間が必要なケースも考えられる。多くのデータソースがあればあるほど、コネクタを構築することは大変で、アクセス制御なども複雑化しかねないのが現状だ。
こうした課題を解決する新たなデータ仮想化として登場したのが、疋田氏の所属するCData Software Japan(CData)の新製品「CData Virtuality」だ。「CData Virtualityが従来のデータ仮想化と最も異なる点は、“バイモーダル”なことです。ETLを利用した従来のデータ統合、データ仮想化の両方に対応できます」と疋田氏。ETL/バッチ処理によるデータの取得、データ仮想化のリアルタイム性といった双方のメリットを享受できるという。たとえば、必要なデータだけを物理的に移動させることで、データベースサーバーやストレージのコストも最適化できる。
「容量の大きなデータを分析したいとき、データ仮想化を使うことは必ずしも最適な選択肢ではありません。手元にデータリポジトリを用意し、データの加工などはバッチ処理で行うほうが効率的です」と疋田氏は語る。仮想データベースでは、複数ソースにまたがるデータをJOINして分析するなど、工程が多くなるほどレスポンスが悪くなるだろう。一方で、セキュリティやアクセスコントロールなどは「作り込み方次第では実現可能な場合もあり、物理と仮想のどちらが有利かといったことは一概に言えません」と指摘する。
ETLを利用した従来のデータ統合、データ仮想化両方のメリットを兼ね備えたCData Virtualityは、SQLでアクセス可能な仮想テーブルで構築されている。これを使えば、データウェアハウスのようなデータ統合基盤を構築できるだけでなく、分析用途に合わせたデータマートも簡単に実現できる。
また、データの同期に関してはオプションが用意されており、ETLパイプライン経由でデータを取得して手元に保持するのか選択可能だ。「APIの制限などで1度にすべてのデータを取得できない場合でも、分割処理によって問題なく取得できます」と疋田氏。ETLオプションで取得したデータは、様々なデータリポジトリに格納でき、それらをCData Virtuality経由で活用していく。
これまでのようにデータウェアハウスやデータレイクから複製したデータを保管するためのストレージが不要になるだけでなく、データパイプライン構築にあたっていたエンジニアの工数削減にもつながるため、データ活用における費用対効果を高められる。生成AIなどを背景に需要が急速に高まる中では、データの収集から管理までのコストを容易に削減できるメリットは大きい。
なお、仮想データベースのデータ構造となるメタデータは、外部のメタデータツールやデータガバナンスツールなどとも連携できるようになっている。そのため、CData Virtualityを用いることで、メタデータを集中管理することも可能だ。こうした機能があることで、「ハイエンドのデータ活用基盤においてコスト面も運用管理の工数も大きく効率化できます」と疋田氏は自信を見せる。
「データのためのデータ」で分析の多様性に対応
CDataは、これまで世界で最も豊富なデータソースに対応できるデータコネクタのベンダーとして名を馳せてきたが、製品やサービス同士をつなぐという“裏方”的な存在だった。新たなCData Virtualityは、このポジショニングを変革する新製品となることが期待される。この機能はドイツのスタートアップ企業であったデータ仮想化ソリューションのData Virtualityを買収した結果だ。
CData Virtualityで利用するデータソースとの接続部分には、当然ながら「実績あるCDataの世界一のコネクタを利用しています」と疋田氏。データ仮想化ソリューションとコネクタは極めて相性が良いため、この組み合わせでデータ活用基盤としての価値が大きく向上すると言う。また、疋田氏はメタデータ、いわゆる「データのためのデータ」が極めて重要だと主張する。「データを扱いやすくするためにメタデータは重要な存在です。メタデータがしっかり管理されていることで分析の多様性にも対応でき、データのガバナンスも確保できます。その結果、ユーザーは独自の価値あるインサイトが得られるようになるのです」と主張する。
CDataは、長い間データをつなぐためのコネクタを扱ってきたからこそ、メタデータの重要性を深く理解している。だからこそ、その価値を高めることとなる製品の買収を進め、自分たちの最大の優位性であるコネクタと融合して提供するのだ。過去に仮想データベースは何度か注目されたことがあったが、その度に性能や接続先の問題、データガバナンスの問題などが障壁となり、広く普及するには至らなかった。コネクタで圧倒的な実績のあるCDataがこの“次世代データ統合”を提供することで、データ仮想化が改めて市場で存在感を示すことになるかもしれない。