Skip to content

Instantly share code, notes, and snippets.

View mizhka's full-sized avatar

Michael Zhilin mizhka

  • PostgresPro
  • Moscow
View GitHub Profile
@mizhka
mizhka / proxmox-perf.yml
Last active September 3, 2024 18:23
Ansible playbook for MaxPerformance
- name: tune operating system
hosts: all
become: true
vars:
sysctl_settings:
- { key: 'vm.swappiness', value: '3'}
- { key: 'kernel.sched_autogroup_enabled', value: '0'}
- { key: 'kernel.sched_migration_cost_n', value: '50000000'}
pkgs:
- cpufrequtils
@mizhka
mizhka / gist:e795d65cda08a203d6e48ab71d493e6e
Last active January 29, 2025 07:46
Тестовое задание

Задача

Сделать отчёт о производительности вставки данных в СУБД PostgreSQL

  • написать на любом языке программу вставки данных в PostgreSQL
  • выполнить замер на 10 минут, собрать метрики, сделать профилирование и составить отчёт о производительности вставки
  • тест проведен на OS Linux (Debian/Ubuntu) и PostgreSQL 16
  • отчёт в формате Markdown

Базовые требования

  • Можно вставлять любые фейковые данные
  • Приложение должно принимать два параметра:
@mizhka
mizhka / pg-indcheckxmin.md
Last active March 28, 2024 13:46
PostgreSQL may ignore index

PostgreSQL (12-16) may ignore your fresh built index due to long-running transaction in another session. It's since 2007, introduced by HOT optimization. Look at pg_index.indcheckxmin of your index.

First session:

postgres=# begin;
BEGIN
postgres=*# select txid_current();
 txid_current
--------------
  10008974883
@mizhka
mizhka / Test25.md
Last active April 19, 2025 09:10
Тестовое задание команды системной производительности 2025

Введение

Сутью тестового задания является установка PostgreSQL 16, запуск нескольких запросов и самое главное - Вы должны сделать оптимизацию нескольких запросов. Точнее Вам нужно объяснить почему запрос выполняется медленно, почему так происходит и как можно это изменить.

Мы не требуем выполнения всех пунктов задания, будем рады если Вы выполните хотя бы один из пунктов.

Как приступить к выполнению задания:

  • Установить на свой компьютер PostgreSQL 16 (желательно одну из последних версий - 16.6 / 16.7)
  • Запустите скрипты из параграфа "Скрипт для генерации базы"
  • После этого приступайте к задачам