Re: Documentation on Hash and btree Indexes on jsonb

From: Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>
To: holger(dot)vornholt(at)deutschebahn(dot)com, pgsql-docs(at)lists(dot)postgresql(dot)org
Subject: Re: Documentation on Hash and btree Indexes on jsonb
Date: 2021-02-15 12:53:47
Message-ID: 27b8149fad9bdf3efd96c7a69d91898e2734f98a.camel@cybertec.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-docs

On Sat, 2021-02-13 at 09:37 +0000, PG Doc comments form wrote:
> The documentation on https://www.postgresql.org/docs/12/datatype-json.html
> claims:
> "jsonb also supports btree and hash indexes. These are usually useful only
> if it's important to check equality of complete JSON documents."
>
> According to some older information from 2016
>
> https://bitnine.net/blog-postgresql/postgresql-internals-jsonb-type-and-its-indexes/?ckattempt=1
> https://stackoverflow.com/questions/36075918/postgresql-index-on-json
> it seems to be a valid option to use hash or btree indexes in that case
> however.
> "As a result, in the choice of an index for JSONB type, if the index
> searches a few predetermined attributes, BTREE is the best choice"
>
> The quoted sentance from the postgres documentation would suggest, that this
> option could be discarded. I would love to hear your feedback on this
> matter.

The PostgreSQL documentation is talking about a B-tree index on the complete
JSON, while the article is talking about a B-tree index on an expression that
extracts one attribute of the JSON.

These are quite different things, so both are correct.

Yours,
Laurenz Albe
--
Cybertec | https://www.cybertec-postgresql.com

In response to

Browse pgsql-docs by date

  From Date Subject
Next Message PG Doc comments form 2021-02-15 13:02:44 Matview Refresh Privilege Clarification
Previous Message Tom Lane 2021-02-14 16:28:57 Re: Duplicate documentation within the same page