Задать вопрос
  • Почему могут не создаваться итемы в zabbix?

    Melkij
    @Melkij
    Логи где?
    Смотрите логи. Как заббикса, так и базы.

    сервер вроде не слабый (32 Гб ОЗУ, 4-ядерный процессор, жесткий диск только не ssd)

    У меня десктоп такой уже давно, а не то что сервер.
  • Какое ПО для резервного копирования выбрать для возможности отправки по FTP и/или облака, а также сжатие, шифрование?

    Melkij
    @Melkij
    pg_dump - крайне неудобная вещь: работает через планировщик батниками, нет шифрования, нет сжатия(не нашел по крайней мере), нет возможности отправить на почту

    Потому что вы путаете инструмент снятия резервной копии и инструмент управления резервными копиями.
    Это разные вещи.
    Переизобрести pg_dump и поддерживать его актуальность вслед за всеми релизами postgresql трудоёмко и абсолютно не нужно для систем управления бекапами. Проще и лучше взять штатный уже написанный pg_dump и вызвать его из pre-backup скрипта, скопировать полученные файлики куда надо как обычный бекап, почистить эти временные файлики после.
    И чем пытаться изобрести бесполезный забагованный комбайн неполных или даже ошибочных резервных копий - разделить инструменты на подходящие. Unix-way, утилита делает одно дело, но делает его внятно.
    PS: сжатие есть в форматах custom и directory. В plain нет и невозможен, тк это plain text должен быть на выходе по определению. Что не мешает через pipe отправить на вход архиватору. Впрочем, custom банально удобнее.

    bareos/bacula - главное не запутаться в паролях fd/sd/director какой указывается где. Дальше просто.
  • Отваливаеться hdd от raspberry pi 3b+?

    Melkij
    @Melkij
    Собственно, официально: https://www.raspberrypi.org/documentation/hardware...

    The USB ports on a Raspberry Pi have a design loading of 100mA each - sufficient to drive "low-power" devices such as mice and keyboards. Devices such as WiFi adapters, USB hard drives, USB pen drives all consume much more current and should be powered from an external hub with its own power supply. While it is possible to plug a 500mA device into a Pi and have it work with a sufficiently powerful supply, reliable operation is not guaranteed.
  • Отваливаеться hdd от raspberry pi 3b+?

    Melkij
    @Melkij
    Попробуйте с внешним питанием. Тонкие цепи питания rpi точно не рассчитаны на питание мощных потребителей, к которым относятся механические диски, особенно на старте.
  • Отваливаеться hdd от raspberry pi 3b+?

    Melkij
    @Melkij
    Если диск подключен только к малинке (на что намекает owncloud) - но нафига там ntfs?
    По теме - питание к диску как подведено?
  • Как осуществлять быстрый поиск по вхождениям?

    Melkij
    @Melkij
    Не представляю как по нормализованным лексемам можно искать вхождение произвольной подстроки.

    А триграммный индекс будет просто большой.
  • Как скорректировать время в результате select?

    Melkij
    @Melkij
    И как это противоречит моему ответу?
  • Повысить максимальную память для composer?

    Melkij
    @Melkij
    mmap() failed и Out of memory вместо Allowed memory size exhausted - а у вас физически-то память есть? Судя по ошибкам - нет.
  • Как работать с БД Postgres и 1с?

    Melkij
    @Melkij
    Опубликовали веб сервис

    Приглядитесь, автор вопроса о чтении напрямую с БД. А прикрутить вместо этого экспорт какими-нибудь штатными средствами и работать уже с этим я как раз и предлагаю.

    Да вроде очень даже неплохо работают, в чем неумение?

    Во всём. От дизайна схемы, написания запросов до в принципе самого подхода к БД.
  • Сколько максимально коннектов может выдержать postgresql-9?

    Melkij
    @Melkij
    48 потоков

    Всего лишь.
    20 активных процессов на каждое ядро, плюс не считая скорей всего немалый %system за очень много fork/sec

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

    В каком мане?
    У postgresql нет встроенного пула коннектов.
    Могу сослаться на man pgbench, посмотрите что делают как -c так и -C опции.
    Документация по pgbouncer там: pgbouncer.github.io
    Документацию на возможно имеющийся пул коннектов в вашей библиотеке приложения - вы не написали ничего о приложении.
  • Как ускорить запрос с DISTINCT в PostgreSQL?

    Melkij
    @Melkij

    UPD: пожалуй, выключать enable_seqscan в любом случае стоит только из интереса и экспериментов.

    Только для экспериментов, да. Как и другие enable_* крутилки планировщика.
    Кстати, seqscan на самом деле выключить нельзя, off просто задирает планировщику стоимость seqscan в небо.

    Касательно партицирования - это в первую очередь инструмент для управления и архивации данных, а не производительности. Когда вместо долгого delete просто и быстро отстёгивается раздел и уносится в архив, а при необходимости точно так же обратно пристёгивается обратно.
    Хотя для производительности тоже использовать можно, и в эту сторону есть порядком улучшений в последние года. Для всего лишь 25 млн впрочем вряд ли имеет смысл.

    Предположим из 25 миллионов которые есть в таблице, 5 миллионов соответствуют этому условию:

    А далее следует классический вопрос DBA: а нафига вам на приложении понадобилось разом 5 млн строк? Что вы с ними делать будете? Пользователю вывалите?
  • Как ускорить запрос с DISTINCT в PostgreSQL?

    Melkij
    @Melkij
    Индексы целесообразны селективные. Если читать надо половину таблицы (или всё таблицу как здесь) - то это дешевле сделать последовательным перебором.
    Если надо прочитать 10 строк из миллиарда - индекс нужен.
  • Как правильно заресторить postgres cluster?

    Melkij
    @Melkij
    Ответьте на этот вопрос сами.
    cp: can't stat '/var/lib/postgresql/cluster/0000000100000022000000FE': No such file or directory

    Мне здесь добавить нечего. Требуемого сегмента нет - восстановление невозможно.
  • Как ускорить запрос с DISTINCT в PostgreSQL?

    Melkij
    @Melkij
    Настроить под своё железо max_parallel_workers_per_gather, max_worker_processes, max_parallel_workers
    https://www.postgresql.org/docs/current/runtime-co...
  • Как правильно заресторить postgres cluster?

    Melkij
    @Melkij
    Важна конфигурация.


    На данный момент вы сконфигурировали неверно. restore_command не смог получить требуемый базой сегмент WAL.
  • Как ускорить запрос с DISTINCT в PostgreSQL?

    Melkij
    @Melkij
    Как понять используется ли вообще какой либо индекс в запросе?

    parallel seq scan.
    Читали последовательно в несколько независимых потоков без использования индексов.

    Такое ощущение, что индексирование и не используется планировщиком PostgreSQL 11.

    Планировщик генерирует много возможных планов выполнения запроса, затем выбирает тот, который по его подсчётам стоит дешевле - потому и называется cost-based.
    Читать весь индекс, затем потенциально для каждой строки ползти с random access в данные таблицы для проверки, а видит ли ваша транзакция эту строку - рассматривается как очень сильно дороже, чем пройти последовательно сразу по таблице.
  • Как ускорить запрос с DISTINCT в PostgreSQL?

    Melkij
    @Melkij
    Как я понял из ваших слов явно использовать определенный индекс в запросе не получится и планировщик сам решает что ему использовать.

    Совершенно верно

    по крайней мере можно узнать какой индекс используется в запросе

    explain показывает что по поводу запроса думает планировщик и что тот передаст на вход executor'у
    explain analyze показывает, как реально был выполнен запрос.
    А explain (analyze, buffers) да на включенном track_io_timing ещё покажет сколько блоков трогали и как долго ждали диски.

    Ребята выше советуют отказаться от конкатенации.

    Какие-то копейки даст, глобально - всё равно группировка всей большой таблицы быстрой быть не может.

    Запрос без distinct работает быстрее.

    set max_parallel_workers_per_gather to 0 и будут равны на уровне погрешности. Потому что это один и тот же запрос с точки зрения реализации.
    Просто на один запуск нашлось несколько штук свободных воркеров для активации параллельного исполнения запроса. Запрос считали в 3 ядра - вот и получили execution time в 3 раза меньше.
  • /etc/network/interfaces. FAILED. Что делать?

    Melkij
    @Melkij
    а вы уверены, что ваш интерфейс называется eth0?
  • Почему не работает правило конфига на удаленный доступ к базе postgres?

    Melkij
    @Melkij
    Значит сами разрешили. Смотрите остальные правила pg_hba.conf