|
Time TravelПосле Postgres v6.2, time travel больше не поддерживается. Для этого было несколько причин: влияние на производительность, размер хранения, и файл pg_time, размер которого стремился к бесконечности за короткий промежуток времени. Новые свойства, типа триггеров, позволяли при желании подражать поведению time travel, без добавления накладных расходов, когда это ненужно (для большинства пользователей, почти всё время). Дополнительную информацию ищи в каталоге с примерами contrib.
Postgres поддерживает такую идею как time travel. Это свойство позволяет пользователю выполнять исторические запросы. Например, найти текущее население города Mariposay: SELECT * FROM cities WHERE name = 'Mariposa'; +---------+------------+----------+ |name | population | altitude | +---------+------------+----------+ |Mariposa | 1320 | 1953 | +---------+------------+----------+Postgres автоматически найдёт версию записи Mariposa, верную на текущий момент. Можно также задать временной диапазон. Например, посмотреть население Mariposa в прошлом и настоящем: SELECT name, population FROM cities['epoch', 'now'] WHERE name = 'Mariposa';где "epoch" указывает на начало отсчёта системных часов.
Если, несомненно, ты выполнял все примеры, то запросы выше возвратят: +---------+------------+ |name | population | +---------+------------+ |Mariposa | 1200 | +---------+------------+ |Mariposa | 1320 | +---------+------------+ По умолчанию, начало временного диапазона - самое раннее время предоставленное системой и по умолчанию конец - текущее время; таким образом, приведённый выше временной диапазон может быть сокращён до ``[,].''
|
|||||||||||||||||||||||||||||
With any suggestions or questions please feel free to contact us |