すべてのプロダクト
Search
ドキュメントセンター

PolarDB:ZomboDB

最終更新日:Jun 28, 2024

ZomboDBはPostgreSQL拡張プラグインです。 ネイティブPostgreSQLによって提供されるアクセス方法をサポートします。 また、Elasticsearchを使用した強力なテキスト検索および分析機能も提供します。

背景情報

ZomboDBは、リレーショナルデータをクエリするためのクエリ言語の完全なセットを提供します。 ZomboDBインデックスを作成することもできます。 この場合、ZomboDBはリモートのElasticsearchインデックスを引き継ぎ、テキスト検索からのトランザクション的に正しいクエリ結果を保証します。

ZomboDBでは、同期や通信の問題を処理する必要なしにElasticsearchを使用できます。

ZomboDBプラグインの作成と削除

  • ZomboDBプラグインを作成します。

    CREATE EXTENSION zombodb;
  • ZomboDBプラグインを削除します。

    DROP EXTENSION zombodb;

  1. テーブルを作成します。

    CREATE TABLE products (
        id SERIAL8 NOT NULL PRIMARY KEY,
        name text NOT NULL,
        keywords varchar(64)[],
        short_summary text,
        long_description zdb.fulltext,
        price bigint,
        inventory_count integer,
        discontinued boolean default false,
        availability_date date
    );
  2. テーブルのZomboDBインデックスを作成します。

    CREATE INDEX idxproducts
              ON products
           USING zombodb ((products.*))
            WITH (url='localhost:9200/');
    説明
    • ZomboDBはElasticsearch 7.xおよび8.xクラスターをサポートしていません。

    • WITH句の後には、実行中のElasticsearchクラスターを指すElasticsearchエンドポイントが続きます。

  3. ZomboDBインデックスを使用してデータをクエリします。

    SELECT *
      FROM products
     WHERE products ==> '(keywords:(sports OR box) OR long_description:"wooden away"~5) AND price:[1000 TO 20000]';
    説明

    クエリ構文の詳細については、「ZomboDBドキュメント」をご参照ください。