Найти в Дзене
Найм в IT - в 2026 году. Почему спрос и предложение перестали нормально встречаться?
На первый взгляд модель должна быть простой. У человека есть навыки, опыт и время. У бизнеса есть задачи, деньги и потребность закрыть работу. Один продает труд, другой покупает труд. Это и есть обычная логика спроса и предложения. Но на практике в 2026 году эта модель все хуже соответствует реальности. Проблема НЕ в том, что закон спроса и предложения перестал существовать. Скорее проблема в том, что между реальной бизнес-задачей и человеком, который может ее закрыть, выросла слишком длинная цепочка посредников, фильтров и формальных требований...
6 дней назад
Нормальные формы и их применение в хранилищах данных (КХД).
Про "нормальные формы" чаще всего вспоминают либо на собеседованиях по направлениям дата-инженерии и аналитики, связанной с проектированием КХД, либо в более приземленных спорах о том, насколько "правильно" спроектирована та или иная модель в хранилище, которое используется в проекте. Нормализация - это не набор абстрактных правил ради теории, а способ понять, как именно раскладывать данные по структуре так, чтобы одни и те же факты не дублировались без необходимости, не противоречили друг другу и не создавали лишние проблемы при развитии хранилища...
1 неделю назад
Индексы в PostgreSQL на практике, как выбирать?
Если кратко, индексы в PostgreSQL нужны для одного - ускорять доступ к данным. Если индекса нет, базе приходится просматривать таблицу целиком при помощи последовательного сканирования (seq scan). На небольших таблицах такая операция может быть незаметной, но на миллионах строк она быстро становится узким местом. Индекс нужен затем, чтобы база не перебирала все данные подряд, а быстрее выходила на нужные строки. Аналогия здесь простая - как указатель в книге помогает найти нужный раздел без лишнего листания, так и индекс сокращает объем поиска...
1 месяц назад
Композиция в Rust и ОО-подходы в Dlang.
Я, как разработчик, ранее работал в более классическим объектно-ориентированном подходе, где есть базовые классы, и от них наследуются подклассы, чтобы переиспользовать кодовую базу. Условный пример: объявить класс Animal, сделать класс Dog его потомком, унаследовав общие поля и методы. Но если перейти на Rust, где классов нет вовсе, то необходимо будет вместо привычного наследования использовать "композицию". Ради справедливости стоит упомянуть цитату из классической книги GoF: A common problem...
5 месяцев назад
Физическая модель движения магнитных наночастиц вблизи атеросклеротических бляшек.
Атеросклероз - это хроническое заболевание, при котором на стенках артерий оседают липиды, прежде всего холестерин, а также различные клеточные остатки. Эти вещества образуют бляшки, которые сужают просвет сосуда и затрудняют кровоток. Существуют следующие современные методы лечения: (1) статины (аторвастатин, симвастатин), снижают уровень холестерина (2) антиагреганты (аспирин), предотвращают образование тромбов (3) ингибиторы АПФ и бета-блокаторы, контролируют давление (4) фибраты и ингибиторы...
10 месяцев назад
Матмоделирование процессов псориаза при воздействии алкоголя.
Псориаз - это не просто кожная проблема, а хроническое аутоиммунное заболевание, которое может существенно ухудшить качество жизни. Представьте, кожа становится красной, зудящей, шелушащейся и болезненной. Все это - результат нарушенного цикла обновления кожи. В норме клетки эпидермиса (в основном, кератиноциты) делятся, созревают и отшелушиваются за 3-4 недели. При псориазе этот процесс ускоряется в несколько раз, до 3-5 дней. В результате в коже накапливаются незрелые кератиноциты, формируя плотные воспаленные бляшки...
11 месяцев назад
Разработка коммерческого коннектора на Python для Greenplum v6, реализующего параллельное чтения с сегментов.
Привет, сегодня я хотел бы поделиться информацией о своей коммерческой разработке, связанной с коннектором под Greenplum v6, который я разрабатываю на Python и который использует: На данный момент я разрабатываю его в одиночку, но: Одной из самых интересных особенностей коннектора является использование "параллельных курсоров" из Greenplum. Вместо того, чтобы пропускать все операции через мастер-ноду, коннектор создает параллельный retrieve-курсор, где количество связанных endpoints соответствует количеству primary-сегментов...
1 год назад
Купил себе первую машину :)
1 год назад
Наконец закончил автошколу и получил права :) Очень этому рад, т.к. потребовало нелегких усилий. На экзамене ГАИ смог сдать круговой перекресток и гараж задним ходом. Данные упражнения были самими проблемными для меня.
1 год назад
Что такое merge join, hash join и nested loop с примером на PostgreSQL.
В этой статье давайте рассмотрим три ключевых типа физических соединений, которые PostgreSQL использует при выполнении логических внешних и внутренних соединений, использующих оператор JOIN: Почему я начал с упоминания про деление на физические и логические соединения? Это разные уровни. Когда вы пишите SQL-запросы с применением LEFT OUTER JOIN или RIGHT JOIN, это логический уровень соединений. Как правило, использующийся для декартовых произведений, в которых остаются строки, удовлетворяющие условию самого соединения...
4197 читали · 1 год назад
Понятия мер и измерений в DWH. Пример модели звезды в PostgreSQL.
В статье, ниже, приведен пример SQL-кода (DDL + PL/pgSQL-функция по data seeding) с построением логической модели звезды в PostgreSQL. Современные хранилища данных, они же КХД (DWH, Data WareHouse), представляют из себя централизованное хранилище, где собираются данные из различных источников, далее они очищаются и структурируются для будущей аналитики, которая проводится в BI-системах (Apache Superset, Tableau, PowerBI и другие). Основной слой ядра (core layer) может быть основан на базе одной...
868 читали · 1 год назад
Что такое сканирование по битовой карте (bitmap scan) в PostgreSQL?
Сканирование по битовой карте (bitmap scan) - это один из методов поиска данных в PostgreSQL, который состоит из 2-ух основных вида узлов, которые можно увидеть при выводе древа плана, используя EXPLAIN ANALYZE VERBOSE: 1). bitmap index scan, первичное сканирование по индексу с построением битовой карты. Операция в данном узле, сама по себе, не извлекает данные. Она создает битовую карту с местоположением строк. Таких операций может быть несколько. 2). bitmap heap scan, финальная операция в узле...
593 читали · 1 год назад