@pgsql

Страница 948 из 1062
Yaroslav
21.08.2018
20:22:37
А писал-то я о другом, о функциональных индесах / индексах по выражению. CREATE INDEX ON ... ((column—>attribute)).

Google
Yaroslav
21.08.2018
20:23:42
Yaroslav читал что с версии 9.5 можно какой то ключ только обновить
А обновится-то на диске всё равно вся запись! :)

Антон
21.08.2018
20:24:33
А обновится-то на диске всё равно вся запись! :)
К нас не будет кучи товаров. Там товаров не более 5 тыс уникальных. А то и меньше.

Yaroslav
21.08.2018
20:24:44
Т.е. будет создан row version "целиком", никуда Вы от этого не денетесь (разве что в TOAST попадёт). И, кстати, при обновлении других полей в той же таблице... см. выше. :(

Антон
21.08.2018
20:24:58
И нагрузки высокой не планируется

Yaroslav
21.08.2018
20:26:51
И нагрузки высокой не планируется
Тогда всё, что сзязано с производительностью, для Вас действительно неважно. :) Остаётся только корректность... а про неё я основное уже, вроде, написал. Ну и удобство написания запросов, но это зависит от нужных запросов.

Ilia
21.08.2018
20:28:31
Тавой-то. Поле V в EAV таблице какого типа?
Какого надо. Какого атрибут , такого и типа поле

Yaroslav
21.08.2018
20:28:57
Спасибо ещё раз за советы. Будем пробовать )
Да не за что... К тому же, и советовал-то я в другом направлении. ;) Если будет возможность, поделитесь здесь впечатлениями после какого-то времени эксплуатации?

Yaroslav
21.08.2018
20:29:52
Какого надо. Какого атрибут , такого и типа поле
Так вот реляционная модель такого не допускает, такие дела. Мелочь, казалось бы... но на том и конец. ;)

Ilia
21.08.2018
20:30:07
Ну я подумал что буду валидировать с помощью таблицы метаданных. Мне в eav не нравится то что значение это строка
Просто у тебя неправильный EAV. Вот такой да, Антипаттерн. Но кто тебя заставляет все атрибуты в строках хранить?

Yaroslav
21.08.2018
20:32:30
Просто у тебя неправильный EAV. Вот такой да, Антипаттерн. Но кто тебя заставляет все атрибуты в строках хранить?
Не имеет это значения, в данном случае. Имеются в виду домены, в понимании реляционной теории.

Google
Ilia
21.08.2018
20:33:33
И чё, домены,и чего с ними?

Yaroslav
21.08.2018
20:34:45
Все она допускает, если делать правильно
А бумага всё стерпит, да. Только не всё, что можно написать на бумаге с помощью математических символов, является выражением. Тут точно та же проблема, т.е. EAV вот очень похожа на множество отношений... но нет.

Ilia
21.08.2018
20:34:53
Ты можешь в EAV делать хоть по таблице на тип атрибута, и все будет ок. Ну, таблиц будет больше на 2-3 десятка...

Yaroslav
21.08.2018
20:36:28
И чё, домены,и чего с ними?
Всё то же. У поля "V" нет никакого конкретного домена. Для проверки, FK с него Вы никуда не сделаете.

Ты можешь в EAV делать хоть по таблице на тип атрибута, и все будет ок. Ну, таблиц будет больше на 2-3 десятка...
Мы всё ещё про EAV говорим? ;) Когда по таблице на атрибут, в виде: (id_товара, время_высыхания) (id_товара, напряжение) Это уже совсем даже не EAV.

Ilia
21.08.2018
20:39:13
Это EAV

Кто мешает?

Evgeniy
21.08.2018
22:25:14
https://pbs.twimg.com/media/DlIDzZqXsAEwtnS.jpg

мой блог недостаточно популярен

Yaroslav
21.08.2018
22:25:45
Это EAV
Нет. Где тут E-A-V?

Можно так, можно по таблице на тип атрибута, тот самый твой домен...
Никто, только это совсем другая (и уже реляционная) модель. :)

Evgeniy
21.08.2018
22:26:37
почему у Ярослава еще нет админской должности

камон

Anton
22.08.2018
02:40:33
Я тоже за flat table

Dmitriy
22.08.2018
04:38:22
Всем привет! 20 сентября мы устраиваем митап по лучшей open-source реализации шардированного postgres'а - массивно-параллельной СУБД Greenplum. Если вы задумывались: - как растянуть вашу БД на десятки и сотни серверов (сохранив полную совместимость с PostgreSQL) - как хранить сотни ТБ реляционных данных - как выполнять на таких объёмах сложные аналитические запросы Приходите на митап и узнайте всё из первых рук! Митап будет проходить на территории самого крупного пользователя Greenplum в России - Tinkoff.ru

https://meetup.tinkoff.ru/events/greenplum-meetup

Egor
22.08.2018
04:39:22
А в онлайне никак не посмотреть? -_-

Dmitriy
22.08.2018
04:39:57
Трансляцию в этот раз увы не получается сделать( Но будут записи после

Egor
22.08.2018
04:40:20
а то те, кто живут далеко-далеко тоже интересны такие вещи =)

Google
Dmitriy
22.08.2018
04:42:12
Попробую ещё раз выбить трансляцию, ок)

Egor
22.08.2018
04:43:21
Попробую ещё раз выбить трансляцию, ок)
спасибо. Если что объявление же здесь будет?

Dmitriy
22.08.2018
04:44:05
Да, я ещё сделаю несколько анонсов ближе к дате и тогда уточню что с трансляцией

Yaroslav
22.08.2018
08:30:03
> The site at https://postgres.ru/ has experienced a network protocol violation that cannot be repaired. Если это кому-то интересно. ;)

Anatoly
22.08.2018
08:50:52
https://www.endpoint.com/blog/2016/09/19/pghealer-repairing-postgres-problems "оо, да какой клевый проект... а черт.... умер 2 года назад..."

Terminator
22.08.2018
11:00:12
@tempik будет жить. Поприветствуем!

Ivan
22.08.2018
11:02:32


wal’oв еще на несколько дней вперед, до достижения этой точки обработка занимала 10-15 сек, после - 2-3 мин

куда копать?

Anton
22.08.2018
11:03:33
Кто авито сломал ? )

Subb98
22.08.2018
11:13:47
кто-то допарсился :D

Sergey
22.08.2018
11:14:58
А похоже по LSN что consistent state - это точка в которой закончился backup?

Grigory
22.08.2018
11:22:34
Жесть, попробую воспроизвести.

Какая версия PG?

Sergey
22.08.2018
11:23:39
Какая версия PG?
Может до точки backup-end оно просто сравнивает md5 блоков и ей в основниом ничего с ними делать не надо?

А потом хочешь-не-хочешь всё что в WAL надо творчески переосмыслить и вылить на диск?

Grigory
22.08.2018
11:24:50
Sergey
22.08.2018
11:26:18
ОК. Сравнить блок в WAL от full_page_writes с блоком с диска. Убедиться что они идентичны и ничего в диск не писать?

Опять же если full-page-writes то md5 должно приезжать вместе с блоком в WALе?

Grigory
22.08.2018
11:28:57
ОК. Сравнить блок в WAL от full_page_writes с блоком с диска. Убедиться что они идентичны и ничего в диск не писать?
Такого он вроде не умеет. И если бы умел, не было бы оснований переставать это делать после точки консистености

Google
Sergey
22.08.2018
11:31:51
Grigory
22.08.2018
11:32:04
Там есть сравнение LSN, если бэкап совершался в момент, когда отсутствовала активная запись, то накат вала до точки консистености будет относительно быстрый за счет этого

Sergey
22.08.2018
11:32:37
А сравнение LSN чего с чем?

Grigory
22.08.2018
11:33:29
LSN в блоке в датафайле с LSN применяемой записи

Sergey
22.08.2018
11:34:24
Т.е. в header блока есть максимальный LSN с которым были изменения в блоке?

Grigory
22.08.2018
11:35:08
Ага

Sergey
22.08.2018
11:35:31
Ну тем легче

Так последовательные изменения одного и того же блока приведут только к одной финальной записи этого блока.

Ivan
22.08.2018
11:40:46
общий размер БД 1.1Т

Grigory
22.08.2018
11:41:14
А минорная версия какая?

Mikhail
22.08.2018
11:46:16
может быть из-за массового DDL в момент, который воспроизводится. shared_buffers какого размера?

Grigory
22.08.2018
11:47:42
Mikhail
22.08.2018
11:48:23
DDL замедлил бы применение вала и до точки консистентности
а там его могло и не быть. WALы декодить надо чтобы сказать точно

Grigory
22.08.2018
11:48:31
А тут раз и секунды превращаются в минуты

Mikhail
22.08.2018
11:49:59
А тут раз и секунды превращаются в минуты
ну так мыж наблюдали уже такое...

Grigory
22.08.2018
11:51:00
Да, но тут такое началось именно после точки согласованности, мне кажется маловероятным, что сразу после нее в вале попер DDL

Google
Mikhail
22.08.2018
11:52:02
ты уверен, что оно завязано на точку консистентности или это просто совпадение? Давайте посмотрим на размер shared_buffers и на потребление проца процессом рекавери

Grigory
22.08.2018
11:53:40
8GB (всего 16 Гб)
можете натравить pg_xlogdump на сегмент WAL`а ***0D3?

Ivan
22.08.2018
11:54:13
характер потребления ресурсов не изменился , как до точки, так и после нее - postmaster есть одно ядро

сейчас даже меньше

Mikhail
22.08.2018
11:55:03
ну с другой стороны и диск загружен

Ivan
22.08.2018
11:55:04


ну с другой стороны и диск загружен
я тоже смотрел сначала на %util , но простейший тест с DD выдает совершенно другие цифры

Grigory
22.08.2018
11:55:59
dd не эмулирует рандомное обращение

Ivan
22.08.2018
11:56:28
dd не эмулирует рандомное обращение
верно. не подскажете, чем тогда лучше замерить?

Grigory
22.08.2018
11:56:43
fio

Mikhail
22.08.2018
11:59:11
Иван, ну смотрите, если есть возможность попробовать, то можно на время восстановления попробовать уменьшить shared_buffers (до 256МБ например) и посмотреть как оно или попробовать 9.6.10 (там было исправлено "Improve performance of WAL replay for transactions that drop many relations" https://www.postgresql.org/docs/9.6/static/release-9-6-10.html) может это Ваш случай

Mikhail
22.08.2018
12:03:55
по умолчанию считаем что совместимы. Но, в случае postgres, нельзя ни в чём быть уверенным, поэтому если решитесь обновляться, то внимательно почитайте release notes (бывает нужны доп действия)

Ivan
22.08.2018
12:15:38


result of fio

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