
Darafei
03.10.2018
18:42:48
А давайте про базы данных
У кого 11 уже в проде?

Ilya
03.10.2018
18:44:30
Но не совсем в проде, пока ещё без нагрузки.

Google

Darafei
03.10.2018
18:45:11

Ilya
03.10.2018
18:45:25
Верно...

Dmitry
03.10.2018
18:46:06

Ilya
03.10.2018
18:46:07
Переносим нашу базу с оракла на постгрес.

Mike Chuguniy
03.10.2018
18:47:00
У кого 11 уже в проде?
А если в ПГ критичные данные, которые нельзя превращать в тыкву? И даунтайм на восстановление не предусмотрен?

Stanislav
03.10.2018
18:47:22

Dmitry
03.10.2018
18:47:35

Ilya
03.10.2018
18:47:51
Но ведь 10 уже год
Да и 10-ку мне тоже пришлось оправдывать, дескать зачем нам нововведения непроверенные.

Dmitry
03.10.2018
18:47:53

Darafei
03.10.2018
18:48:37

Ilya
03.10.2018
18:48:55
Что-то обрежем, что-то перепишем, что-то вынесем из БД

Dmitry
03.10.2018
18:49:57

Google

Ilya
03.10.2018
18:50:27

Dmitry
03.10.2018
18:50:57

Ilya
03.10.2018
18:51:58

Dmitry
03.10.2018
18:53:51

Ilya
03.10.2018
18:55:28

Dmitry
03.10.2018
18:56:36

Ilya
03.10.2018
18:57:08

Bogdan
03.10.2018
21:45:40
Пдскажите, в постгре можно как-то логировать запросы, котоыре выполнялись на сервер за последнее время?
В MSSQL точно такое можно было сделать, точнее там можно было вытянуть их из кеша планов, AFAIK
В постгре как я понял нету ничего встроенного, может какой-то плагин есть?

Yaroslav
03.10.2018
21:49:20

Bogdan
03.10.2018
21:50:44

Yaroslav
03.10.2018
21:52:12
спасибо)
Хмм... а может, Вы что-то типа https://www.postgresql.org/docs/current/static/pgstatstatements.html имели в виду?
В общем, посмотрите, что из этого Вам было нужно. :)

Bogdan
03.10.2018
21:52:14
жаль что оно будет в текстовом файле. ан е в табилчке))
ERROR: pg_stat_statements must be loaded via shared_preload_libraries

Yaroslav
03.10.2018
21:55:55
жаль что оно будет в текстовом файле. ан е в табилчке))
Кто "оно"? Логи — да (хотя можно сделать их csv, и читать с помощью соответствующего FDW — всё это есть в документации).
А pg_stat_statements создаёт view.
> ERROR: pg_stat_statements must be loaded via shared_preload_libraries
Да, действительно, должен быть загружен именно так. ;)

Bogdan
03.10.2018
22:02:04

Yaroslav
03.10.2018
22:07:52

Bogdan
03.10.2018
22:08:26
как предусмотрительно с их стороны ?

Demuz
04.10.2018
06:01:32
Доброго времени суток! https://blogs.sungeek.net/unixwiz/2018/09/02/centos-7-postgresql-10-patroni/
В этой статье пишут всего об одном haproxy и etcd, скажите, а что будет, если сам haproxy упадет? Тогда коннекты к бд ни через что не будут "ходить"? Как в таком случае делают? haproxy + corosync?

Terminator
04.10.2018
07:01:49
@a114x будет жить. Поприветствуем!

Alexey
04.10.2018
07:30:54

Google

F
04.10.2018
07:35:44
Почему?
встроенные возможности nosql

Dmitry
04.10.2018
07:44:46
Почему?
Это уже было ясно с внедрением JSON в ядро. А внедрению JSON в ядро предшествовала возможность внедрения в ядро Hstore, с котором уже тогда было понятно, что в Postgres есть полноценный, индексируемый движок ключ/значение. Зачем что-то ещё?

Alexey
04.10.2018
07:50:06
memory storage key-value?
undo log для апдейтов в таблице?

Dmitry
04.10.2018
07:54:36

Alexey
04.10.2018
07:54:59
hstore в memory или на диске?

Dmitry
04.10.2018
07:55:02
JSON оправдан в случае полуструктурированных данных.
Когда у разных объектов может быть разный набор свойств.

Alexey
04.10.2018
07:56:32

Yaroslav
04.10.2018
07:59:19

Alexey
04.10.2018
07:59:21

Dmitry
04.10.2018
08:00:10

Yaroslav
04.10.2018
08:02:47

Dmitry
04.10.2018
08:08:32

Alexey
04.10.2018
08:09:21
Вы можете эти свойства тоже не описывать в postgresql и сделать всё нормализованно.
Если вдруг нужна денормализация (ну допустим ооочень удобно) => matview.
Миша и Костя из avito рассказывали про это.

Dmitry
04.10.2018
08:11:44

Alexey
04.10.2018
08:13:29
Проектируйте схему изначально так, чтобы это было нормой:
create table human_characteristics (name text, values text).
Складывайте эти характеристики сюда.

Google

Dmitry
04.10.2018
08:14:07

Alexey
04.10.2018
08:14:40

Yaroslav
04.10.2018
08:16:10

Anton [Mgn, az09@osm]
04.10.2018
08:16:31

Yaroslav
04.10.2018
08:16:54

Dmitry
04.10.2018
08:16:55
А потом приходят к БД с 4к таблиц ?

Alexey
04.10.2018
08:17:31

Dmitry
04.10.2018
08:18:05

Yaroslav
04.10.2018
08:18:37

Dmitry
04.10.2018
08:20:30
Хех. Тут даже думать не надо, чтобы понять, что ALTER TABLE + INSERT гораздо дороже INSERT в любом случае.

Yaroslav
04.10.2018
08:20:51
Чем?
Да Вы лучше конкретизируйте модель, а то вдруг я не так понял...

Dmitry
04.10.2018
08:21:23

Yaroslav
04.10.2018
08:22:02

F
04.10.2018
08:22:46

Dmitry
04.10.2018
08:23:12

F
04.10.2018
08:23:37
https://www.postgresql.org/docs/9.4/static/functions-json.html

Dmitry
04.10.2018
08:24:03

F
04.10.2018
08:24:25
спасибо, кеп

Google

Dmitry
04.10.2018
08:24:48

Yaroslav
04.10.2018
08:25:47
Мне не понятно о чём Вы.
О том, что описываемая Вами задача это "запихнуть в базу любой мусор, неважно, что там".
Указанные СУБД очень помогают в её решении.
Но структурированные данные, обычно, совсем не мусор.
И если что-то пытается вставить то, что база запрещает (чего нет в схеме) — это ошибка вставляющего.

Dmitry
04.10.2018
08:26:30

Terminator
04.10.2018
08:26:56
@Irina_shv будет жить. Поприветствуем!

Alexey
04.10.2018
08:26:56
Я изначально предполагал, что все характеристику будут текстовые, числовые (иногда тоже можно в виде текста представить).
Ну а далее вставлеете insert into table h_c ('расса', 'афроамериканец'), ('длинный', '1'), ('съел апельсинов', '10'), ('вес', '55.123'), ('массив', 'element1'), ('массив', 'element2').
В примере типы: строка, булево значение, число, не целое число, массив.
UPDATE.
Вероятно придётся колонку с типом ещё добавить.

Dmitry
04.10.2018
08:27:06
Я изначально предполагал, что все характеристику будут текстовые, числовые (иногда тоже можно в виде текста представить).
Ну а далее вставлеете insert into table h_c ('расса', 'афроамериканец'), ('длинный', '1'), ('съел апельсинов', '10'), ('вес', '55.123'), ('массив', 'element1'), ('массив', 'element2').
В примере типы: строка, булево значение, число, не целое число, массив.
UPDATE.
Вероятно придётся колонку с типом ещё добавить.
Массивы не индексируются в отличии от JSON.

Alexey
04.10.2018
08:29:26

Yaroslav
04.10.2018
08:29:39