Re: Postgresql jsonb

From: Deepak Balasubramanyam <deepak(dot)balu(at)gmail(dot)com>
To: David Rowley <david(dot)rowley(at)2ndquadrant(dot)com>
Cc: pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: Postgresql jsonb
Date: 2015-08-16 17:31:34
Message-ID: CAAerrx-c7ET3g4wYM7S0UMjnBHZEudcPUHCOUrJKvmz_cJJNug@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Thank you Bill and David. I'll take a look at `pg_buffercache ` and explain
with buffers.

---------------
>>> What problem are you seeing?
---------------

I don't have a problem at the moment.

---------------
>>> What is your performance requirement, and what is the observed
performance?
---------------

The observed performance is within my requirement. My question was aimed at
getting it to stay that way and your answers have helped.

Thanks again
-Deepak

On Fri, Aug 14, 2015 at 6:19 PM, David Rowley <david(dot)rowley(at)2ndquadrant(dot)com>
wrote:

> On 15 August 2015 at 00:09, Deepak Balasubramanyam <deepak(dot)balu(at)gmail(dot)com>
> wrote:
>
>> Hi,
>>
>> I have a table (20 million rows) in Postgresql 9.4 that contains a bigint
>> id as the primary key and another column that contains jsonb data. Queries
>> run on this table look like so...
>>
>> ------------
>> ## Query
>> ------------
>> select ... from table
>> WHERE table.column ->'item'->> 'name' = 'value'
>> ------------
>>
>> I'd like to make an effort to get Postgresql to keep all data available
>> in this table and any index on this table in memory. This would ensure that
>> sequence or index scans made on the data are fairly fast.
>>
>> Research into this problem indicates that there is no reliable way to get
>> Postgresql to run off of RAM memory completely (
>> http://stackoverflow.com/a/24235439/830964) Assuming the table and its
>> indexes amount to 15 gb of data on the disk and the machine contains 64GB
>> of RAM with shared buffers placed at anywhere from 16-24 GB, here are my
>> questions...
>>
>> 1. When postgresql returns data from this query, how can I tell how much
>> of the data was cached in memory?
>>
>>
> It depends which memory you're talking about. If you mean pages that are
> in the shared buffers then you can just
>
> EXPLAIN (ANALYZE, BUFFERS) select ... from table;
>
> You'll see Buffers: shared read=N if any buffers were "read from disk" but
> keep in mind they still might not be coming from disk, they could be cached
> by the operating system in memory.
>
> Regards
>
> David Rowley
>
> --
> David Rowley http://www.2ndQuadrant.com/
> <http://www.2ndquadrant.com/>
> PostgreSQL Development, 24x7 Support, Training & Services
>

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Craig Ringer 2015-08-17 01:35:48 Re: [BDR] vs pgpool-II v3
Previous Message Aviel Buskila 2015-08-16 12:19:25 Re: repmgr won't update witness after failover