У меня есть существующая таблица в моей базе данных с именем price
(имеет 264 строки), и я преобразовал ее в гипертаблицу price_hypertable
, выполнив:
CREATE TABLE price_hypertable (LIKE price INCLUDING DEFAULTS INCLUDING CONSTRAINTS EXCLUDING INDEXES);
SELECT create_hypertable('price_hypertable', 'start');
, и вывод, который она мне выдает, выглядит следующим образом :
create_hypertable
-------------------------------
(4,public,price_hypertable,t)
(1 row)
Следующее, что я сделал, было заполнение price_hypertable
следующим образом:
insert into price_hypertable select * from price;
И я получил следующий вывод:
INSERT 0 264
Теперь я хотел проверить созданные куски, для которых я сделал:
select public.show_chunks('price_hypertable');
и вывод, который я получил:
show_chunks
----------------------------------------
_timescaledb_internal._hyper_4_3_chunk
_timescaledb_internal._hyper_4_4_chunk
(2 rows)
Когда я сделаю:
select * from _timescaledb_internal._hyper_4_3_chunk;
select * from _timescaledb_internal._hyper_4_4_chunk ;
Я вижу, что 264 записи разделены следующим образом:
_timescaledb_internal._hyper_4_3_chunk
имеет 98 строк _timescaledb_internal._hyper_4_4_chunk
имеет 166 строк
У меня есть несколько вопросов об этих шагах и их результатах:
- Может кто-нибудь объяснить мне, что означают значения
4
и t
, когда я сделал SELECT create_hypertable('price_hypertable', 'start');
? - После заполнения
price_hypertable
данные были автоматически разбивается на куски, но разного размера. Почему это происходит? Почему данные не были разделены пополам (132 строки в каждом чанке вместо 98 и 166)?
Любая помощь приветствуется. Спасибо