This is a document for PGroonga 2.0.0 or later. See PGroonga 1.X document when you're using PGroonga 1.X.
This document describes about all features. Tutorial focuses on easy to understand only about important features. This document focuses on completeness. If you don't read tutorial yet, read tutorial before read this document.
pgroonga schemapgroonga schema is deprecated since 2.0.0. Use pgroonga_* functions, operators and operator classes in the current schema for newly written code.
PGroonga defines functions, operators, operator classes and so on into pgroonga schema. Only superuser can use features in pgroonga schema by default. Superuser needs to grant USAGE privilege on pgroonga schema to normal users who want to use PGroonga.
pgroonga indexSince 2.3.3.
All v2 operators supports PostgreSQL's row level security.
textpgroonga_text_full_text_search_ops_v2 operator class (default)ILIKE operator
&@ operator: Full text search by a keyword
%% operator: Full text search by a keyword
&@~ operator: Full text search by easy to use query language
&? operator: Full text search by easy to use query language
&@~ operator instead.@@ operator: Full text search by easy to use query language
&@* operator: Similar search
&~? operator: Similar search
&@* operator instead.&` operator: Advanced search by ECMAScript like query language
&@| operator: Full text search by an array of keywords
&@> operator: Full text search by an array of keywords
&@| operator instead.&@~| operator: Full text search by an array of queries in easy to use query language
&?| operator: Full text search by an array of queries in easy to use query language
&@~| operator instead.&?> operator: Full text search by an array of queries in easy to use query language
&@~| operator instead.pgroonga_text_term_search_ops_v2 operator class<
<=
=
>=
>
&= operator: Exact match search
&^ operator: Prefix search
&^~ operator: Prefix RK search
&^| operator: Prefix search by an array of prefixes
&^> operator: Prefix search by an array of prefixes
&^| operator instead.!&^| operator: NOT prefix search by an array of prefixes
&^~| operator: Prefix RK search by an array of prefixes
&^~> operator: Prefix RK search by an array of prefixes
&^~| operator instead.pgroonga_text_regexp_ops_v2 operator classILIKE operator
&~ operator: Search by a regular expression
@~ operator: Search by a regular expression
&~| operator: Search by an array of regular expressions
text[]pgroonga_text_array_full_text_search_ops_v2 operator class (default)&@ operator: Full text search by a keyword
%% operator: Full text search by a keyword
&@~ operator: Full text search by easy to use query language
&? operator: Full text search by easy to use query language
&@~ operator instead.@@ operator: Full text search by easy to use query language
&@* operator: Similar search
&~? operator: Similar search
&@* operator instead.&` operator: Advanced search by ECMAScript like query language
&@| operator: Full text search by an array of keywords
&@> operator: Full text search by an array of keywords
&@| operator instead.&@~| operator: Full text search by an array of queries in easy to use query language
&?| operator: Full text search by an array of queries in easy to use query language
&@~| operator instead.&?> operator: Full text search by an array of queries in easy to use query language
&@~| operator instead.pgroonga_text_array_term_search_ops_v2 operator class&^ operator: Prefix search
&^> operator: Prefix search
&^ operator instead.&^~ operator: Prefix RK search
&^~> operator: Prefix RK search
&^~ operator instead.&^| operator: Prefix search by an array of prefixes
&^~| operator: Prefix RK search by an array of prefixes
@> operator: Contained search by an array
&=~ operator: Equal search by easy to use query language
pgroonga_text_array_regexp_ops_v2 operator classSince 3.2.5.
&~ operator: Search by a regular expressionvarcharpgroonga_varchar_term_search_ops_v2 operator class (default)<
<=
=
>=
>
&= operator: Exact match search
&^ operator: Prefix search
&^~ operator: Prefix RK search
&^| operator: Prefix search by an array of prefixes
&^~| operator: Prefix RK search by an array of prefixes
pgroonga_varchar_full_text_search_ops_v2 operator class&@ operator: Full text search by a keyword
%% operator: Full text search by a keyword
&@~ operator: Full text search by easy to use query language
&? operator: Full text search by easy to use query language
&@~ operator instead.@@ operator: Full text search by easy to use query language
&@* operator: Similar search
&~? operator: Similar search
&@* operator instead.&` operator: Advanced search by ECMAScript like query language
&@| operator: Full text search by an array of keywords
&@> operator: Full text search by an array of keywords
&@| operator instead.&@~| operator: Full text search by an array of queries in easy to use query language
&?| operator: Full text search by an array of queries in easy to use query language
&@~| operator instead.&?> operator: Full text search by an array of queries in easy to use query language
&@~| operator instead.pgroonga_varchar_regexp_ops_v2 operator class&~ operator: Search by a regular expression
@~ operator: Search by a regular expression
&~| operator: Search by an array of regular expressions
varchar[]pgroonga_varchar_array_term_search_ops_v2 operator class (default)&> operator: Check whether a term is included in an array of terms
%% operator: Check whether a term is included in an array of terms
@> operator: Contained search by an array
&=~ operator: Equal search by easy to use query language
Supported types: boolean, smallint, integer, bigint, real, double precision, timestamp and timestamp with time zone
<
<=
=
>=
>
jsonbpgroonga_jsonb_ops_v2 operator class (default)&@ operator: Full text search against all text data in jsonb by a keyword
&@~ operator: Full text search against all text data in jsonb by easy to use query language
&? operator: Full text search against all text data in jsonb by easy to use query language
&@~ operator instead.&` operator: Advanced search by ECMAScript like query language
@@ operator: Advanced search by ECMAScript like query language
@> operator: Search by a jsonb data
pgroonga_jsonb_full_text_search_ops_v2 operator class&@ operator: Full text search against all text data in jsonb by a keyword
&@~ operator: Full text search against all text data in jsonb by easy to use query language
textpgroonga_text_full_text_search_ops operator class (default)Deprecated since 2.0.0.
Use pgroonga_text_full_text_search_ops_v2 operator class instead.
ILIKE operator
&@ operator: Full text search by a keyword
%% operator: Full text search by a keyword
&@ operator instead.&@~ operator: Full text search by easy to use query language
&? operator: Full text search by easy to use query language
&@~ operator instead.@@ operator: Full text search by easy to use query language
&@~ operator instead.pgroonga_text_regexp_ops operator classDeprecated since 2.0.0.
Use pgroonga_text_regexp_ops_v2 operator class instead.
ILIKE operator
&~ operator: Search by a regular expression
@~ operator: Search by a regular expression
&~ operator instead.text[]pgroonga_text_array_full_text_search_ops operator classDeprecated since 2.0.0.
Use pgroonga_text_array_full_text_search_ops_v2 operator class instead.
&@ operator: Full text search by a keyword
%% operator: Full text search by a keyword
&@ operator instead.&@~ operator: Full text search by easy to use query language
&? operator: Full text search by easy to use query language
&@~ operator instead.@@ operator: Full text search by easy to use query language
&@~ operator instead.varcharpgroonga_varchar_ops operator classDeprecated since 2.0.0.
Use pgroonga_varchar_term_search_ops_v2 operator class instead.
<
<=
=
>=
>
pgroonga_varchar_full_text_search_ops operator classDeprecated since 2.0.0.
Use pgroonga_varchar_full_text_search_ops_v2 operator class instead.
&@ operator: Full text search by a keyword
%% operator: Full text search by a keyword
&@ operator instead.&@~ operator: Full text search by easy to use query language
&? operator: Full text search by easy to use query language
&@~ operator instead.@@ operator: Full text search by easy to use query language
&@~ operator instead.pgroonga_varchar_regexp_ops operator classDeprecated since 2.0.0.
Use pgroonga_varchar_regexp_ops_v2 operator class instead.
&~ operator: Search by a regular expression
@~ operator: Search by a regular expression
&~ operator instead.varchar[]pgroonga_varchar_array_ops operator classDeprecated since 2.0.0.
Use pgroonga_varchar_array_term_search_ops_v2 operator class instead.
&> operator: Check whether a term is included in an array of terms
%% operator: Check whether a term is included in an array of terms
&> operator instead.jsonbpgroonga_jsonb_ops operator classDeprecated since 2.0.0.
Use pgroonga_jsonb_ops_v2 operator class instead.
&@ operator: Full text search against all text data in jsonb by a keyword
&@~ operator: Full text search against all text data in jsonb by easy to use query language
&? operator: Full text search against all text data in jsonb by easy to use query language
&@~ operator instead.&` operator: Advanced search by ECMAScript like query language
@@ operator: Advanced search by ECMAScript like query language
&` operator instead.@> operator: Search by a jsonb data
pgroonga_language_model_vectorize function
pgroonga.enable_row_level_security parameter
pgroonga.enable_trace_log parameter
pgroonga.enable_wal_resource_manager parameter
pgroonga.log_rotate_threshold_size parameter
pgroonga.max_bulk_insert_wal_record_size parameter
pgroonga.max_wal_size parameter
pgroonga.query_log_rotate_threshold_size parameter
pgroonga_crash_safer.flush_naptime parameter
pgroonga_crash_safer.log_level parameter
pgroonga_crash_safer.log_path parameter
pgroonga_crash_safer.max_recovery_threads parameter
pgroonga_standby_maintainer.max_parallel_wal_appliers_per_db parameter
pgroonga_standby_maintainer.naptime parameter
pgroonga_wal_resource_manager.log_level parameter
pgroonga_wal_resource_manager.log_path parameter
pgroonga_crash_safer module instead.pgroonga_crash_safer module instead.Since 2.3.3.
pgroonga_wal_applier module is deprecated since 2.4.2. We use the pgroonga_standby_maintainer module instead.
pgroonga_standby_maintainer module
pgroonga_wal_resource_manager module
pgroonga-primary-maintainer.sh command
pgroonga-generate-primary-maintainer-service.sh command
pgroonga-generate-primary-maintainer-timer.sh command
You can use them with pgroonga_command function. You can't use them in WHERE clause.
Normally, you don't need to tune PGroonga because PGroonga works well by default.
But you need to tune PGroonga in some cases such as a case that you need to handle a very large database. PGroonga uses Groonga as backend. It means that you can apply tuning knowledge for Groonga to PGroonga. See the following Groonga document to tune PGroonga: