グラフ・データベースは、開発者が組織の新しいユースケースを探求するための道筋を作りつつあります。
本記事では、グラフデータベースでできること、そしてグラフ・データベースが業務と分析の両方のワークロードをどのように強化するのかについて、基本的な理解を深めていきます。
関連ブログ:グラフデータベースについて理解を深めよう
Gartner社のリタ・サラム氏によると、グラフデータベースへの関心は驚くほどのスピードで高まっています。
同社は、「2025年までにデータと分析のイノベーションの80%がグラフテクノロジーを使って行われる」と予測しています。
さらに、2023年までに、グラフテクノロジーは世界の30%の組織の意思決定プロセスで役割を果たすようになると予測しました。
また、グラフデータベース市場自体が今後5年間、年平均成長率20%以上で成長するとの予測もあります。
では、この関心と成長の背景には何があるのでしょうか。
細かくパーソナライズされ、高度に自動化された世界では、単なる指標ではなく関係性を理解することに違いがあります。
グラフデータモデルは、データ・ポイント(ノードまたは頂点として知られる)だけでなく、データ・ポイント間の関係(エッジとして知られる)も管理するという点でユニークです。
グラフデータベースでは、エッジは第一級の市民であり、データポイントと同じくらい重要です。
グラフデータモデルの非常に基本的な例を紹介しましょう。
この図では、3 つのノードがあり、2 つは Person(JohnとSally)、1 つは Book(グラフ・データベース)です。
エッジはノード間の関係を表します。
John “IS_FRIENDS_WITH” Sally、そしてそれぞれがグラフデータベースの本を “HAS_READ “しています。
どうですか、簡単でしょう?
グラフモデルのメリットのひとつは、モデルが何を表しているかが直感的にわかり、グラフを走査することで興味深い洞察を得られることです。
上記の例では、気の利いたプログラマーであれば、データとリレーションシップを別のデータベースに保存し、照会する方法を見つけ出すことができるでしょう。
しかし、より大きなグラフデータセットになると、この方法はあまり好ましくありません。
何百万もの頂点と何十億もの辺を見ているとしたらどうでしょうか。
ますます洗練され、大規模になっていくグラフデータセットには、グラフ・データ・モデルとグラフ・データベースだけで十分なのです。
グラフデータベースの役割
グラフデータベースは、何よりもまず、グラフデータの格納、管理、クエリ、トラバースを行います。
効果的かつ高性能であるためには、グラフデータ(頂点と辺)をグラフの走査に最適化された形式で格納できなければなりません。
そして、グラフデータベースは、グレムリンやサイファーのような、グラフ・データを効率的に検索・処理できるクエリー言語を使い、そのデータのクエリーをサポートする必要があります。
グラフ理論は数百年、グラフデータベースは1960年代から存在していますが、ACIDトランザクションやクラウド展開をサポートする最新のグラフデータベースが登場したのは2000年代半ばのことです。
それ以来、その利用は加速し、ユースケースの数も種類も大幅に増えています。
大まかに言えば、グラフデータベースは、分析的ユースケースと運用的ユースケースの2つに大別されます。
分析グラフのユースケース
分析グラフのユースケースは、ビジネスインテリジェンス(BI)の機能を果たすものであり、グラフデータモデルの直感的な性質を利用して、ビジネスアナリストが人、モノ、イベントなどの関係を探索できるようにします。
通常、比較的静的なグラフデータセットに対して対話的に行われ、OLAP(オンライン分析処理)グラフワークロードとも呼ばれます。
BIチームがグラフデータに可視化ツールを適用して、グラフデータセットをトラバースまたはクエリし、それらの関係性について洞察を得ることができます。
分析グラフの最も一般的なユースケースには、
- ヘルスケアにおける薬物相互作用を予測するナレッジグラフ
- データサイエンティストがデータから複雑なパターンを発見するためのデータ探索と可視化
- データルーティングを最適化するためのテレコムにおけるネットワーク分析
などがあります。
運用グラフのユースケース
オペレーショナルグラフのユースケースは、高度にダイナミックなトランザクション環境に関連しています。
- アドテクやマーテックにおけるアイデンティティ解決
- バンキングにおけるリアルタイムの不正検知
- eコマースやテレコム
- オンラインバンキングにおけるリアルタイムのパーソナライゼーションやレコメンデーション
など、ミッションクリティカルなオペレーション上の問題を解決します。
これらのユースケースはOLTP(オンライントランザクション処理)グラフユースケースと呼ばれることが多いです。
その理由は、そのリアルタイム性と、データベースの頻繁な読み出し、書き込み、更新の中で基礎となるデータセットの量が多いことが挙げられます。
グラフ・データベースの探求
グラフデータモデルの本質を理解すると、グラフアプリケーションの可能性があちこちに見えてきます。
グラフデータベースを採用する主なメリットは、グラフデータモデルとAerospike Graphのような高性能でスケーラブルなグラフデータベースによって可能になるエキサイティングな新しいユースケースです。
オペレーショナルグラフデータベースは、通常、接続されたデータへの迅速なアクセスや操作を必要とするリアルタイム、トランザクション、インタラクティブなユースケースに使用されます(OLTP)。
分析型グラフデータベースは、複雑なデータ分析、ナレッジグラフ、静的データのグラフ処理を伴うデータ探索タスクに適しています(OLAP)。
しかし、これらのカテゴリの区別は曖昧であり、いくつかのグラフデータベースは、運用と分析の両方のユースケースに効果的に使用することができます。
Aerospike Graphは、運用と分析の両方のユースケースに対応できる、高いスケーラビリティと低レイテンシのグラフデータベースを提供するためのコードをついに解読しました。
数十億の頂点と数兆のエッジに対して、ミリ秒単位のマルチホップグラフクエリを極めて高いスループットで実行することができます。
私たちはこの製品のベンチマークを行い、他のソリューションの数分の一のインフラで、5ミリ秒以下のレイテンシーで毎秒10万以上のクエリのスループットを示しました。
Aerospike Graphは、運用グラフのユースケースの課題に対処するために特別に設計されています。
運用グラフのユースケースの一般的な例としては、Signal社(現TransUnion社)で使用されているようなIDグラフ、PayPal社で展開されている高度な詐欺検出、Adobe Experience Platformにおける大量のパーソナライゼーションなどがあります。
まずは無料で試してみませんか
Aerospike Graphについてもっと知りたい、チュートリアルをチェックしたい、今すぐ製品を試してみたいという方は、ぜひグラフの世界へ一歩踏み出してみてください。
こちらより無料トライアルをお試しいただけます。
このブログは、2023年10月20日のブログ「What is behind the surging interest in graph databases?」の翻訳です。