データベース・オブジェクトストレージ
HexabaseではSQLを利用できますか?
A. HexabaseではSQLを利用できません。データレポートに専用のクエリービルダーがあり、こちらで検索・並び変え・グルーピング・集計などが可能です。
トランザクションは可能ですか?
A. Hexabaseでは、次のAPIでトランザクションをサポートしています。
このAPIを使うことで、複数データベースの作成・更新が可能になります。 トランザクション機能の使い方は、こちらのページを参照してください。
フィールドへの入力に、他のマスタから選択できますか?
A. データベース参照型のフィールドで利用できます。
Hexabaseで排他制御は可能ですか?
A. 可能です。詳しくはアイテム更新の排他制御をご覧ください。
Hexabaseでロック処理は可能ですか?
A. 現在、サポートしておりません。
画像ファイルなどを保存できますか?
A. 添付ファイル型フィールドを利用して、オブジェクトストレージに保存します。
添付ファイル型の保存容量はどのくらいですか?
A. プランによって異なります。詳しくは利用プラン・価格のオブジェクトストレージをご確認ください。
オブジェクトストレージはどのような用途で使用するのでしょうか?
A. 主に添付ファイル・画像ファイルの保存に使用します。
例えば入力画面で添付ファイルを保存する場合に、その添付ファイルは別のストレージに入る仕組みになっています。
現在、プランごとに上限を設定しております。上限を超えた場合は従量課金となります。詳しくは利用プラン・価格のオブジェクトストレージをご確認ください。
独自のデータベースエンジンですが、処理性能はどのくらいですか?
A. 処理性能は公開していませんが、100万件規模のテストデータで性能評価を行っています。
既存システムのデータベースからデータを移行するツールはありますか?
A. 現在のところご用意しておりません。
GraphQLを利用できますか
Hexabaseでは、新しい機能として、APIのGraphQL対応を進めています。
現在はアルファ版で、仕様などは変更される可能性があります。
利用を希望する場合はお問い合わせください。
従来のRDBの設計手法は有効ですか?どのように設計すれば良いですか?
A. 原則的な設計手法としては、RDBと近い手法で問題ありませんが、HexabaseならではのDB構成をご理解いただけると、より効率的なシステム開発が可能となります。
例えば、トランザクションテーブルに紐づく複数のマスターテーブルを参照する場合は、データベース参照型フィールドを利用しリンクさせたほうが簡単で効率的です。
複数のトランザクションテーブルに関連をつけていくケースでは、関連テーブルの数やデータ件数に配慮した設計をしていく必要があります。この場合、API(CreateItemやUpdateItem)でトランザクション担保しながらリレーションをもつ関連Itemを登録・更新する方法と、事前の関連設定により自動でデータを紐づける「自動リンク」機能を利用する方法があります。
前者はトランザクション担保されますが、後者は非同期で実行され、データリンクが作成されるまでに数秒~数分のタイムラグが発生する場合があります。少量の関連アイテムの更新なら前者、数千件~数万件を超えるような明細データを更新する場合は後者を選択するケースがあります。
いずれも利用ケースに応じた選択が必要となります。
複数のトランザクションテーブルに関連をつける場合、どのように実現すればいいでしょうか。
A. 次のAPIオプションを利用ください。
- 1対多・多対多のトランザクション Item Actions - ExecuteAction, ExecuteBatchAction
- マスタコードからマスタ値を引用する場合 LookupField - include_lookups=true
マスタのデータを関連テーブルにも定義した場合、マスタのデータ更新されたタイミングで関連テーブルも更新可能でしょうか?
A. マスターのデータをデータベース参照設定しているのであれば、マスターのデータを更新すれば、参照しているテーブルも更新されます。
データベースのチューニングは、どのようにおこないますか?開発者・システム運用者が利用可能なチューニング方法はありますか?
A. Hexabaseの運用は基本的に当社がおこなっています。大規模運用を想定する場合は、事前にご相談ください。
データベースのチューニングについては、データベース設定時にインデックスの指定が可能です。インデックスはMongoDBの機能を利用しており、インデックスのメリット・デメリットは、通常のRDBと同様に大量ログインや大量トランザクションに有効です。
ただし、複合キーはサポートしていません。
基本的に、検索キーにはインデックスを指定しておくことをオススメします。