Size: a a a

pgsql – PostgreSQL

2020 May 26

VG

Viktor Grigorev in pgsql – PostgreSQL
у меня пока не произошло случая, но я вижу перед собой сервер с ssd без power fail protection, неоднократно слышал, что так делать нельзя и это все равно что fsync=off сделать
источник

СГ

Сергей Голод... in pgsql – PostgreSQL
Viktor Grigorev
> Рассматривайте ssd без батарейки как обычный жесткий диск, просто очень быстрый.
я не очень понимаю, что это значит. hdd со все временем может размагничиваться типа?
нет. я это к тому что СУБД не умеет работать с дисками напрямую и для СУБД все диски "равны" друг перед другом
источник

СГ

Сергей Голод... in pgsql – PostgreSQL
Viktor Grigorev
у меня пока не произошло случая, но я вижу перед собой сервер с ssd без power fail protection, неоднократно слышал, что так делать нельзя и это все равно что fsync=off сделать
для некоторых ФС потеря питания при записи может вызвать повреждение данных, это так. Тут не только СУБД может пострадать, но и системные файлы и другие приложения.
источник

VG

Viktor Grigorev in pgsql – PostgreSQL
Хочется понимать, как действовать, если вдруг проблема случится, насколько трудозатрано будет вернуться к нормальному состоянию. Я так понимаю, есть несколько вариантов
сложный вариант - мы правим байтики в postgres-овых страницах, если знаем свои данные и можем вернуть их в консистентное состояние руками (тут наверно без checksums никак или сильно сложнее)
чуть более простой вариант - удалить проблемные данные (если есть checksums, наверно можно локализовать страницы и как-то очистить их)
самый простой - знаем когда проблема случилась, откатываемся на последний достоверно валидный backup
источник

МШ

Михаил Шурутов... in pgsql – PostgreSQL
Viktor Grigorev
Хочется понимать, как действовать, если вдруг проблема случится, насколько трудозатрано будет вернуться к нормальному состоянию. Я так понимаю, есть несколько вариантов
сложный вариант - мы правим байтики в postgres-овых страницах, если знаем свои данные и можем вернуть их в консистентное состояние руками (тут наверно без checksums никак или сильно сложнее)
чуть более простой вариант - удалить проблемные данные (если есть checksums, наверно можно локализовать страницы и как-то очистить их)
самый простой - знаем когда проблема случилась, откатываемся на последний достоверно валидный backup
Когда бьются файлы данных, есть только один правильный способ восстановления работоспособности: восстановление из бекапа. Всё. Иное - рукоблудство и красноглазие с гарантированным неуспехом.
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Viktor Grigorev
Хочется понимать, как действовать, если вдруг проблема случится, насколько трудозатрано будет вернуться к нормальному состоянию. Я так понимаю, есть несколько вариантов
сложный вариант - мы правим байтики в postgres-овых страницах, если знаем свои данные и можем вернуть их в консистентное состояние руками (тут наверно без checksums никак или сильно сложнее)
чуть более простой вариант - удалить проблемные данные (если есть checksums, наверно можно локализовать страницы и как-то очистить их)
самый простой - знаем когда проблема случилась, откатываемся на последний достоверно валидный backup
Все варианты, кроме последнего (в норме, "усиленного" WAL archive и/или репликой) — "вон из профессии" для DBA, IMNSHO. ;)
источник

SP

Sergei Pavlov in pgsql – PostgreSQL
Ребят всем привет! Подскажите можно ли как-то ускорить обработку сервером постгреса большого количества (примерно 300-500шт) однотипных запросов (одинаковых, только выбирающих в фильтре единственную меняющуюся дату)? Запросы генерятся одновременно 1 раз в сутки и ставятся в очередь. На стороне потребителя данных ничего не изменить (обьединить за период нельзя, уж так он работает)
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Sergei Pavlov
Ребят всем привет! Подскажите можно ли как-то ускорить обработку сервером постгреса большого количества (примерно 300-500шт) однотипных запросов (одинаковых, только выбирающих в фильтре единственную меняющуюся дату)? Запросы генерятся одновременно 1 раз в сутки и ставятся в очередь. На стороне потребителя данных ничего не изменить (обьединить за период нельзя, уж так он работает)
Вы бы запросы и их планы (EXPLAIN (ANALYZE, BUFFERS)) показали, что ли...
источник

SP

Sergei Pavlov in pgsql – PostgreSQL
Yaroslav Schekin
Вы бы запросы и их планы (EXPLAIN (ANALYZE, BUFFERS)) показали, что ли...
Пока нет возможности это сделать, нет доступа, коллеги объяснили суть проблемы и попросили узнать. Пример запроса могу скинуть
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Sergei Pavlov
Пока нет возможности это сделать, нет доступа, коллеги объяснили суть проблемы и попросили узнать. Пример запроса могу скинуть
Ну хотя бы так. И хоть сколько примерно выполняется каждый, какие размеры таблиц?
Но посмотреть планы было бы намного лучше, скорее всего.
источник

SP

Sergei Pavlov in pgsql – PostgreSQL
Вот пример
источник

VY

Victor Yegorov in pgsql – PostgreSQL
Ilya Kaznacheev
Господа, подскажите какой-нибудь годный материал про устройство транзакций в бд
Именно как они реализованы на уровне ПО базы, какими архитектурными решениями обеспечивается ACID
если читаете по-английски, то ISBN 9781558605084: Transacional Information Systems, Weikum, Vossen
источник

Z

ZHU in pgsql – PostgreSQL
привет всем подскажите как можно скопировать данные с одной таблицы в другую с изменение одного значения ?
SELECT * INTO в_какую_таблицу FROM из_какой_таблицы WHERE условие

где тут можно вставить что бы tank_id передать свое значение ?
источник

VY

Victor Yegorov in pgsql – PostgreSQL
ZHU
привет всем подскажите как можно скопировать данные с одной таблицы в другую с изменение одного значения ?
SELECT * INTO в_какую_таблицу FROM из_какой_таблицы WHERE условие

где тут можно вставить что бы tank_id передать свое значение ?
вместо SELECT * явно перечислять колонки, заменяя “ненужные” на другие выражения
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
И сколько примерно один такой выполняется, опять-таки (может, стоило бы сам этот запрос оптимизировать)?
источник

АЛ

Андрей Лапин... in pgsql – PostgreSQL
день добрый
источник

АЛ

Андрей Лапин... in pgsql – PostgreSQL
версия 9.6. идут ошибки:
ПРЕДУПРЕЖДЕНИЕ:  база данных "DB" должна быть очищена (предельное число транзакций: 999995)
источник

АЛ

Андрей Лапин... in pgsql – PostgreSQL
ПОДСКАЗКА:  Во избежание отключения базы данных выполните очистку (VACUUM) всей базы.
источник

АЛ

Андрей Лапин... in pgsql – PostgreSQL
в однопользовательском режиме запуск vacuum не помогает
источник

YS

Yaroslav Schekin in pgsql – PostgreSQL
Victor Yegorov
если читаете по-английски, то ISBN 9781558605084: Transacional Information Systems, Weikum, Vossen
Вот бы что-нибудь поновее, кстати (описания новых методов в книге 2002 года точно не будет)...
источник