Re: Handling of images via Postgressql - Mailing list pgsql-admin

From Kevin Grittner
Subject Re: Handling of images via Postgressql
Date
Msg-id 4BBC4FDA0200002500030555@gw.wicourts.gov
Whole thread Raw
In response to Handling of images via Postgressql  (Suresh Borse <s.borse@direction.biz>)
List pgsql-admin
Suresh Borse <s.borse@direction.biz> wrote:

> How does PostGreSQL perform in case we have to store and use huge
> no of images:
>
>  Eg 4000 * 10000 images, each approx 2 MB size.

We have a database with a table containing 7.5 million rows, each
having an image in a bytea column.  While the average size is only
15.2 kB, 69,000 of the rows are 2 MB or larger.  Performance is
fine, but this is a pretty large machine.

> How do we handle such huge no of images so that the application
> does not slow down?

I would avoid doing a select of all 10,000 rows in a single result
set.  If you're getting multiple images in a result set, you might
consider using a cursor.

> How does PostGreSQL use caching?

It has its own cache in shared memory, and also tends to use the
OS's cache -- just by virtue of doing the disk I/O through the OS.

> In case of images does it cache?

Yes.

> Do you suggest having the images in a different database by
> itself?

No.  Well, not unless it is unrelated to other data in the database.
 If it's related, you're going to want to define foreign keys, join
images to other data, and be able to have transactional integrity
between the images and other data.  If you want those things, keep
them in the same database.

-Kevin

pgsql-admin by date:

Previous
From: Renato Oliveira
Date:
Subject: turn pitr 'on' on PostgreSQL 8.2 - pg_standby
Next
From: Bob Lunney
Date:
Subject: Re: Handling of images via Postgressql