Работаю в клинико-диагностическом центре, умею IT в медицине. Знаю PostgreSQL, Ubuntu, LXC, DICOM, 1C, Python. Могу с нуля развернуть рентгенологическое отделение на OpenSource. Знаю в деталях работу клинической лаборатории.
Профиль на хабре: https://habrahabr.ru/users/darthunix/

Достижения

Все достижения (1)

Наибольший вклад в теги

Все теги (13)

Лучшие ответы пользователя

Все ответы (12)
  • Что должен знать SQL разработчик?

    darthunix
    @darthunix
    Знаю PostgreSQL, Ubuntu, DICOM и медицину.
    Наверное, знать надо все и до бесконечности. Я тоже работаю с PostgreSQL, для разработки и администрировании по моему горькому опыту нужно знать:
    1) Linux
    • стандартный набор консольных утилит
    • система выдачи прав на файлы
    • знания про работу с памятью для тюнинга БД
    • lxc (возможность поднять кучу легковесных контейнеров с разными базами очень помогает)
    • уметь настраивать фаервол (чтобы у сервера БД не торчало лишнее наружу)
    • ssh проброс портов с удаленного компьютера (чтобы удобно подключаться к БД)
    2) Система контроля версий - git, svn и т.д.
    3) PostgreSQL
    • внутренняя работа под капотом (для тюнинга производительности)
    • FTS, триграммы, plproxy
    • pgtap для тестирования
    • система версионирования схемы бд (я рекомендую pyrseas)
    • балансировщики, репликация, PIT бэкапы (рекомендую barman)
    • FDW для подключения к разным другим источникам данных

    А вообще, смотри видео и читай доклады с pgconf и документацию по PostgresPro, это хорошо помогает быть в курсе последних тенденций.
    Ответ написан
  • Нормально ли хранить логи в основной базе?

    darthunix
    @darthunix
    Знаю PostgreSQL, Ubuntu, DICOM и медицину.
    Ну если основная база от логов сильно распухает и транзакции вам для них особо не нужны - вынесите логи через plproxy в другую базу (на другом диске/сервере - не важно). Храните их в нормализованном виде и анализируйте, будет вам счастье. И основная база будет компактной, и нагрузка на неё будет меньше, и логи хранятся в таком же PostgreSQL (чем меньше зоопарк, тем проще с ним жить)
    Ответ написан
  • Как спроектировать базу данных многопользовательских списков?

    darthunix
    @darthunix
    Знаю PostgreSQL, Ubuntu, DICOM и медицину.
    Про второй вариант вообще забудьте, это какой-то адский антипаттерн. Насчёт первого варианта - не волнуйтесь про размер, индексы спасут вас. А вот когда они перестанут вас спасать, вы воспользуетесь шардингом... но к этому моменту вы будете знать про большие данные больше всех в этом обсуждении)) Я бы создал таблицу с пользователями, таблицу с задачами и таблицу соответствия пользователей и задач с составным первичным ключом по этим двум колонкам. И не забыл бы про внешние ключи. Индексы бы делал в обеих таблицах типа автоинкрементируемого bigint (не знаю в терминах mysql) для более компактных и быстрых индексов по сравнению с guid. Если бы это был postgresql, то можно было бы таблицу трансляций сделать вида (пользователь, массив задач), но это плохая практика в плане согласованности данных.
    Ответ написан
  • Какие есть варианты разработки базы данных?

    darthunix
    @darthunix
    Знаю PostgreSQL, Ubuntu, DICOM и медицину.
    Я рекомендую использовать pyrseas. В нем dbtoyaml парсит схему базы с поддержкой всех самобытных фишек PostgreSQL в yaml файл, который вы помещаете в систему контроля версий. В отличие от SQL дампа с yaml схемой легко работать и осуществлять слияния в ветках. Я использую PyCharm с подсветкой yaml синтаксиса для этого. Так же yamltodb может сравнить yaml файл с базой и сформировать SQL миграцию. Я этой штукой уже год пользуюсь на работе, все остальные решения рядом не стояли.
    Ответ написан

Лучшие вопросы пользователя

Все вопросы (1)