Обсуждение: How to gracefully keep my specific index in memory ?
Hello:
As the title,How to keep a specific index in memory gracefully?
After some statistical query, I can determine that not all indexes can be fit into memory, but one of the most frequently used indexes(say idx_xyz) can be definitely fit into memory(specifically ,[the size of idx_xyz]=20% x [memory size]).
I know there's pgprewarm, but I feel with pgprewarm I can't keep things under control, e.g. no realtime monitor, being squeezed out of memory ,.etc.
Is it possible that I can simply do something like "select idx_xyz into xxx" and keep the specific index in memory forever?
Best regards,
James
James(王旭) wrote: > As the title,How to keep a specific index in memory gracefully? > > After some statistical query, I can determine that not all indexes can be fit into memory, > but one of the most frequently used indexes(say idx_xyz) can be definitely fit into > memory(specifically ,[the size of idx_xyz]=20% x [memory size]). > > I know there's pgprewarm, but I feel with pgprewarm I can't keep things under control, e.g. no realtime monitor, beingsqueezed out of memory ,.etc. > > Is it possible that I can simply do something like "select idx_xyz into xxx" and keep the specific index in memory forever? If the indexes are frequently used, they should remain cached anyway. Yours, Laurenz Albe -- Cybertec | https://www.cybertec-postgresql.com
Thanks Laurenz Albe for reply.
Unfortunately this index is only frequently used during a certain period of time(such as 9:30am - 12:00am) .I usually encounter slow load of this index during some other time.
Then it seems to me the only answer for this case would be the pgprewarm and pg_cron ?
------------------ Original ------------------
From: "Laurenz Albe"<laurenz.albe@cybertec.at>;
Date: Mon, Aug 12, 2019 08:24 PM
To: "James(王旭)"<wangxu@gu360.com>; "pgsql-general"<pgsql-general@postgresql.org>;
Subject: Re: How to gracefully keep my specific index in memory ?
James(王旭) wrote:
> As the title,How to keep a specific index in memory gracefully?
>
> After some statistical query, I can determine that not all indexes can be fit into memory,
> but one of the most frequently used indexes(say idx_xyz) can be definitely fit into
> memory(specifically ,[the size of idx_xyz]=20% x [memory size]).
>
> I know there's pgprewarm, but I feel with pgprewarm I can't keep things under control, e.g. no realtime monitor, being squeezed out of memory ,.etc.
>
> Is it possible that I can simply do something like "select idx_xyz into xxx" and keep the specific index in memory forever?
If the indexes are frequently used, they should remain cached anyway.
Yours,
Laurenz Albe
--
Cybertec | https://www.cybertec-postgresql.com
> As the title,How to keep a specific index in memory gracefully?
>
> After some statistical query, I can determine that not all indexes can be fit into memory,
> but one of the most frequently used indexes(say idx_xyz) can be definitely fit into
> memory(specifically ,[the size of idx_xyz]=20% x [memory size]).
>
> I know there's pgprewarm, but I feel with pgprewarm I can't keep things under control, e.g. no realtime monitor, being squeezed out of memory ,.etc.
>
> Is it possible that I can simply do something like "select idx_xyz into xxx" and keep the specific index in memory forever?
If the indexes are frequently used, they should remain cached anyway.
Yours,
Laurenz Albe
--
Cybertec | https://www.cybertec-postgresql.com