メインコンテンツまでスキップ

データベース関連の仕組み

ここでは、Hexabase でデータベース間を関連付ける仕組みについて解説します。

データベース関連とデータリンク

Hexabaseのデータストアはリレーショナルデータベースのように操作できますが、実際の仕組みではアイテムをmongoDBのドキュメントとして格納、リレーションをArangoDBで管理しています。そのために、Hexabaseはリレーションをあらわす次の実体データを持っています。

  • データベース関連:データベース間の関係性を定義する
  • データリンク:関連を持つアイテムへのリンク

データストアの仕組み

関連・リンクはそれぞれ方向を持っており、関連元データベース ⇒ 関連先データベースとして設定します。双方向の関連を持たせるには、それぞれのDBで設定が必要です。

関連先データベースは、アプリケーションをまたいで設定できます。これは、次のようなケースで利用できます。

  • 共通マスタアプリケーションがマスタデータを持ち、各業務アプリケーションで参照する
  • 販売アプリケーションのデータを仕入アプリケーションで参照する

RDBMSとHexabaseデータストアの比較

---RDBHexabase
DB設計関係モデル(E-R図)関係モデル(E-R図)
リレーション実体データを持たない実体データを持つ
検索SELECT文のJOINでテーブルを実行時に結合。テーブル構造によってはパフォーマンス劣化データリンクで事前に結合。検索時はデータリンクをたどるため高速
更新レコードのみを更新し、リレーションは更新不要 > ACIDを担保しやすいアイテム更新時にデータリンクも更新 > 更新に時間がかかる場合がある
トランザクションあり主要なAPIでトランザクションをサポート:CreateItem API、UpdateItem API、ExecuteAction API

RDBMSとHexabaseデータストアの比較

データベース関連の設定手順

データベース関連の設定は、次の手順でおこないます。

データベース関連の設定

  1. 案件一覧のデータベース設定を呼び出す
  2. 「データベース関連の設定」タブを開く
  3. 「データベース関連」で「案件明細」を指定する

データベース設定で関連を設定する

※ データベース関連のさらに詳しい設定手順は、管理画面リファレンス > データベースの関連付けで説明しています。

APIにより関連アイテムを操作する

関連アイテムは次のAPIで操作できます。

アイテム作成・更新時に関連アイテムを指定する

各APIのrelated_ds_itemsオプションで関連アイテムを指定します。

アイテム作成・更新時に関連アイテムを指定する

関連アイテムとのデータリンクを追加・更新・削除

管理画面で関連アイテムを操作する

データベース関連を設定すると、アイテム詳細画面の『関連データ』タブに、関連するアイテムの一覧が表示されます。ここで、関連アイテムの追加・更新・削除が可能です。

関連データの表示

関連ページ