Здесь собраны важные задачи на 2020 год. Также многие из них присутствуют в GitHub Issues или (редко) в Яндекс.Трекере, а также (очень редко) в Яндекс.Goals. Мы предпочитаем использовать Яндекс.Трекер только для секретных задач, а все публичные задачи размещать в GitHub Issues для того, чтобы сделать разработку более открытой наружу. В любом случае, для работы над задачами, таск-трекеры уступают в удобстве plaintext файлу.
Классификация задач условная и за её основу взята известная [классификация животных](https://ru.wikipedia.org/wiki/%D0%9A%D0%BB%D0%B0%D1%81%D1%81%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D1%8F_%D0%B6%D0%B8%D0%B2%D0%BE%D1%82%D0%BD%D1%8B%D1%85_(%D0%91%D0%BE%D1%80%D1%85%D0%B5%D1%81)).
## 1. Хранение данных, индексация.
### 1.1. Индексы по z-Order curve, normalized z-Order curve.
Задача также относится к категории "17. Работа с географическими данными", так как geoHash - это частный случай z-Order curve.
Также связана с задачей 24.27 для нечёткого поиска полудубликатов строк, так как позволит индексировать min-hash.
Задача "normalized z-Order curve" в перспективе может быть полезна для БК и Метрики, так как позволяет смешивать OrderID и PageID и избежать дублирования данных.
В задаче также вводится способ индексации путём обращения функции нескольких аргументов на интервале, что имеет смысл для дальнейшего развития.
Изначально делал [Андрей Чулков](https://github.com/achulkov2), ВШЭ, теперь доделывает [Ольга Хвостикова](https://github.com/stavrolia), но задача прокрастинирована из-за задачи 25.9. Сейчас оказалось, что задача 25.9 тоже не готова. Будем надеятся на реализацию к концу ноября. Впрочем, [Андрей Чулков](https://github.com/achulkov2) скоро выйдет на работу стажёром на пол ставки и сможет помочь её доделать.
### 1.2. Wait-free каталог баз данных.
Делает [Александр Токмаков](https://github.com/tavplubix), первый рабочий вариант в декабре 2019. Нужно для DataLens и Яндекс.Метрики.
### 1.3. Неблокирующие ALTER.
И полностью immutable куски. Делает [Александр Сапин](https://github.com/alesapin). Готов приступить к задаче в конце ноября 2019. Нужно для Яндекс.Метрики.
### 1.4. Нетранзитивные ALTER столбцов.
Требует 1.3. Будет делать [Александр Сапин](https://github.com/alesapin).
### 1.5. ALTER RENAME COLUMN.
Требует 1.3. Будет делать [Александр Сапин](https://github.com/alesapin).
### 1.6. Полиморфные куски данных.
Делает [Антон Попов](https://github.com/CurtizJ), первый рабочий вариант в декабре. Пререквизит чтобы снизить сложность мелких INSERT, что в свою очередь нужно для 1.12, иначе задача 1.12 не сможет нормально работать. Особенно нужно для Яндекс.Облака.
### 1.7. Буферизация и WAL в MergeTree.
Требует 1.6.
### 1.8. Перенос между разделами по TTL.
Делает [Владимир Чеботарёв](https://github.com/excitoon), Altinity.
### 1.9. Использование TTL для прореживания данных.
В очереди.
### 1.10. Пережатие старых данных в фоне.
Будет делать Кирилл Барухов, ВШЭ, экспериментальная реализация к весне 2020. Нужно для Яндекс.Метрики.
### 1.11. Виртуальная файловая система.
Нужно для Яндекс.Облака. Делает Александр Бурмак, Яндекс.Облако, а также Олег Ершов, ВШЭ и Яндекс.
### 1.12. Экспериментальная реализация VFS поверх S3 и HDFS.
Нужно для Яндекс.Облака. Требует 1.11. Желательно 1.6 и 1.18.
Делает Александр Бурмак, Яндекс.Облако (сначала часть для S3), а также Олег Ершов, ВШЭ и Яндекс.
### 1.13. Ускорение запросов с FINAL.
Требует 2.1. Делает [Николай Кочетов](https://github.com/KochetovNicolai). Нужно для Яндекс.Метрики.
### 1.14. Не писать столбцы, полностью состоящие из нулей.
В очереди. Простая задача, является небольшим пререквизитом для потенциальной поддержки полуструктурированных данных.
### 1.15. Возможность иметь разный первичный ключ в разных кусках.
Сложная задача, только после 1.3.
### 1.16. Несколько физических представлений для одного куска данных.
Сложная задача, только после 1.3 и 1.6. Позволяет компенсировать 21.20.
### 1.17. Несколько сортировок для одной таблицы.
Сложная задача, только после 1.3 и 1.6.
### 1.18. Отдельное хранение файлов кусков.
Требует 1.3 и 1.6. Полная замена hard links на sym links, что будет лучше для 1.12.
## 2. Крупные рефакторинги.
Для обоснования необходимости смотрите ссылки в описании других задач.
### 2.1. Переделка конвейера выполнения запросов на Processors.
Делает [Николай Кочетов](https://github.com/KochetovNicolai). Финальная стадия разработки. Включение по-умолчанию в конце декабря 2019. Удаление старого кода в начале 2020.
### 2.6. Правая часть IN как тип данных. Выполнение IN в виде скалярного подзапроса.
Требует 2.1.
### 2.7. Нормализация Context.
В очереди.
### 2.8. Декларативный парсер запросов.
Низкий приоритет. Задачу хочет сделать [Иван Лежанкин](https://github.com/abyss7) в свободное время, но за последний год никаких поползновений не видно.
### 2.9. Логгировние в format-стиле.
В задаче заинтересован [Александр Кузьменков](https://github.com/akuzm). Нет прогресса.
### 2.10. Запрашивать у таблиц не столбцы, а срезы.
В очереди.
### 2.11. Разбирательство и нормализация функциональности для bitmap.
В очереди.
### 2.12. Декларативные сигнатуры функций.
Задачу делает Алексей Миловидов. Прогресс 50% и разработка временно приостановлена.
### 2.13. Каждая функция в отдельном файле.
Задачу делает Алексей Миловидов. Прогресс 80%. Потребуется помощь других разработчиков.
### 2.14. Все функции с состоянием переделать на FunctionBuilder.
Долг [Николай Кочетов](https://github.com/KochetovNicolai). Сейчас код находится в переходном состоянии, что неприемлимо.
Не делает [Иван Блинков](https://github.com/blinkov/), и есть подозрения, что он не в состоянии выполнить эту задачу. Сам сайт документации основан на треш-технологиях, которые трудно исправить.
### 3.4. Добавить японский язык в документацию.
Эту задачу сделает [Иван Блинков](https://github.com/blinkov/), до конца ноября 2019.
## 4. Сетевое взаимодействие.
### 4.1. Уменьшение числа потоков при распределённых запросах.
### 4.2. Спекулятивное выполнение запросов на нескольких репликах.
[Никита Лапков](https://github.com/laplab), весна 2020. Нужно для Яндекс.Метрики. Требует 4.1.
### 4.3. Ограничение числа одновременных скачиваний с реплик.
Изначально делал Олег Алексеенков, но решение оказалось неудачным, хотя там не так уж много доделывать.
### 4.4. Ограничение сетевой полосы при репликации.
### 4.5. Возможность продолжить передачу куска данных при репликации после сбоя.
### 4.6. p2p передача для GLOBAL подзапросов.
### 4.7. Ленивая загрузка множеств для IN и JOIN с помощью k/v запросов.
### 4.8. Разделить background pool для fetch и merge.
В очереди. Исправить проблему, что восстанавливающаяся реплика перестаёт мержить. Частично компенсируется 4.3.
## 5. Операции.
### 5.1. Разделение задач на более мелкие куски в clickhouse-copier.
Нужно для Метрики, в очереди, но исполнитель не назначен, есть шанс успеть в 2019.
### 5.2. Автонастройка лимита на оперативку и размера кэшей.
### 5.3. Встроенная ручка для Prometheus и, возможно, Solomon.
Простая задача.
### 5.4. Opt-in сообщать в клиенте, если вышла новая версия.
### 5.5. LTS релизы.
Требует 7.5. Задачу хочет Метрика, Облако, БК, Маркет и Altinity. Задача полностью обречена на провал с практической точки зрения, но пользователям важен сам факт того, что она будет, а мы уважаем чувства пользователей. Первой LTS версией уже стала версия 19.14.
[Никита Лапков](https://github.com/laplab), ноябрь 2019. Может не сделать, тогда будет делать Алексей Миловидов.
### 6.2. Добавление memory profiler.
Сравнительно простая задача, но только для опытных разработчиков. Нужна всем.
### 6.3. Учёт оперативки total расширить не только на запросы.
Исправление долгоживущей проблемы с дрифтом учёта оперативки. Нужна для Метрики и БК.
### 6.4. Поддержка perf events как метрик запроса.
Делает Андрей Скобцов, ВШЭ.
### 6.5. Эксперименты с LLVM X-Ray.
Требует 2.2.
### 6.6. Стек трейс для любых исключений.
Сейчас есть стек трейс для почти всех, но не всех исключений. Требует 7.4.
### 6.7. Таблица system.stack_trace.
Сравнительно простая задача, но только для опытных разработчиков.
### 6.8. Таблица system.crashes.
Сравнительно простая задача, но только для опытных разработчиков.
### 6.9. Отправлять информацию клиенту, если сервер падает по сигналу.
### 6.10. Сбор общих системных метрик.
## 7. Сопровождение разработки.
### 7.1. ICU в submodules.
[Иван Лежанкин](https://github.com/abyss7).
Добавление в submodules также нужно для Аркадии (7.26).
### 7.2. LLVM в submodules.
Уже добавлено, но старой версии, и поэтому не используется. Надо обновить.
Георгий Кондратьев. Возможно, он не сможет сделать эту задачу, тогда будет делать Алексей Миловидов.
### 7.3. Обновление Poco.
Алексанр Кузьменков.
### 7.4. Включить libc++, libc++-abi при сборке с gcc.
Сейчас включено только при сборке с clang, но продакшен сборка использует gcc.
Требует 7.2 и, возможно, 7.1 (только в случае новой версии ICU).
### 7.5. Начать публиковать LTS релизы.
[Александр Сапин](https://github.com/alesapin).
### 7.6. Правильный статистический тест для comparison mode в clickhouse-performance-test.
Задачу начал делать Дмитрий Рубашкин. Сейчас продолжает [Александр Кузьменков](https://github.com/akuzm).
### 7.7. Доделать тесты под MSan.
Уже есть ASan, TSan, UBSan. Не хватает тестов под MSan. Они уже добавлены в CI, но не проходят.
[Александр Кузьменков](https://github.com/akuzm).
### 7.8. Добавить clang-tidy.
Уже есть PVS-Studio, но этого недостаточно.
### 7.9. Проверки на стиль имён с помощью clang-tidy.
### 7.10. Включение UBSan и MSan в интеграционных тестах.
UBSan включен в функциональных тестах, но не включен в интеграционных тестах. Требует 7.7.
### 7.11. Включение *San в unit тестах.
У нас мало unit тестов по сравнению с функциональными тестами и их использование не обязательно. Но они всё-равно важны и нет причин не запускать их под всеми видами sanitizers.
### 7.12. Показывать тестовое покрытие нового кода в PR.
Пока есть просто показ тестового покрытия всего кода.
### 7.13. Включение аналога -Weverything в gcc.
Мы используем -Wall -Wextra -Weverything -Werror.
При сборке с clang, -Weverything уже включено. Но в gcc есть уникальные warning-и, отсутствующие в clang.
Wolf Kreuzerkrieg. Возможно, его уже не интересует эта задача.
### 7.14. Альтернатива для readline и libedit.
Тагир Кускаров, ВШЭ. Посмотрим на https://github.com/AmokHuginnsson/replxx
### 7.15. Замена libressl обратно на openssl.
Поводом использования libressl послужило желание Константина podshumok Игнатова из QRator и то, что тогда openssl был опозорен и libressl считалась адекватной альтернативой. Но сейчас ситуация изменилась - openssl продолжает развиваться, а libressl не особо, и можно спокойно менять обратно.
### 7.16. tzdata внутри бинарника.
Как в Аркадии, но только в качестве fallback.
### 7.17. Доделать tgz пакеты.
Уже давно собираются универсальные tgz пакеты, но по нелепой случайности из них исчез install скрипт.
[Александр Сапин](https://github.com/alesapin). Может делегировать эту задачу кому угодно.
### 7.18.1. Доделать бинарники под Mac.
Уже есть автосборка бинарников под Mac на каждый коммит и PR, но с недостатками.
[Иван Лежанкин](https://github.com/abyss7). Требует 7.1, 7.2. Рекомендуется 7.14. Сейчас не хватает по крайней мере SSL и ICU. Нужно для Яндекс.Облака.
### 7.18. Поместить ссылку на собранные бинарники под Mac на сайт.
Сейчас людям приходится делать несколько кликов, чтобы их скачать.
[Иван Лежанкин](https://github.com/abyss7) или [Александр Сапин](https://github.com/alesapin).
### 7.19. Доделать (проверить) автосборку под AArch64.
Проверяем, что работает на Cavium и на Raspberry Pi.
[Иван Лежанкин](https://github.com/abyss7).
### 7.20. Автосборка для FreeBSD x86_64.
[Иван Лежанкин](https://github.com/abyss7).
### 7.21. Автосборка для Linux ppc64.
[Иван Лежанкин](https://github.com/abyss7).
### 7.22. Дэшборд для pull requests.
Дарья Петрова, УрФУ.
### 7.23. Функции для fuzzing.
Андрей Некрашевич, ВШЭ.
### 7.24. Fuzzing лексера и парсера запросов; кодеков и форматов.
Андрей Некрашевич, ВШЭ.
### 7.25. Синхронизация релизов в Аркадию.
Изначально занимался Олег Алексеенков. Сейчас он перешёл работать в Яндекс.Морду, но обещает продолжать синхронизацию.
Затем, возможно, [Иван Лежанкин](https://github.com/abyss7). Но сейчас приостановлено, так как Максим Ахмедов должен исправить регрессию производительности в анализе индекса.
### 7.26. Побайтовая идентичность репозитория с Аркадией.
Нужно для Метрики, а делать будет таинственный незнакомец из команды KikiMR. Или он сейчас это прочитает и скажет "я никогда не буду делать эту задачу".
### 16.3. Поддержка неконстантных аргументов с регулярными выражениями в функциях.
Данила Кутенин, но только после секретного изменения в работе.
### 16.4. Функция rowNumberForKey.
### 16.5. Функции для XML и HTML escape.
### 16.6. Функции нормализации и хэширования SQL запросов.
## 17. Работа с географическими данными.
### 17.1. Гео-словари для определения региона по координатам.
[Андрей Чулков](https://github.com/achulkov2), Антон Кваша, Артур Петуховский, ВШЭ.
Будет основано на коде от Арслана Урташева.
### 17.2. GIS типы данных и операции.
Алексей Коряков, Алексей Илюхов, ВШЭ, Яндекс.Карты.
### 17.3. Ускорение greatCircleDistance.
[Ольга Хвостикова](https://github.com/stavrolia), основано на коде Андрея Аксёнова, получено разрешение на использование кода.
### 17.4. Ускорение geohash с помощью библиотеки из Аркадии.
Предположительно, [Андрей Чулков](https://github.com/achulkov2). Изначальная реализация в Аркадии - Денис Шапошников. Получено одобрение от руководства.
### 17.5. Проверки в функции pointInPolygon.
[Николай Кочетов](https://github.com/KochetovNicolai). Сейчас функция тихо не работает в случае полигонов с самопересечениями, надо кидать исключение.
## 18. Машинное обучение и статистика.
### 18.1. Инкрементальная кластеризация данных.
Александр Кожихов, Максим Кузнецов. Обнаружена фундаментальная проблема в реализации, доделывает предположительно [Николай Кочетов](https://github.com/KochetovNicolai). Он может делегировать задачу кому угодно.
### 18.2. Агрегатные функции для статистических тестов.
Артём Цыганов, Руденский Константин Игоревич, Семёнов Денис, ВШЭ.
### 18.3. Инфраструктура для тренировки моделей в ClickHouse.
В очереди. Возможно, Александр Кожихов. У него сначала идёт задача 24.26.
## 19. Улучшение работы кластера.
### 19.1. Параллельные кворумные вставки без линеаризуемости.
Александра Латышева, ВШЭ и Яндекс.
### 19.2. Подключение Etcd или Consul как альтернативы ZooKeeper.
Алексей Лёвушкин, ВШЭ и Яндекс.
### 19.3. Подключение YT Cypress или YDB как альтернативы ZooKeeper.
Hold. Полезно для Яндекс.Облака и БК, но есть риски, что будет вредно, а не полезно.
### 19.4. internal_replication = 'auto'.
### 19.5. Реплицируемые базы данных.
В очереди, возможно Валерий Батурин, ВШЭ.
### 19.6. Одновременный выбор кусков для слияния многими репликами, отказ от leader election в ZK.
### 19.7. Возможность записи данных при недоступности ZK и отказ от линейного порядка кусков в большинстве случаев.
### 19.8. Отказ от хранения в ZK множества кусков для каждой реплики отдельно.
### 19.9. Отказ от хранения в ZK лога вставок и мержей. Обмен данными о кусках напрямую.
### 19.10. Облачные таблицы.
Требует 1.6, 19.1, 19.6, 19.7, 19.8, 19.9.
## 20. Мутации данных.
Пока все задачи по точечным UPDATE/DELETE имеют низкий приоритет, но ожидаем взять в работу в середине 2020.
### 20.1. Поддержка DELETE путём запоминания множества затронутых кусков и ключей.
### 20.2. Поддержка DELETE путём преобразования множества ключей в множество row_numbers на реплике, столбца флагов и индекса по диапазонам.
### 20.3. Поддержка ленивых DELETE путём запоминания выражений и преобразования к множеству ключей в фоне.
### 20.4. Поддержка UPDATE с помощью преобразования в DELETE и вставок.
## 21. Оптимизации производительности.
### 21.1. Параллельный парсинг форматов.
Начинал Олег Ершов, доделывает Никита Михайлов, помогает [Александр Кузьменков](https://github.com/akuzm). Почти всё готово.
### 21.2. Параллельное форматирование форматов.
После 21.1, предположительно Никита Михайлов. Задача сильно проще чем 21.1.
### 21.3. Исправление низкой производительности анализа индекса в случае большого множества в секции IN.
Нужно всем (Zen, БК, DataLens...) Пока ещё не выбран исполнитель.
### 21.4. Использование ORDER BY ключа для оптимизации GROUP BY и DISTINCT.
Дмитрий Рубашкин, ВШЭ. Помогает Антон Попов.
### 21.5. Распараллеливание INSERT при INSERT SELECT, если это необходимо.
### 21.6. Уменьшение числа потоков для SELECT в случае тривиального INSERT SELECT.
### 21.7. Кэш результатов запросов.
[Achimbab](https://github.com/achimbab).
### 21.8. Взаимная интеграция аллокатора и кэша.
Михаил Кот, ВШЭ. Задача сложная и рискованная.
### 21.8.1. Отдельный аллокатор для кэшей с ASLR.
В прошлом году задачу пытался сделать Данила Кутенин с помощью lfalloc из Аркадии и mimalloc из Microsoft, но оба решения оказались неудачными. Успешная реализация задачи 21.8 отменит необходимость в этой задаче, поэтому холд.
### 21.9. Исправить push-down выражений с помощью Processors.
[Николай Кочетов](https://github.com/KochetovNicolai). Требует 2.1.
### 21.10. Улучшение эвристики PREWHERE.
Amos Bird.
### 21.11. Peephole оптимизации запросов.
Руслан Камалов, Михаил Малафеев, Виктор Гришанин, ВШЭ
### 21.12. Алгебраические оптимизации запросов.
Руслан Камалов, Михаил Малафеев, Виктор Гришанин, ВШЭ
### 21.13. Fusion агрегатных функций.
После или совместно с 21.11.
### 21.14. Оптимизация запросов с помощью constraints.
Мария Нефедова, ВШЭ.
### 21.15. Многоступенчатое чтение данных вместо PREWHERE.
Требует 2.1 и 21.10.
### 21.16. Оптимизация GROUP BY с большим количеством агрегатных функций путём вычисления в два прохода.
Нужно для БК.
### 21.17. Оптимизация GROUP BY при наличии ORDER BY по тем же ключам с LIMIT.
Нужно для БК.
### 21.18. Внутренняя параллелизация мержа больших состояний агрегатных функций.
### 21.19. Оптимизация сортировки.
Василий Морозов, Арслан Гумеров, Альберт Кидрачев, ВШЭ.
Есть риски меньшей производительности лёгких запросов, хотя производительность тяжёлых запросов всегда увеличивается.
### 23.3. Включение min_bytes_to_external_sort и min_bytes_to_external_group_by.
Желательно 5.2. и 13.1.
### 23.4. Включение синхронной записи в Distributed таблицы по-умолчанию.
Есть гипотеза, что плохо работает на очень больших кластерах.
### 23.5. Включение compile_expressions.
Требует 7.2. Задачу изначально делал Денис Скоробогатов, ВШЭ и Яндекс, затем доделывал Алексей Миловидов, а затем [Александр Сапин](https://github.com/alesapin).
Возможность mlock бинарника сделал Олег Алексеенков. Поможет, когда на серверах кроме ClickHouse работает много треш-программ.
## 24. Экспериментальные задачи.
### 24.1. Веб-интерфейс для просмотра состояния кластера и профилирования запросов.
Антон Мамонов, УрФУ, Яндекс.
### 24.2. Экспериментальные алгоритмы сжатия.
Анастасия Наумова, ВШЭ.
### 24.3. Экспериментальные кодеки.
Вероника Фалчикова, Лада Торчик, ВШЭ.
### 24.4. Шифрование в ClickHouse на уровне кусков данных.
Yuchen Dong, ICS.
### 24.5. Поддержка функций шифрования для отдельных значений.
Yuchen Dong, ICS.
### 24.6. Userspace RAID.
Глеб Новиков, ВШЭ.
### 24.7. Вероятностные структуры данных для фильтрации по подзапросам.
Рузель Ибрагимов, ВШЭ и Яндекс.
### 24.8. Специализация векторизованного кода для AVX/AVX2/AVX512 и ARM NEON.
Дмитрий Ковальков, ВШЭ и Яндекс.
### 24.9. Общий подход к CPU dispatching в фабрике функций.
Дмитрий Ковальков, ВШЭ и Яндекс.
### 24.10. Поддержка типов half/bfloat16/unum.
Рустам Гусейн-заде, ВШЭ.
### 24.11. User Defined Functions.
Игорь Минеев, ВШЭ.
### 24.12. GPU offloading.
Риск состоит в том, что даже известные GPU базы, такие как OmniSci, работают медленнее, чем ClickHouse.
Преимущество возможно только на полной сортировке и JOIN.
Алексей Соловей, nVidia и Рита Коннова, ВШЭ.
### 24.13. Stream запросы.
Пререквизит для ClickHouse как CEP-системы.
### 24.14. Window функции.
Требует 2.1.
### 24.15. Поддержка полуструктурированных данных.
Требует 1.14 и 2.10.
### 24.16. Улучшение эвристики слияний.
В прошлом году исследование по этой задаче сделал Егор Соловьёв, ВШЭ и Яндекс.Такси. Его исследование показало, что алгоритм нельзя существенно улучшить путём изменения параметров. Но исследование лажовое, так как рассмотрен только уже использующийся алгоритм. То есть, задача остаётся открытой.
### 24.17. Экспериментальные способы ускорения параллельного GROUP BY.
Максим Серебряков
### 24.18. Не TCP протокол передачи файлов при репликации.
### 24.19. Промежуточное состояние GROUP BY как структура данных для key-value доступа.
### 24.20. Short-circuit вычисления некоторых выражений.
Два года назад задачу попробовала сделать Анастасия Царькова, ВШЭ и Яндекс, но реализация получилась слишком неудобной и её удалили.
### 24.21. Реализация в ClickHouse протокола распределённого консенсуса.
Имеет смысл только после 19.2.
### 24.22. Вывод типов по блоку данных. Вывод формата данных по примеру.
Эльмир Марданов, ВШЭ.
### 24.23. Минимальная поддержка транзакций для множества вставок/чтений.
Уже готовые докладчики: Алексей Миловидов, [Николай Кочетов](https://github.com/KochetovNicolai), [Александр Сапин](https://github.com/alesapin).
Получаем минимум 7 докладчиков в 2020 году.
### 25.10. Митапы в России: Москва x2 + митап для разработчиков или хакатон, Санкт-Петербург, Минск, Нижний Новгород, Екатеринбург, Новосибирск и/или Академгородок, Иннополис или Казань.
Екатерина Миназова - организация
### 25.11. Митапы зарубежные: восток США (Нью Йорк, возможно Raleigh), возможно северо-запад (Сиэтл), Китай (Пекин снова, возможно митап для разработчиков или хакатон), Лондон.
[Иван Блинков](https://github.com/blinkov/) - организация
### 25.12. Статья "научная" - про устройство хранения данных и индексов или whitepaper по архитектуре. Есть вариант подать на VLDB.
Низкий приоритет. Алексей Миловидов.
### 25.13. Участие во всех мероприятиях Яндекса, которые связаны с разработкой бэкенда, C++ разработкой или с базами данных, возможно участие в DevRel мероприятиях.
Алексей Миловидов и все подготовленные докладчики
### 25.14. Конференции в России: все HighLoad, возможно CodeFest, DUMP или UWDC, возможно C++ Russia.
Алексей Миловидов и все подготовленные докладчики
### 25.15. Конференции зарубежные: Percona, DataOps, возможно Big Data Warsaw, попытка попасть на более крупные.
Алексей Миловидов и все подготовленные докладчики
### 25.16. Сайт play.clickhouse.
### 25.17. Взаимодействие с ВУЗами: ВШЭ, УрФУ, ICS Beijing.
Алексей Миловидов и вся группа разработки
### 25.18. Лекция в ШАД.
Алексей Миловидов
### 25.19. Участие в курсе разработки на C++ в ШАД.
### 25.20. Ещё одно сравнение производительности аналитических СУБД.
Матвей Бубнов, УрФУ
### 25.21. Повторное награждение контрибьюторов в Китае.
### 25.22. On-site помощь с ClickHouse компаниям в дни рядом с мероприятиями.
[Иван Блинков](https://github.com/blinkov/) - организация
### 25.23. Новый мерч для ClickHouse.
### 25.24. Конкурсы bughunter или оптимизации кода на C++.