@pgsql

Страница 1012 из 1062
Ivan
02.10.2018
17:44:37
Все нравиться, просто интересно сколько она вывезет в плане размера

Если инстанс без реплик, каким размером таблица еще будет жить

Я понимаю, что там чанки, но если база дорастет до пары ТБ, она будет еще жива?)

Vladimir
02.10.2018
17:46:34
а сколько сейчас?

Google
Ivan
02.10.2018
18:00:09
Надо точно глянуть, но думаю гигов 200

Vladimir
02.10.2018
18:02:06
а количество записей?

Ivan
02.10.2018
18:44:46
Боюсь соврать, завтра гляну и отпишусь по размеру и кол-во записей

Vladimir
02.10.2018
18:44:57
спасибо

очень хочу попробовать, очень интересно, каких результатов можно добиться

Ivan
02.10.2018
18:45:59
Ну у нас все на нее поставлено

)

У нас система gps мониторинга, не сильно большая, чтобы не лезть в всякие nosq решения, была экспериза в postgres. Взяли связку postgres postgis timescale - зашло на ура

Теперь интересно сколько она будет жить)

Реплики, шардирование и прочее решат проблему, просто инженерный интерес, сколько она будет работать в "достаточном" для бизнеса режиме)

Кстати, у меня есть образ сборки готовой https://hub.docker.com/r/binakot/postgresql-postgis-timescaledb/ если хочется потыкать, у timescale тоже есть сборки с postgis

Bogdan
02.10.2018
18:49:12
А что это? InfluxDB на основе пропатченого Postgre?

Ivan
02.10.2018
18:49:27
Типа того

Google
Ivan
02.10.2018
18:49:46
Расширение для работы с метрическими даннами по времени

Создаем специальный тип таблицы, оптимизированной под поиск по времени

Всякие временные корзины, разбиение на чанки и т.д. и т.п. стоит почитать

https://www.timescale.com/

Bogdan
02.10.2018
18:50:50
We modified the PostgreSQL insert path, execution engine, and query planner to intelligently process queries across chunks. Ммм, прикольно

Ivan
02.10.2018
18:51:16
Чуваки начинали по-тихоньку, а потом выстрелило. Получили кучу инвестиций, но продолжают в опенсорс, буквально недавно был релиз 1.0

Bogdan
02.10.2018
18:51:39
Интересно, а gin индексы по чанкам разбивает? А-то у нас полнотекстовый поиск тормозит, партиционировать по времени создания записи хотим

Ivan
02.10.2018
18:52:37
When indexing JSONB data across all fields that may be contained inside, it is often best to use a GIN index. PostgreSQL documentation has a nice description of the different types of GIN indexes available on JSON data. If in doubt, it is best to use the default GIN operator since it allows for more powerful queries:

https://docs.timescale.com/v0.12/using-timescaledb/schema-management#indexing-all-json

Bogdan
02.10.2018
18:54:02
Ухх, спасибо за наводку, нажо будет глянуть в эту сторону :)

Ivan
02.10.2018
18:54:33
Очень рекомендую, сам радовался, когда наресерчил это, ибо велосипедить собирались нехило))

Работает уже год под небольшой нагрузкой, но ни разу ничего не случилось (тьфу-тьфу)

Примерно 500 gps трекеров шлют примерно по 5-10 записей в минуту

Все пишется в гипертаблицу timescale

Vladimir
02.10.2018
18:57:35
а там нет ttl? просто дропать старые данные?

Александр
02.10.2018
18:57:41
Примерно 500 gps трекеров шлют примерно по 5-10 записей в минуту
С этим и postgres справится без экстеншна. Чем оно удобней? Намного быстрее?

Ivan
02.10.2018
18:57:47
мы должны хранить полтора года истории

когда у тебя база под 3 ТБ

Google
Ivan
02.10.2018
18:58:18
и все в одной таблице без шардинга))

https://blog.timescale.com/time-series-data-why-and-how-to-use-a-relational-database-instead-of-nosql-d0cd6975e87c

Этого достаточно, чтобы вкатиться

Yaroslav
02.10.2018
19:05:27
значительно быстрее
А что именно в нём значительно быстрее? Кстати, Вы (а не timescale.com) проводили какие-нибудь сравнительные тесты?

Ivan
02.10.2018
19:07:04
Опубликованных нет, но делали выгрузку массива данных по старой схеме и с помощью timescale, скорость работы отличается на порядок

К тому же сама гипертаблица дает возможность работать с данными как time-series, а не просто кортежи

Быстрее, потому что внутри чанки из коробки и оптимизации для работы с данными с первичной характеристикой - время

Yaroslav
02.10.2018
19:10:45
Опубликованных нет, но делали выгрузку массива данных по старой схеме и с помощью timescale, скорость работы отличается на порядок
А что такое "делали выгрузку массива данных"? Мне это, например, ни о чём не говорит. :( Какие это запросы (какого типа), примерно?

Ivan
02.10.2018
19:13:45
В статье пишут, про быстрые инсерты, а апдейты не очень у него?
а какие могут быть апдейты в метрики? time-series базы для этого не используются.

Bogdan
02.10.2018
19:14:18
У нас история переписки, текстовые сообщения, с полнотекстрвым индексом

Но у каждого есть таймстамп

Ivan
02.10.2018
19:15:46
А что такое "делали выгрузку массива данных"? Мне это, например, ни о чём не говорит. :( Какие это запросы (какого типа), примерно?
300 ГБ данных, это порядка истории за полгода для 500 объектов. Делали запросы на расчет суммарного пробега за это время, среднюю скорость движения, доля времени проведенная в движении или на стоянке и подобные бизнес-задачи. Еще раз повторюсь, делалось это без документаци и на коленке. Нам было достаточно того, что мы увидели.

Но у каждого есть таймстамп
вот про такой кейс ничего не скажу, лучше им написать в слаке или еще где, ребята очень отзывчивые и почти сразу отвечают

Ivan
02.10.2018
19:17:47
То есть, грубо говоря, большинство запросов идёт ко всем данным?
Нет, наоборот. Я просто попытался самые тяжелые назвать. Основной бизнес-кейс, это горячие данные за последнюю неделю, максимум месяц. Но когда начинаются квартальные, полугодовые и годовые отчеты - начинают насиловать всю базу

Проста эта штука позволяет делать твои таблицы time-series, не знаю как еще это объяснить)

Короче, вот что можно делать https://docs.timescale.com/v0.12/api#time_bucket

И прочие вытекающие из time-series подхода

Google
Ivan
02.10.2018
19:22:21
Кто работал со всякими метрика типа prometheus - поймет суть

Bogdan
02.10.2018
19:23:36
прикольно, в общем надо будет качнуть докер образ и поиграться А пока уже вылью то что есть, с ручным партиционированием на две таблицы 2 последних месяца, и все остальное

Ivan
02.10.2018
19:25:04
А какая (примерно) производительность в том и другом случае, на каком "железе"?
Intel Xeon E3-1271V3 HDD2x HDD SATA 4,0 TB Enterprise RAM4x RAM 8192 MB DDR3 ECC честная железка

А какая (примерно) производительность в том и другом случае, на каком "железе"?
Получить список точек с пост-обработкой (фильтрация кое-какая и прочие бизнес-дорасчеты) за месяц на старой системе - 1 минута, на новой 10 секунд

Причем для новой схему удаленность данных от настоящего времени не важна, для старой схемы, чем старее данные, тем дольше они достаются

Yaroslav
02.10.2018
19:30:27
Получить список точек с пост-обработкой (фильтрация кое-какая и прочие бизнес-дорасчеты) за месяц на старой системе - 1 минута, на новой 10 секунд
Понятно, спасибо! > для старой схемы, чем старее данные, тем дольше они достаются Хмм... это как-то странно, вообще-то.

Andrei
02.10.2018
19:30:33
слушайте, вы какие-то непонятные страсти рассказываете

вот реально

Anton
02.10.2018
19:31:29
вопрос: есть 3 поля с датами date_a, date_b, date_c нужно вывести отсортированные записи по дате, по алгоритму date_a is not null`- для сортировки используется `date_a, date_b is not null`- для сортировки используется `date_b, и т.д как это сделать? и не будут ли проблемы с производительностью?

Anton
02.10.2018
19:35:48
Andrei
02.10.2018
19:40:04






вы рассказываете про какой-то волшебный тайм-сериес, но ванильный PG + pg_pathman без проблем решают кучу этих надуманных проблем

у нас есть две основные таблицы, они 95% обьема типовой базы из примера выше

Google
Andrei
02.10.2018
19:42:20
это, если что, не прод)

Ivan
02.10.2018
19:42:20
Стоп, pg_pathman решает проблему партицирования, но он делает данные time-series

А мне это нужно, я не решал проблему разбиения большой таблицы, если бы мне нужно было только это, я бы тоже самое сделал, как и вы

14 ТБ

Это на одном сервере? Что там за конфигурация?

Andrei
02.10.2018
19:43:54
я же три картинки бросил)

Ivan
02.10.2018
19:44:03
я про диски

Andrei
02.10.2018
19:44:15
12Гб мем + 6виртуальных ядер с HT

2Тб SSD

остальное - обычные

последние два месяца лежат на ссд

Yaroslav
02.10.2018
19:45:28
2Тб SSD
Вот это Вы явно делаете не так, как они. ;) И про производительность ничего не рассказали...

Andrei
02.10.2018
19:45:29
по мере старения переезжают на медленные диски

Ivan
02.10.2018
19:46:31
по мере старения переезжают на медленные диски
Похоже на нашу прошлую схему, только база до таких размеров не дорастала. 14 тб это конечно сильно лул

Andrei
02.10.2018
19:46:50
сильно что?)

Ivan
02.10.2018
19:46:59
А HDD диски как связаны, в плане там же одна гиганская таблица, как она на разных физических дисках живет?

сильно что?)
я не сталкивался с таким объемом сингл-базы постгри

Andrei
02.10.2018
19:47:52
мы же секционировали данные, партиции лежат в разных тейбспейсах)

Страница 1012 из 1062