Индексы в Mongo вглубь: multikey, ESR, explain
Multikey-индексы на массивах, правило ESR (Equality-Sort-Range), partial/TTL/wildcard-индексы и чтение explain() в MongoDB — специфика движка индексов поверх общей теории B-tree
Multikey-индексы на массивах, правило ESR (Equality-Sort-Range), partial/TTL/wildcard-индексы и чтение explain() в MongoDB — специфика движка индексов поверх общей теории B-tree
WiredTiger — не LSM, а B-tree с MVCC: снапшоты, checkpoint, journal и кеш с dirty/eviction вживую, с контрастом к PostgreSQL heap+btree и разбором, где заканчивается WAL и начинается специфика Mongo
Как TWCS группирует sstable по времени записи, почему исторический backfill без USING TIMESTAMP ломает окна компакции, как реально считаются tombstones и почему repair на tablet-keyspace — не nodetool repair -pr
Как Kafka хранит и чистит данные: сегменты лога, retention по времени и размеру, log compaction для keyed-топиков (снимок последнего значения), tiered storage и сжатие — и когда compaction нужен, а когда обычный retention
Зависят ли индексы от языка программирования и как ORM влияют на их использование: генерируемые запросы и N+1, неявные приведения типов, prepared statements и план, миграции индексов и как из кода проверить, что индекс реально работает
Как устроено семейство MergeTree (ORDER BY, PRIMARY KEY, партиционирование), почему в ClickHouse нельзя вставлять по одной строке и что дают async inserts, и как всё это выглядит из клиентов clickhouse-go и clickhouse-java — нативный протокол против HTTP
Что делать и чего избегать с индексами: over-indexing и write-amplification, неиспользуемые и дублирующие индексы, bloat и обслуживание, covering под горячие запросы, online-создание без блокировок, индексы под пагинацию — и антипаттерн «индекс на всё»
Один принцип, разные реализации: индексы в PostgreSQL (btree/GiN/GiST/BRIN, CONCURRENTLY, partial/expression), MongoDB (compound/multikey/text/2dsphere/TTL/partial/wildcard, правило ESR) и Tarantool (memtx TREE/HASH/BITSET/RTREE и vinyl LSM)
Практика индексов: селективность и кардинальность, покрывающие индексы и index-only scan, составные индексы и порядок колонок, частичные и функциональные, и главное — почему индекс НЕ используется и как это увидеть
Фундамент про индексы: зачем они (ускорение поиска ценой записи и места), какие бывают — B-tree, hash, bitmap, инвертированный (GiN), GiST, BRIN, R-tree, LSM — и как каждая структура устроена, что ускоряет и чем платит