Консультации по базам данных и архитектуре данных
Экспертиза по запросу: от схемы данных вашей системы до стратегии дата-ландшафта. Без найма, разовые консультации и пакеты часов.
Консультация - это доступ к экспертизе без найма: вы приходите с задачей или сомнением, уходите с решением и пониманием, почему оно такое. Работаем на трёх уровнях: проектирование и разработка ваших собственных систем, архитектура данных, стратегические развилки дата-ландшафта.
СУБД - не чёрный ящик
Частая картина в командах разработки: СУБД используется как чёрный ящик - «фреймворк всё сделает». Отсюда ошибки в выборе движка на старте, неверное планирование перехода на микросервисную архитектуру и т.д. Разработчики не заглядывают в его особенности и не знают механизмов того с чем работают из кода. Отсюда начинается «изобретение велосипедов»: в приложении строятся костыли, повторяющие механизмы, которые в СУБД давно реализованы и отлажены, - блокировки, версионирование, контроль целостности, встроенные очереди, структуры, оптимизированные под хранение векторных или аналитических данных, управление файловым потоком со специальными таблицами и встроенными механизмами.
Это большая и «больная» тема наших консультаций: программист решает задачу тем, что знает, вместо того, что для задачи нужно. Несколько часов с экспертом на старте экономят месяцы переделок: схема данных и паттерны работы с СУБД закладываются один раз и надолго.
OLTP, аналитика, высокие нагрузки - три разные дисциплины
Операционный контур (OLTP) и аналитика (DWH) проектируются по-разному: под транзакционный процессинг и под аналитические запросы нужны разные даталогические схемы. Для финансового и высоконагруженного ПО существует третья дисциплина - свои схемы и свои паттерны разработки на SQL, T-SQL и PL/pgSQL, где цена ошибки в схеме умножается на нагрузку.
Помогаем выбрать дисциплину и спроектировать правильно - до того, как написаны тысячи строк кода.
Дата-ландшафт и стратегия
«Уровень владения данными выше кода» - куда двигаться с данными компании. Внедрять ERP или сохранить функциональную схему, перейдя к доменам данных и дата-продуктам? Как организовать движение данных между системами? Нужен ли вам data mesh - и «как его готовить»? Такие развилки стоят десятки миллионов, и проходить их стоит с человеком, который видел обе стороны.
Здесь консультация смыкается с интеграционной шиной данных: решение о ландшафте и его кровеносная система - один разговор.
Обучение команды разработчиков
Консультирование команд в формате «Обучение» - один из видов консультации: программа обучения собирается под вашу команду и ваш стек. Темы, с которых обычно начинают: архитектура СУБД - как движок исполняет то, что пишет разработчик. Среди популярных тем «механизмы блокировок в высоконагруженных средах», «индексы и статистики», «даталогические модели», подробный разбор AlwaysOn и работа с читаемыми репликами - как снять отчётную нагрузку с основного узла; построение межцодовой синхронизации и её эффективное использование и многое другое.
Когда это полезно
- Выбираете между технологиями, нужно мнение человека, который работал с обеими.
- Проектируете собственную систему и хотите заложить правильную схему данных до начала разработки.
- Спорите с подрядчиком или внутри команды - нужен незаинтересованный арбитр с аргументами из практики.
- Разбираете сложный инцидент без очевидной причины.
- Стоите перед развилкой «внедрять ERP или строить домены данных».
- Интеграторам: работаем как субподрядная экспертиза в ваших проектах.
Ставки
Ставка зависит от типа работы, разовость обращения на неё не влияет. Оплата по фактически потраченным часам.
Настройка и сопровождение серверов, устранение найденных проблем, типовые миграции, разработка и поддержка пайплайнов загрузки, настройка мониторинга.
Проектирование архитектуры, разбор аварий и сложных инцидентов, выбор технологий, code review миграций и запросов, перенос систем с унаследованных платформ, обучение команды.
Формат: работаем удалённо - созвон или письменный разбор, по характеру задачи.
Расскажите о задачеВажные вопросы
Как понять, сколько часов нужно?
После первого разговора о задаче называем ориентир. Короткий вопрос по конкретной проблеме - час-два, разбор схемы данных перед разработкой - несколько сессий, стратегическая развилка по дата-ландшафту обсуждается дольше и не за один заход. Платите за фактически потраченное время, а не за оценку.
Чем консультация отличается от аудита?
Аудит - работа по регламенту: собираем метрики, снимаем показания системы и отдаём отчёт с приоритетами. Консультация идёт от вашего вопроса: вы приносите задачу, сомнение или спор, получаете решение и объяснение, почему оно такое. Если по ходу консультации становится ясно, что нужна диагностика, говорим об этом прямо.
Нужен ли доступ в наш контур?
Часто нет. Схемы данных, планы выполнения запросов, конфигурация и описание задачи закрывают большинство вопросов. Если доступ всё же нужен, работаем по вашим правилам: ваши учётные записи, ваши каналы, ваш регламент.
Что остаётся у команды после консультации?
Письменное резюме: принятое решение, аргументы за и против рассмотренных вариантов, что делать дальше. Разговор забывается, документ остаётся у команды и работает, когда через полгода кто-то спросит, почему сделали именно так.
Задача оказалась больше консультации - что тогда?
Скажем об этом сразу, а не будем растягивать часы. Дальше выбираете формат: проектные работы, абонентское обслуживание или разовое сопровождение внедрения силами вашей команды.
Расскажите о задаче - мы предложим подходящий формат.