@pgsql

Страница 642 из 1062
Kirill
23.01.2018
08:07:00
Очень интересно, а RuntimeAppend получается не видно через EXPLAIN ANALYZE? или нужно его специально включать?

Dmitry
23.01.2018
08:07:19
Он включен по умолчанию, и его видно в explain

При explain analyze он выводит только те партиции, которые были прочитаны

Посмотрите readme, там есть примеры плана

Google
Kirill
23.01.2018
08:13:11
Спасибо

Данил
23.01.2018
08:36:50
Всем привет. Подскажите есть для PostgreSQL внемяемый dashboard , пофункционалу похожий на Oracle EM ?

Mike Chuguniy
23.01.2018
09:23:40
Мы же про запуск pgadmin правда? И про работу на машине админа и пр .
Нет, я про работу с удалённой БД, к которой доступ есть только по через ssh.

Данил
23.01.2018
09:23:49
Нету
прямо печаль - беда.

Alex
23.01.2018
09:24:33
прямо печаль - беда.
Дешборд для чего надо? Поссотреть там cpu память кеши и пр?

Данил
23.01.2018
09:25:18
Дешборд для чего надо? Поссотреть там cpu память кеши и пр?
ага, медленые запросы, планы их. состояние сервера БД ну и да , кэши всякие, использование индексов...

Alex
23.01.2018
09:25:31
Anton [Mgn, az09@osm]
23.01.2018
09:26:32
правда я подозреваю что каждый пилит свой велосипед

Alex
23.01.2018
09:27:42
ага, медленые запросы, планы их. состояние сервера БД ну и да , кэши всякие, использование индексов...
Такой роскоши пока нет. Если только анализ log файлов посредством pgbadger. В реальном времени есть агент mamonsu для zabbix

Google
Николай
23.01.2018
09:28:57
есть ещё okmeter :)

Mike Chuguniy
23.01.2018
09:30:40
А я свои скрипты для кактуса и нагиоса писал в свое время на перле...

Данил
23.01.2018
09:41:16
в том и дело что много разных утилит или плагинов, но что тотакое ввиде более менеее законченного продукта нету.

после использования Oracle EM прям печаль

Alexey
23.01.2018
09:59:40
после использования Oracle EM прям печаль
а у EnterpriseDB же был какой-то свой EM

Данил
23.01.2018
09:59:54
Alexey
23.01.2018
10:00:11
а, надо крутой enterprise, но чтобы нахаляву

Дмитрий
23.01.2018
10:01:01
но оно платное. :(
https://blog.dbi-services.com/em13c-and-postgres-plugin/

Данил
23.01.2018
10:03:00
https://blog.dbi-services.com/em13c-and-postgres-plugin/
интрересненько. нужно будет почитать

Дмитрий
23.01.2018
10:04:04
там плагин надо скачать отдельно, врядли он бесплатный..

хотя триал дают, скачайте, потыкайте

Alex
23.01.2018
10:10:26
Alexey
23.01.2018
10:10:47
серьёзно? мда

Alex
23.01.2018
10:11:35
А откуда им годную основу то то взять. Не придумано еще ничего лучше.

Alexey
23.01.2018
10:12:31
MySQL Enteprise Manager написан с нуля. правда его пишут года так с 2005-го

Данил
23.01.2018
10:14:50
хотя триал дают, скачайте, потыкайте
что то я не нашел там ссылку. нашел только плагин для newrelic. Если можете скиньте линк

Дмитрий
23.01.2018
10:16:02
щаа

https://bluemedora.com/guide-to-installing-oracle-em-plugin-for-postgresql/

а вот запрос на демку

Google
Дмитрий
23.01.2018
10:16:52
https://bluemedora.com/request-form/

и краткая презенташка

https://bluemedora.com/wp-content/uploads/2016/10/Plugin-PostreSQL-Nov-2017.pdf

Dmitry
23.01.2018
15:16:42
https://bluemedora.com/wp-content/uploads/2016/10/Plugin-PostreSQL-Nov-2017.pdf
интересно как они высчитывают statement hash https://i.imgur.com/2GxpXsQ.png

вообщем хотел проконсультроваться. хочется хранить метрики в postgresql, у метрики кроме ключа есть tags в виде: k1=v1, k2=v2. хотел посоветоваться в каком виде лучше хранить tags в postgresql

в основном запросы без участия tags, но некоторые запросы будут такого плана: sum() group by tags where tags.k1= 'key1' avg(), tags.value group by tags where tags.k1 = 'key1'

Mikhail
23.01.2018
15:46:22
Селективные условия?

Evgeniy
23.01.2018
15:49:49
храни в кликхаусе

andrey
23.01.2018
15:58:32
у меня глупый вопрос помогите разобраться: ` SELECT month_d as date, AVG (extract(day from pmo._days.month_d::timestamp - bench_assignments.startdate::timestamp )) as "BAD", COUNT ( ??? ) as "Employee" FROM pmo._days join bench_assignments..... ...... .... ` я могу в count вставить запрос тот что чтобы пощитать количество людей к определеной дате ? SELECT * FROM pmo.assignment WHERE pmo.assignment.billable_status_id IN ( 2, 4 ) AND month_d BETWEEN pmo.assignment.startdate AND pmo.assignment.finishdate

Dmitry
23.01.2018
16:13:02
храни в кликхаусе
самый простой и скучный ответ :)

Evgeniy
23.01.2018
16:19:30
самый простой и скучный ответ :)
ну а чо городить неоптимальное

Dmitry
23.01.2018
16:20:23
ну а чо городить неоптимальное
1. мир не идеален :) 2. лишняя зависимость или оверхед в данном случае.

Evgeniy
23.01.2018
16:20:45
энивей у тебя задача блогов и тегов, ее уже решили в век веб2.0

делай как на хабре написали

Dmitry
23.01.2018
16:23:27
делай как на хабре написали
не поделитесь урлом?

Evgeniy
23.01.2018
16:23:52
к сожалению в дороге

но рекомендую подумать о кластеризации значений по метрике. чтобы не одна таблица для всех была

ато потом сиков много чтобы прочитать

Google
Evgeniy
23.01.2018
16:25:57
надо делать двойное наследование, сперва хеш от метрики а потом дата

теги отдельно лежат и мапят к айди метрики

потом надо только быстро прочитать нужное

для этого надо положить последовательно данные

самая жопа - сжимать данные в постгре плохо

Dmitry
23.01.2018
16:28:39
но рекомендую подумать о кластеризации значений по метрике. чтобы не одна таблица для всех была
create type value_type as enum ('int', 'double', 'string'); create table keys ( id SERIAL PRIMARY KEY, host_id SMALLINT REFERENCES hosts, value_type value_type NOT NULL, key TEXT NOT NULL ); create unique index keys_host_id_key_idx on keys(host_id, key); create table storage ( id SERIAL PRIMARY KEY, key_id INTEGER REFERENCES keys, timestamp TIMESTAMP WITHOUT TIME ZONE, value_int INTEGER, value_double FLOAT8, value_string TEXT, ... TAGS? );

Evgeniy
23.01.2018
16:28:44
вон ребята в прометеусе говорят что на измерение надо 16 байт. они жмут в среднем до 1.8 что ли

Dmitry
23.01.2018
16:28:45
ну да хотел по key_id

ну да хотел по key_id
insert и select через функцию в нужный 'partition' через иммутабельную функцию.

Evgeniy
23.01.2018
16:35:05
теги же обычно на весь поток а не на измерение вешается

зачем тебе тег туда

Dmitry
23.01.2018
16:36:19
disk=sda, disk=sdb - вот например тэги из двух прилетевших метрик

которые приходят с одного host_id

и в зависимости от key хочется использовать разные агрегаты, как sum так и avg но с группировкой по disk

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

Evgeniy
23.01.2018
16:41:27
так привяжи теги как хосты

потом начнёшь думать про шаблоны и сделаешь заббикс

Dmitry
23.01.2018
16:41:57
в key_id засунуть и значение тэга

потом начнёшь думать про шаблоны и сделаешь заббикс
шаблоны тоже есть но немного другие ;)

Yaroslav
23.01.2018
17:16:25
приложение не высоко нагруженное, но хочеться сделать грамотно.
Ну так сделайте нормализованное хранение, и всё.

Google
Dmitry
23.01.2018
17:35:15
Yaroslav
23.01.2018
17:36:27
ну вообщем оставил tags как hstore.
Дело Ваше, конечно...

Dmitry
23.01.2018
17:37:04
Дело Ваше, конечно...
большинство запросов не по тэгам, так что устроит

Александр
23.01.2018
18:19:00


https://youtu.be/SNzOZKvFZ68

Yaroslav
23.01.2018
18:39:20
А чего не jsonb?
Хмм... на первый взгляд JSON(b) именно для тегов —- это уж скорее плохое решение... В чём плюсы по сравнению с остальными?

Сергей
23.01.2018
18:43:46
Хмм... на первый взгляд JSON(b) именно для тегов —- это уж скорее плохое решение... В чём плюсы по сравнению с остальными?
Даёт больше возможностей. Да он имеет точно такой же функционал как и hstore, но зачем себя ограничивать?

Yaroslav
23.01.2018
18:46:19
Даёт больше возможностей. Да он имеет точно такой же функционал как и hstore, но зачем себя ограничивать?
Что такое "больше возможностей"? Или, в смысле, только по сравнению с hstore?

Сергей
23.01.2018
18:46:43
С hstore

Dmitry
23.01.2018
19:34:52
Даёт больше возможностей. Да он имеет точно такой же функционал как и hstore, но зачем себя ограничивать?
hstore, мне не нужно больше чем key-value + gin. https://gist.github.com/vadv/d140d39ce93d0577bfdf3800ed21e767 плюс есть такие замеры :)

hstore проще внутри устроен.



hstore проще внутри устроен.
поэтому мне кажется что он будет быстрее в моем юзкейзе k=v что подтверждают простые тесты ^^^^

Yaroslav
23.01.2018
20:10:05
поэтому мне кажется что он будет быстрее в моем юзкейзе k=v что подтверждают простые тесты ^^^^
Просто любопытно, имеют ли эти тесты хоть какое-то отношение к реальности... Т.е. у Вас действительно лишь сотни записей с сотнями "цифровых" тегов на каждый id?

Dmitry
23.01.2018
20:10:38
jsonb - это минимум 9.4. так что пока хер с ним. он не нужен.

Yaroslav
23.01.2018
20:16:42
jsonb - это минимум 9.4. так что пока хер с ним. он не нужен.
А это у Вас точно тэги? Я к тому, что зачем там key/value (а не просто массив tags)?

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