Обсуждение: Recreate big table

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

Recreate big table

От
Gábriel Ákos
Дата:
Hi,

We have a quite big table, which is heavily used by our online clients.
The table has several indexes, but no other relation to other tables.
We have an import process, which can fill/update this table.
The full import takes 1 hour, and this is very long.
We are thinking of doing the full import in another table and then just
"swapping" the two tables.
What will happen to our indexes? What will happen to our current
transactions (only read) ? What will the user see? :)
Should we recreate the indexes after the swap is done?

Btw is there a good practice doing this kind of work?

Thanks in advance,
Akos Gabriel

Re: Recreate big table

От
"Daniel Cristian Cruz"
Дата:
Gábriel,

You could use table inheritance, like table partitioning is explained in manual:

http://www.postgresql.org/docs/8.2/interactive/ddl-partitioning.html

Kind regards,

Daniel Cristian

On 2/9/07, Gábriel Ákos <akos.gabriel@i-logic.hu> wrote:
> Hi,
>
> We have a quite big table, which is heavily used by our online clients.
> The table has several indexes, but no other relation to other tables.
> We have an import process, which can fill/update this table.
> The full import takes 1 hour, and this is very long.
> We are thinking of doing the full import in another table and then just
> "swapping" the two tables.
> What will happen to our indexes? What will happen to our current
> transactions (only read) ? What will the user see? :)
> Should we recreate the indexes after the swap is done?
>
> Btw is there a good practice doing this kind of work?
>
> Thanks in advance,
> Akos Gabriel
>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: Don't 'kill -9' the postmaster
>


--
Daniel Cristian Cruz
Analista de Sistemas
Especialista postgreSQL e Linux
Instrutor Certificado Mandriva