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