PGroonga 1.2.3 - Make PostgreSQL fast full text search platform for all languages

From: Kouhei Sutou <kou(at)clear-code(dot)com>
To: pgsql-announce(at)postgresql(dot)org
Subject: PGroonga 1.2.3 - Make PostgreSQL fast full text search platform for all languages
Date: 2017-07-24 07:45:51
Message-ID: 20170724.164551.248481640684202381.kou@clear-code.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-announce

Hi,

PGroonga 1.2.3 has been released!

http://groonga.org/en/blog/2017/07/03/pgroonga-1.2.3.html

### About PGroonga

https://pgroonga.github.io/

PGroonga is a PostgreSQL extension that makes PostgreSQL
fast full text search platform for all languages!
It's released under PostgreSQL license.

There are some PostgreSQL extensions that improves full text
search feature of PostgreSQL such as pg_trgm(*1).

(*1) https://www.postgresql.org/docs/current/static/pgtrgm.html

pg_trgm doesn't support languages that use non-alphanumerics
characters such as Japanese and Chinese.

PGroonga supports all languages, provides rich full text
search related features and is very fast. Because PGroonga
uses Groonga(*2) that is a full-fledged full text search
engine as backend.

(*2) http://groonga.org/

See the following benchmark results for performance:

* Benchmark result for PGroonga, textsearch and pg_trgm with English Wikipedia
https://pgroonga.github.io/reference/pgroonga-versus-textsearch-and-pg-trgm.html
* Benchmark result for PGroonga and pg_bigm with Japanese Wikipedia
https://pgroonga.github.io/reference/pgroonga-versus-pg-bigm.html

PGroonga also supports JSON search. You can use each value
for condition. You can also perform full text search against
all texts in JSON like textsearch in PostgreSQL 10 does.

### Users

Here are PGroonga users:

* Zulip: https://zulip.org/
* Powerful open source group chat by Dropbox

https://pgroonga.github.io/users/

### Changes

Here are highlights of PGroonga 1.2.3:

* Improved PHP support
* PDO can't handle operator that has "?" in its name.
https://bugs.php.net/bug.php?id=71885
* For example, "?|" for json can't be used.
https://www.postgresql.org/docs/current/static/functions-json.html#FUNCTIONS-JSONB-OP-TABLE
* PGroonga renamed operator names that use "?".

* Supported query expansion
* You can use query expansion to implement synonym search.
* textsearch uses synonym dictionary to manage synonyms but
PGroonga uses a normal table to manage synonyms. It's easy
to maintain.
https://www.postgresql.org/docs/current/static/textsearch-dictionaries.html#TEXTSEARCH-SYNONYM-DICTIONARY
* https://pgroonga.github.io/reference/functions/pgroonga-query-expand.html

* Supported auto complete
* The recent full text search systems have auto complete
feature as one of standard features. You can implement
it with PGroonga.
* You can manage complete candidates in a normal table.
* https://pgroonga.github.io/how-to/auto-complete.html

* Supported similar search
* https://pgroonga.github.io/reference/operators/similar-search-v2.html

* Improved usage of full text search against jsonb
* https://pgroonga.github.io/reference/operators/query-jsonb-v2.html

See the following release announce URL for details:

http://groonga.org/en/blog/2017/07/03/pgroonga-1.2.3.html

### Usage

You can use PGroonga without full text search knowledge. You
just create an index and puts a condition into WHERE:

CREATE INDEX index_name ON table USING pgroonga (column);

SELECT * FROM table WHERE column @@ 'PostgreSQL';

You can also use LIKE to use PGroonga. PGroonga provides a
feature that performs LIKE with index. LIKE with PGroonga
index is faster than LIKE without index. It means that you
can improve performance without changing your application
that uses the following SQL:

SELECT * FROM table WHERE column LIKE '%PostgreSQL%';

Are you interested in PGroonga? Please install(*4) and try
tutorial(*5). You can know all PGroonga features.

(*4) https://pgroonga.github.io/install/
(*5) https://pgroonga.github.io/tutorial/

You can install PGroonga easily. Because PGroonga provides
packages for major platforms. There are binaries for
Windows.

Thanks,
--
kou

Browse pgsql-announce by date

  From Date Subject
Next Message Daniele Varrazzo 2017-07-24 16:38:48 Psycopg 2.7.3 released
Previous Message David Fetter 2017-07-23 20:46:18 == PostgreSQL Weekly News - July 23 2017 ==