Re: best db schema for time series data?

Поиск
Список
Период
Сортировка
От Arjen van der Meijden
Тема Re: best db schema for time series data?
Дата
Msg-id 4CE2688B.2050000@tweakers.net
обсуждение исходный текст
Ответ на best db schema for time series data?  (Louis-David Mitterrand <vindex+lists-pgsql-performance@apartia.org>)
Ответы Re: best db schema for time series data?  (Louis-David Mitterrand <vindex+lists-pgsql-performance@apartia.org>)
Список pgsql-performance
On 16-11-2010 11:50, Louis-David Mitterrand wrote:
> I have to collect lots of prices from web sites and keep track of their
> changes. What is the best option?
>
> 1) one 'price' row per price change:
>
>     create table price (
>         id_price primary key,
>         id_product integer references product,
>         price integer
>     );
>
> 2) a single 'price' row containing all the changes:
>
>     create table price (
>         id_price primary key,
>         id_product integer references product,
>         price integer[] -- prices are 'pushed' on this array as they change
>     );
>
> Which is bound to give the best performance, knowing I will often need
> to access the latest and next-to-latest prices?

If you mostly need the last few prices, I'd definitaly go with the first
aproach, its much cleaner. Besides, you can store a date/time per price,
so you know when it changed. With the array-approach that's a bit harder
to do.

If you're concerned with performance, introduce some form of a
materialized view for the most recent price of a product. Or reverse the
entire process and make a "current price"-table and a "price history"-table.

Best regards,

Arjen


В списке pgsql-performance по дате отправления:

Предыдущее
От: Pavel Stehule
Дата:
Сообщение: Re: best db schema for time series data?
Следующее
От: Louis-David Mitterrand
Дата:
Сообщение: Re: best db schema for time series data?