pgroonga

pgroonga

Use Groonga as index, fast full text search platform for all languages!

Overview

IDExtensionPackageVersionCategoryLicenseLanguage
2110
pgroonga
pgroonga
4.0.4
FTS
PostgreSQL
C
AttributeHas BinaryHas LibraryNeed LoadHas DDLRelocatableTrusted
--s-dtr
No
Yes
No
Yes
yes
yes
Relationships
See Also
pg_search
pg_bigm
zhparser
pg_bestmatch
pg_tokenizer
pg_trgm
rum
vchord_bm25
Siblings
pgroonga_database

require xxHash vendor repo to build

Packages

TypeRepoVersionPG Major AvailabilityPackage PatternDependencies
EL
PIGSTY
4.0.4
18
17
16
15
14
13
pgroonga_$v*groonga-libs
Debian
PIGSTY
4.0.4
18
17
16
15
14
13
postgresql-$v-pgroongalibgroonga0
Linux / PGPG18PG17PG16PG15PG14PG13
el8.x86_64
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
el8.aarch64
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
el9.x86_64
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
el9.aarch64
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
el10.x86_64
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
el10.aarch64
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
PIGSTY 4.0.4
d12.x86_64
MISS
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
d12.aarch64
MISS
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
d13.x86_64
MISS
MISS
MISS
MISS
MISS
MISS
d13.aarch64
MISS
MISS
MISS
MISS
MISS
MISS
u22.x86_64
MISS
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
u22.aarch64
MISS
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
u24.x86_64
MISS
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
u24.aarch64
MISS
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
PIGSTY 4.0.0
PackageVersionOSORGSIZEFile URL
pgroonga_184.0.4el8.x86_64pigsty360.6 KiBpgroonga_18-4.0.4-1.el8.x86_64.rpm
pgroonga_184.0.4el8.aarch64pigsty348.8 KiBpgroonga_18-4.0.4-1.el8.aarch64.rpm
pgroonga_184.0.4el9.x86_64pigsty345.3 KiBpgroonga_18-4.0.4-1.el9.x86_64.rpm
pgroonga_184.0.4el9.aarch64pigsty337.0 KiBpgroonga_18-4.0.4-1.el9.aarch64.rpm
pgroonga_184.0.4el10.x86_64pigsty347.4 KiBpgroonga_18-4.0.4-1.el10.x86_64.rpm
pgroonga_184.0.4el10.aarch64pigsty339.4 KiBpgroonga_18-4.0.4-1.el10.aarch64.rpm
PackageVersionOSORGSIZEFile URL
pgroonga_174.0.4el8.x86_64pigsty360.3 KiBpgroonga_17-4.0.4-1.el8.x86_64.rpm
pgroonga_174.0.4el8.aarch64pigsty348.4 KiBpgroonga_17-4.0.4-1.el8.aarch64.rpm
pgroonga_174.0.4el9.x86_64pigsty345.3 KiBpgroonga_17-4.0.4-1.el9.x86_64.rpm
pgroonga_174.0.4el9.aarch64pigsty337.3 KiBpgroonga_17-4.0.4-1.el9.aarch64.rpm
pgroonga_174.0.4el10.x86_64pigsty347.1 KiBpgroonga_17-4.0.4-1.el10.x86_64.rpm
pgroonga_174.0.4el10.aarch64pigsty339.3 KiBpgroonga_17-4.0.4-1.el10.aarch64.rpm
postgresql-17-pgroonga4.0.0d12.x86_64pigsty697.4 KiBpostgresql-17-pgroonga_4.0.0-1PIGSTY~bookworm_amd64.deb
postgresql-17-pgroonga4.0.0d12.aarch64pigsty693.0 KiBpostgresql-17-pgroonga_4.0.0-1PIGSTY~bookworm_arm64.deb
postgresql-17-pgroonga4.0.0u22.x86_64pigsty736.2 KiBpostgresql-17-pgroonga_4.0.0-1PIGSTY~jammy_amd64.deb
postgresql-17-pgroonga4.0.0u22.aarch64pigsty739.9 KiBpostgresql-17-pgroonga_4.0.0-1PIGSTY~jammy_arm64.deb
postgresql-17-pgroonga4.0.0u24.x86_64pigsty649.9 KiBpostgresql-17-pgroonga_4.0.0-1PIGSTY~noble_amd64.deb
postgresql-17-pgroonga4.0.0u24.aarch64pigsty653.1 KiBpostgresql-17-pgroonga_4.0.0-1PIGSTY~noble_arm64.deb
PackageVersionOSORGSIZEFile URL
pgroonga_164.0.4el8.x86_64pigsty357.8 KiBpgroonga_16-4.0.4-1.el8.x86_64.rpm
pgroonga_164.0.4el8.aarch64pigsty346.3 KiBpgroonga_16-4.0.4-1.el8.aarch64.rpm
pgroonga_164.0.4el9.x86_64pigsty342.6 KiBpgroonga_16-4.0.4-1.el9.x86_64.rpm
pgroonga_164.0.4el9.aarch64pigsty335.5 KiBpgroonga_16-4.0.4-1.el9.aarch64.rpm
pgroonga_164.0.4el10.x86_64pigsty344.9 KiBpgroonga_16-4.0.4-1.el10.x86_64.rpm
pgroonga_164.0.4el10.aarch64pigsty337.1 KiBpgroonga_16-4.0.4-1.el10.aarch64.rpm
postgresql-16-pgroonga4.0.0d12.x86_64pigsty684.9 KiBpostgresql-16-pgroonga_4.0.0-1PIGSTY~bookworm_amd64.deb
postgresql-16-pgroonga4.0.0d12.aarch64pigsty681.1 KiBpostgresql-16-pgroonga_4.0.0-1PIGSTY~bookworm_arm64.deb
postgresql-16-pgroonga4.0.0u22.x86_64pigsty723.3 KiBpostgresql-16-pgroonga_4.0.0-1PIGSTY~jammy_amd64.deb
postgresql-16-pgroonga4.0.0u22.aarch64pigsty727.5 KiBpostgresql-16-pgroonga_4.0.0-1PIGSTY~jammy_arm64.deb
postgresql-16-pgroonga4.0.0u24.x86_64pigsty642.4 KiBpostgresql-16-pgroonga_4.0.0-1PIGSTY~noble_amd64.deb
postgresql-16-pgroonga4.0.0u24.aarch64pigsty646.1 KiBpostgresql-16-pgroonga_4.0.0-1PIGSTY~noble_arm64.deb
PackageVersionOSORGSIZEFile URL
pgroonga_154.0.4el8.x86_64pigsty360.6 KiBpgroonga_15-4.0.4-1.el8.x86_64.rpm
pgroonga_154.0.4el8.aarch64pigsty349.2 KiBpgroonga_15-4.0.4-1.el8.aarch64.rpm
pgroonga_154.0.4el9.x86_64pigsty346.6 KiBpgroonga_15-4.0.4-1.el9.x86_64.rpm
pgroonga_154.0.4el9.aarch64pigsty339.9 KiBpgroonga_15-4.0.4-1.el9.aarch64.rpm
pgroonga_154.0.4el10.x86_64pigsty349.2 KiBpgroonga_15-4.0.4-1.el10.x86_64.rpm
pgroonga_154.0.4el10.aarch64pigsty339.4 KiBpgroonga_15-4.0.4-1.el10.aarch64.rpm
postgresql-15-pgroonga4.0.0d12.x86_64pigsty687.5 KiBpostgresql-15-pgroonga_4.0.0-1PIGSTY~bookworm_amd64.deb
postgresql-15-pgroonga4.0.0d12.aarch64pigsty683.7 KiBpostgresql-15-pgroonga_4.0.0-1PIGSTY~bookworm_arm64.deb
postgresql-15-pgroonga4.0.0u22.x86_64pigsty729.8 KiBpostgresql-15-pgroonga_4.0.0-1PIGSTY~jammy_amd64.deb
postgresql-15-pgroonga4.0.0u22.aarch64pigsty738.1 KiBpostgresql-15-pgroonga_4.0.0-1PIGSTY~jammy_arm64.deb
postgresql-15-pgroonga4.0.0u24.x86_64pigsty651.6 KiBpostgresql-15-pgroonga_4.0.0-1PIGSTY~noble_amd64.deb
postgresql-15-pgroonga4.0.0u24.aarch64pigsty654.5 KiBpostgresql-15-pgroonga_4.0.0-1PIGSTY~noble_arm64.deb
PackageVersionOSORGSIZEFile URL
pgroonga_144.0.4el8.x86_64pigsty341.1 KiBpgroonga_14-4.0.4-1.el8.x86_64.rpm
pgroonga_144.0.4el8.aarch64pigsty332.6 KiBpgroonga_14-4.0.4-1.el8.aarch64.rpm
pgroonga_144.0.4el9.x86_64pigsty328.2 KiBpgroonga_14-4.0.4-1.el9.x86_64.rpm
pgroonga_144.0.4el9.aarch64pigsty322.9 KiBpgroonga_14-4.0.4-1.el9.aarch64.rpm
pgroonga_144.0.4el10.x86_64pigsty331.0 KiBpgroonga_14-4.0.4-1.el10.x86_64.rpm
pgroonga_144.0.4el10.aarch64pigsty322.9 KiBpgroonga_14-4.0.4-1.el10.aarch64.rpm
postgresql-14-pgroonga4.0.0d12.x86_64pigsty630.7 KiBpostgresql-14-pgroonga_4.0.0-1PIGSTY~bookworm_amd64.deb
postgresql-14-pgroonga4.0.0d12.aarch64pigsty627.3 KiBpostgresql-14-pgroonga_4.0.0-1PIGSTY~bookworm_arm64.deb
postgresql-14-pgroonga4.0.0u22.x86_64pigsty670.2 KiBpostgresql-14-pgroonga_4.0.0-1PIGSTY~jammy_amd64.deb
postgresql-14-pgroonga4.0.0u22.aarch64pigsty678.7 KiBpostgresql-14-pgroonga_4.0.0-1PIGSTY~jammy_arm64.deb
postgresql-14-pgroonga4.0.0u24.x86_64pigsty595.1 KiBpostgresql-14-pgroonga_4.0.0-1PIGSTY~noble_amd64.deb
postgresql-14-pgroonga4.0.0u24.aarch64pigsty600.1 KiBpostgresql-14-pgroonga_4.0.0-1PIGSTY~noble_arm64.deb
PackageVersionOSORGSIZEFile URL
pgroonga_134.0.4el8.x86_64pigsty340.2 KiBpgroonga_13-4.0.4-1.el8.x86_64.rpm
pgroonga_134.0.4el8.aarch64pigsty332.6 KiBpgroonga_13-4.0.4-1.el8.aarch64.rpm
pgroonga_134.0.4el9.x86_64pigsty327.8 KiBpgroonga_13-4.0.4-1.el9.x86_64.rpm
pgroonga_134.0.4el9.aarch64pigsty323.1 KiBpgroonga_13-4.0.4-1.el9.aarch64.rpm
pgroonga_134.0.4el10.x86_64pigsty330.4 KiBpgroonga_13-4.0.4-1.el10.x86_64.rpm
pgroonga_134.0.4el10.aarch64pigsty322.9 KiBpgroonga_13-4.0.4-1.el10.aarch64.rpm
postgresql-13-pgroonga4.0.0d12.x86_64pigsty738.3 KiBpostgresql-13-pgroonga_4.0.0-1PIGSTY~bookworm_amd64.deb
postgresql-13-pgroonga4.0.0d12.aarch64pigsty730.7 KiBpostgresql-13-pgroonga_4.0.0-1PIGSTY~bookworm_arm64.deb
postgresql-13-pgroonga4.0.0u22.x86_64pigsty786.0 KiBpostgresql-13-pgroonga_4.0.0-1PIGSTY~jammy_amd64.deb
postgresql-13-pgroonga4.0.0u22.aarch64pigsty786.5 KiBpostgresql-13-pgroonga_4.0.0-1PIGSTY~jammy_arm64.deb
postgresql-13-pgroonga4.0.0u24.x86_64pigsty695.4 KiBpostgresql-13-pgroonga_4.0.0-1PIGSTY~noble_amd64.deb
postgresql-13-pgroonga4.0.0u24.aarch64pigsty695.5 KiBpostgresql-13-pgroonga_4.0.0-1PIGSTY~noble_arm64.deb

Source

pig build get pgroonga; # get pgroonga source code
pig build dep pgroonga; # install build dependencies
pig build pkg pgroonga; # build extension rpm or deb
pig build ext pgroonga; # build extension rpms

Install

To add the required PGDG / PIGSTY upstream repository, use:

pig repo add pgsql -u   # add PGDG + Pigsty repo and update cache (leave existing repos)

Install this extension with:

pig ext install pgroonga; # install by extension name, for the current active PG version
pig ext install pgroonga; # install via package alias, for the active PG version
pig ext install pgroonga -v 18;   # install for PG 18
pig ext install pgroonga -v 17;   # install for PG 17
pig ext install pgroonga -v 16;   # install for PG 16
pig ext install pgroonga -v 15;   # install for PG 15
pig ext install pgroonga -v 14;   # install for PG 14
pig ext install pgroonga -v 13;   # install for PG 13

Create this extension with:

CREATE EXTENSION pgroonga;

Usage

  • https://pgroonga.github.io/
  • News: It lists release information.
  • Overview: It describes about PGroonga.
  • Install: It describes how to install PGroonga.
  • Upgrade: It describes how to upgrade PGroonga.
  • Uninstall: It describes how to uninstall PGroonga.
  • Tutorial: It describes how to use PGroonga step by step.
  • FAQ: Frequently asked questions.
  • How to: It describes about useful information for specific situations.
  • Reference: It describes details for each features such as options, functions and operators.
  • Troubleshooting: It describes how to fix troubles.
  • Community: It introduces about PGroonga community.
  • Users: It lists PGroonga users.
  • Development: It describes how to develop PGroonga.

Here’s a quick tutorial about how to use PGroonga:

CREATE EXTENSION IF NOT EXISTS pgroonga;

CREATE TABLE memos
(
    id      integer,
    content text
);

CREATE INDEX pgroonga_content_index ON memos USING pgroonga (content);

INSERT INTO memos VALUES (1, 'PostgreSQL is a relational database management system.');
INSERT INTO memos VALUES (2, 'Groonga is a fast full text search engine that supports all languages.');
INSERT INTO memos VALUES (3, 'PGroonga is a PostgreSQL extension that uses Groonga as index.');
INSERT INTO memos VALUES (4, 'There is groonga command.');

SET enable_seqscan = off;

-- now let's query pgroonga

SELECT * FROM memos WHERE content &@ 'engine';
--  id |                                content                                 
-- ----+------------------------------------------------------------------------
--   2 | Groonga is a fast full text search engine that supports all languages.
-- (1 row)

SELECT * FROM memos WHERE content &@~ 'PGroonga OR PostgreSQL';
--  id |                            content                             
-- ----+----------------------------------------------------------------
--   3 | PGroonga is a PostgreSQL extension that uses Groonga as index.
--   1 | PostgreSQL is a relational database management system.
-- (2 rows)

SELECT * FROM memos WHERE content LIKE '%engine%';
--  id |                                content                                 
-- ----+------------------------------------------------------------------------
--   2 | Groonga is a fast full text search engine that supports all languages.
-- (1 row)
Last updated on