Skip to content

Instantly share code, notes, and snippets.

@mizhka
Last active May 7, 2024 02:42
Show Gist options
  • Save mizhka/e795d65cda08a203d6e48ab71d493e6e to your computer and use it in GitHub Desktop.
Save mizhka/e795d65cda08a203d6e48ab71d493e6e to your computer and use it in GitHub Desktop.
Тестовое задание

Задача

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

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

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

  • Можно вставлять любые фейковые данные
  • Приложение должно принимать два параметра:
    • количество параллельных потоков
    • длительность вставки
  • Отчёт должен содержать выводы (не только метрики)

Будем плюсом

  • Профилирование с помощью Perf / eBPF с построение flame graph-ов
  • Отсутствие воды в отчёте
  • Профилирование операций ввода-вывода с помощью blktrace или другого механизма
  • Предложена оптимальная конфигурация PostgreSQL

Требования к коду:

  • Язык разработки: любой (Java, C, Go, Rust...)
  • Библиотеки можно использовать любые
  • Реляционная СУБД: PostgreSQL
  • Код должен быть выложен на Github с Readme файлом с инструкцией по запуску и примерами. Важно, чтобы по инструкции можно было запустить код и он работал
  • При возникновении вопросов по ТЗ оставляем принятие решения за кандидатом. Желательно отразить в Readme какие вопросы возникали и какие решения были приняты
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment