Re: postgresql performance with multimedia - Mailing list pgsql-performance

From Jan Wieck
Subject Re: postgresql performance with multimedia
Date
Msg-id 412C71F1.4030902@Yahoo.com
Whole thread Raw
In response to Re: postgresql performance with multimedia  (my ho <mthoatbanjo@yahoo.com>)
Responses Re: postgresql performance with multimedia
List pgsql-performance
On 8/25/2004 2:54 AM, my ho wrote:
>> Tom Lane answered to that question. The code in
>> question does resolve
>> "localhost" with getaddrinfo() and then tries to
>> create and bind a UDP
>> socket to all returned addresses. For some reason
>> "localhost" on your
>> system resolves to an address that is not available
>> for bind(2).
>
> I tried to put my_ip instead of "localhost" in
> bufmng.c and it seems to work (no more complaining).
> However i check the pg_statio_all_tables and dont see
> any recorded statistic at all. (all the columns are
> '0')

The block level statistics are disabled by default in the
postgresql.conf file.

> some time postmaster shut down with this err msg:
> LOG:  statistics collector process (<process_id>)
> exited with exit code 1

Fix your operating systems network settings instead of curing the
symptoms by breaking PostgreSQL.

> i starts postmaster with this command:
> postmaster -i -p $PORT -D $PGDATA -k $PGDATA -N 32 -B
> 64 -o -s
>
>> > btw, what i want to ask here is does postgreSQL
>> have
>> > any kind of read-ahead buffer implemented? 'cos it
>> > would be useful in multimedia case when we always
>> scan
>> > the large table for continous data.
>>
>> Since there is no mechanism to control that data is
>> stored contiguously
>> in the tables, what would that be good for?
>
> i thought that rows in the table will be stored
> contiguously? in that case, if the user is requesting
> 1 row, we make sure that the continue rows are ready
> in the buffer pool so that when they next requested,
> they wont be asked to read from disk. For multimedia
> data, this is important 'cos data needs to be
> presented continuously without any waiting.

They are only stored in that way on initial load and if the load is done
with a single process. And don't you rely on this for the future. Right
now, if you ever update or delete tuples, that order changes already.

Also keep in mind that large values are not stored inline, but in an
extra "TOAST" relation.

For your "streaming" purposes I strongly recommend you do it in your
application with the appropriate thread model. A relational database
management system is not a multimedia cache.


Jan

--
#======================================================================#
# It's easier to get forgiveness for being wrong than for being right. #
# Let's break this rule - forgive me.                                  #
#================================================== JanWieck@Yahoo.com #

pgsql-performance by date:

Previous
From: Mark Kirkwood
Date:
Subject: Re: What is the best way to do attribute/values?
Next
From: "Leeuw van der, Tim"
Date:
Subject: OT: Network config (WAS: RE: postgresql performance with multimedia)