マルチモデルデータベース「ArangoDB」に要注目ArangoSearchとGeoJSONサポート

数あるNoSQLデータベースの中で特異な位置を占めるのが、複数のデータモデルをサポートする「ArangoDB」だ。

2019年03月19日 08時00分 公開
[Adrian BridgwaterComputer Weekly]

 ArangoDBはネイティブマルチモデルデータベースだ。「ArangoDB Community Edition」はC++でコーディングされており、オープンソースライセンス(Apache License 2.0)で利用できる。本稿では、開発者向けトランザクションデータベースとしてのコアバージョン3.4に注目する。このリリースは開発者にとってどのようなものなのか。

 このソフトウェアエンジニアリングの役割は、1つのテクノロジーと1つのクエリ言語を使って「複数のデータモデル」を操作する手段を提供することだ。

 「ArangoDB 3.4」で強化されたのが「ArangoSearch」だ。ArangoDB独自のクエリ言語「AQL」を使って、この機能をトラバーサルや結合(join)と組み合わせると、ArangoDBが「データ」の取得ツールから「情報」の取得ツールへと変わる。

 では、マルチモデルデータベースとは一体何だろう。

 TechTargetは以下のように説明している。

 「マルチモデルデータベースはスコープを広げたデータ処理プラットフォームで、データベース内の情報を編成して並べ替える方法についてのパラメーターを定義できる。複数のモデルを1つのデータベースに組み込めるため、複数のデータベースシステムを導入する必要なく、アプリケーションのさまざまな要件を満たせる」(訳注)

訳注:ArangoDBに限定すると、3つのデータモデル(ドキュメント、キーバリュー、グラフ)をサポートするNoSQLデータベースであるという意味。「MongoDB」ならドキュメント、「Neo4j」ならグラフのように、NoSQLデータベースは一般的に単一のデータモデルに特化している。

 ArangoSearchは、ブール型の検索モデルと汎用(はんよう)ランキング検索モデル(ベクトル空間モデルなど)を組み合わせる。ArangoSearchは、検索エンジンと統合レイヤーの2つのコンポーネントで構成されている。検索エンジンはインデックスの管理、クエリ、スコアリングを担当する。統合レイヤーはエンドユーザーに使いやすい検索機能を提供する。

 開発元によると、ArangoSearchはArangoDBの3つのデータモデル全てと組み合わせることができるという。グラフデータベース機能と連携して使用すると、検索結果を利用して、例えば詐欺防止の強化、個人に合わせたレコメンデーション、精密医療の簡素化などが可能になる。

 このソフトウェアのリリースノートには次のように記載されている。「特殊な実体化ビューを使用して、複数のコレクションに対する全文検索を一度に実行できる。ビュー定義内では、コレクション全体または個別のフィールドを指定できる。こうした指定は、一般的なテキストアナライザーを一つまたは複数使って転置インデックスで対応する必要がある。AQLで表現する検索クエリは、複数のスコアラー(TFIDFやBM25)を組み合わせて結果をランク付けできる」

 ユーザーは、関連性に基づくマッチング、フレーズとプレフィックスによるマッチング、複雑なブール式による検索、クエリ時間関連のチューニングを実行し、複雑なトラバーサル、ジオクエリなどのアクセスパターンを情報検索技法と組み合わせることができる。

 ArangoDB 3.4は、「GeoJSON」と非空間属性をフルサポートする。GeoJSONとは、シンプルな地理機能を表すために設計されたオープンスタンダードフォーマットだ。このサポートには、マルチポリゴンやマルチラインストリングなど、全てのジオプリミティブが含まれている。

Copyright © ITmedia, Inc. All Rights Reserved.

ITmedia マーケティング新着記事

news132.jpg

ハロウィーンの口コミ数はエイプリルフールやバレンタインを超える マーケ視点で押さえておくべきことは?
ホットリンクは、SNSの投稿データから、ハロウィーンに関する口コミを調査した。

news103.jpg

なぜ料理の失敗写真がパッケージに? クノールが展開する「ジレニアル世代」向けキャンペーンの真意
調味料ブランドのKnorr(クノール)は季節限定のホリデーマーケティングキャンペーン「#E...

news160.jpg

業界トップランナーが語る「イベントDX」 リアルもオンラインも、もっと変われる
コロナ禍を経て、イベントの在り方は大きく変わった。データを駆使してイベントの体験価...