3.2.6. JDBC 外部デバイスレジストリーのデプロイ

外部データベースを使用するには、データベースインスタンスを作成し、必要なテーブルとインデックスを作成する必要があります。

重要

技術的には、JDBC ドライバーを提供し、SQL をサポートするデータベースであればどれでも使用できるはずですが、現時点では、PostgreSQL のみが AMQ Online でサポートされています。明示的に言及されていない限り、このドキュメントは PostgreSQL を使用していることを前提としています。そうでない場合は、指定のコマンドと SQL ステートメントを調整する必要がある場合があります。

JDBC ベースのデバイスレジストリーを設定するには、次の手順を実行する必要があります。

3.2.6.1. データストレージモデルの選択

JDBC ベースのデバイスレジストリーは、次のデータモデルをサポートしています。

  • フラットな JSON
  • 階層的な JSON
  • プレーンテーブル

JSON ベースのデータモデルには、ロックや外部キーは必要ありません。ただし、JSONB の PostgreSQL サポートに依存しています。フラットな JSON モデルは、さまざまな種類の認証情報を格納する場合により柔軟です。階層的な JSON モデルは、フラットな JSON モデルよりも優れたパフォーマンスを発揮しますが、このパフォーマンスを実現するには、認証情報の種類ごとに専用のインデックスが必要です。

プレーンテーブルモデルは、JSON 固有のデータベースサポートを必要としませんが、外部キーでリンクされた複数のテーブルを必要とし、変更時にロックのサポートが必要になります。反対に、ほとんどの場合、読み取りパフォーマンスが向上します。

デフォルトの選択は、階層的な JSON モデルです。

注記

後でデータモデルを変更すると、すべてのデータが失われるか、データを手動で移行する必要があります。