Обсуждение: Handling of images via Postgressql

Поиск
Список
Период
Сортировка

Handling of images via Postgressql

От
Suresh Borse
Дата:


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.

 

The Questions that we have are:

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

How does PostGreSQL use caching? In case of images does it cache?

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



Regards,

Suresh

Re: Handling of images via Postgressql

От
"Kevin Grittner"
Дата:
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

Re: Handling of images via Postgressql

От
Bob Lunney
Дата:
Suresh,

The real question is:  does manipulation of the images have to be transactional?  If so, store them in the database.  If not, store the images in the file system and put the file name in the database, thereby avoiding unecessary WAL overhead.

Bob Lunney

--- On Wed, 4/7/10, Suresh Borse <s.borse@direction.biz> wrote:

From: Suresh Borse <s.borse@direction.biz>
Subject: [ADMIN] Handling of images via Postgressql
To: pgsql-admin@postgresql.org
Date: Wednesday, April 7, 2010, 8:50 AM



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.

 

The Questions that we have are:

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

How does PostGreSQL use caching? In case of images does it cache?

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



Regards,

Suresh

Re: Handling of images via Postgressql

От
Robert Gravsjö
Дата:

Suresh Borse skrev 2010-04-07 14.50:
>
>
> 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.
>
>
>
> The Questions that we have are:
>
> How do we handle such huge no of images so that the application does not
> slow down?
>
> How does PostGreSQL use caching? In case of images does it cache?
>
> Do you suggest having the images in a different database by itself?

I'd suggest storing meta information in PostgreSQL and the images in the
filesystem.

Regards,
roppert

>
>
>
> Regards,
>
> Suresh
>

Re: Handling of images via Postgressql

От
Devrim GÜNDÜZ
Дата:
On Wed, 2010-04-07 at 16:01 +0200, Robert Gravsjö wrote:
> > Do you suggest having the images in a different database by itself?
>
> I'd suggest storing meta information in PostgreSQL and the images in
> the filesystem.

Is this transaction safe?

--
Devrim GÜNDÜZ
PostgreSQL Danışmanı/Consultant, Red Hat Certified Engineer
PostgreSQL RPM Repository: http://yum.pgrpms.org
Community: devrim~PostgreSQL.org, devrim.gunduz~linux.org.tr
http://www.gunduz.org  Twitter: http://twitter.com/devrimgunduz

Вложения

Re: Handling of images via Postgressql

От
"Kevin Grittner"
Дата:
Devrim GÜNDÜZ<devrim@gunduz.org> wrote:
> Robert Gravsjö wrote:

>> I'd suggest storing meta information in PostgreSQL and the images
in
>> the filesystem.
>
> Is this transaction safe?

No.

-Kevin