Is it possible to create an index without keeping the indexed data in a column?

From: Larry White <ljw1001(at)gmail(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Is it possible to create an index without keeping the indexed data in a column?
Date: 2014-07-31 19:47:07
Message-ID: CAMdbzVj0ss+HhYZwWyOgffKJYa3cor_JKyCTRiUAbP-feS4NoQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi,

I would like to create a GIN index on a set of JSON documents. Right now
I'm storing the data in a JSONB column. The current index looks like this:

CREATE INDEX document_payload_idx
ON document
USING gin
(payload jsonb_path_ops);

The index is pretty small, but the actual data takes up a *lot* of space.
Is there a way to get Postgres to index the table *as if* the JSON were
there, but not actually put the data in the table? I could either store the
docs elsewhere and keep a reference, or compress them and put them in the
table in compressed form as a blob.

Thanks much for your help.

Larry

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Kevin Grittner 2014-07-31 19:52:11 Re: How to implement a uniqueness constraint across multiple tables?
Previous Message Rob Sargent 2014-07-31 19:24:14 Re: How to implement a uniqueness constraint across multiple tables?