Updated roadmap

This commit is contained in:
Alexey Milovidov 2019-12-10 03:13:16 +03:00
parent cce78ef018
commit 9534eb32a0

View File

@ -52,11 +52,11 @@
### 1.8. Перенос между разделами по TTL. ### 1.8. Перенос между разделами по TTL.
Делает [Владимир Чеботарёв](https://github.com/excitoon), Altinity. Делает [Владимир Чеботарёв](https://github.com/excitoon), Altinity. Декабрь 2019.
### 1.9. Использование TTL для прореживания данных. ### 1.9. Использование TTL для прореживания данных.
В очереди. Будет делать Сорокин Николай, ВШЭ и Яндекс.
Сейчас пользователь может задать в таблице выражение, которое определяет, сколько времени хранятся данные. Обычно это выражение задаётся относительно значения столбца с датой - например: удалять данные через три месяца. https://clickhouse.yandex/docs/ru/operations/table_engines/mergetree/#table_engine-mergetree-ttl Сейчас пользователь может задать в таблице выражение, которое определяет, сколько времени хранятся данные. Обычно это выражение задаётся относительно значения столбца с датой - например: удалять данные через три месяца. https://clickhouse.yandex/docs/ru/operations/table_engines/mergetree/#table_engine-mergetree-ttl
@ -160,7 +160,7 @@ ClickHouse использует небольшое подмножество фу
### 2.9. Логгировние в format-стиле. ### 2.9. Логгировние в format-стиле.
В задаче заинтересован [Александр Кузьменков](https://github.com/akuzm). Нет прогресса. Делает [Иван Лежанкин](https://github.com/abyss7). Низкий приоритет.
### 2.10. Запрашивать у таблиц не столбцы, а срезы. ### 2.10. Запрашивать у таблиц не столбцы, а срезы.
@ -205,7 +205,7 @@ ClickHouse использует небольшое подмножество фу
### 3.4. Добавить японский язык в документацию. ### 3.4. Добавить японский язык в документацию.
Эту задачу сделает [Иван Блинков](https://github.com/blinkov/), до конца ноября 2019. Эту задачу сделает [Иван Блинков](https://github.com/blinkov/), до конца декабря 2019.
## 4. Сетевое взаимодействие. ## 4. Сетевое взаимодействие.
@ -257,7 +257,7 @@ ClickHouse использует небольшое подмножество фу
### 5.3. Встроенная ручка для Prometheus и, возможно, Solomon. ### 5.3. Встроенная ручка для Prometheus и, возможно, Solomon.
Простая задача. Простая задача. https://github.com/Vdimir
### 5.4. Opt-in сообщать в клиенте, если вышла новая версия. ### 5.4. Opt-in сообщать в клиенте, если вышла новая версия.
@ -270,7 +270,8 @@ ClickHouse использует небольшое подмножество фу
### 6.1. Исправления сэмплирующего профайлера запросов. ### 6.1. Исправления сэмплирующего профайлера запросов.
Михаил Филимонов, Altinity. Ноябрь 2019. Михаил Филимонов, Altinity. Ноябрь 2019. Сделано.
Осталось ещё проверить работоспособность профайлера в первом потоке (что важно для INSERT).
### 6.2. Добавление memory profiler. ### 6.2. Добавление memory profiler.
@ -364,6 +365,7 @@ UBSan включен в функциональных тестах, но не в
Мы используем -Wall -Wextra -Weverything -Werror. Мы используем -Wall -Wextra -Weverything -Werror.
При сборке с clang, -Weverything уже включено. Но в gcc есть уникальные warning-и, отсутствующие в clang. При сборке с clang, -Weverything уже включено. Но в gcc есть уникальные warning-и, отсутствующие в clang.
Wolf Kreuzerkrieg. Возможно, его уже не интересует эта задача. Wolf Kreuzerkrieg. Возможно, его уже не интересует эта задача.
Низкий приоритет. Возможно, будет отменено.
### 7.14. Альтернатива для readline и libedit. ### 7.14. Альтернатива для readline и libedit.
@ -562,7 +564,7 @@ Fuzzing тестирование - это тестирование случай
### 8.4. Унификация File, HDFS, S3 под URL. ### 8.4. Унификация File, HDFS, S3 под URL.
### 8.5. Аутентификация в S3. ### 8.5. + Аутентификация в S3.
[Владимир Чеботарёв](https://github.com/excitoon), Altinity. [Владимир Чеботарёв](https://github.com/excitoon), Altinity.
@ -570,16 +572,18 @@ Fuzzing тестирование - это тестирование случай
Андрей Коняев, ArenaData. Андрей Коняев, ArenaData.
### 8.7. Исправление мелочи HDFS на очень старых ядрах Linux. ### 8.7. + Исправление мелочи HDFS на очень старых ядрах Linux.
В ядрах 2.6 отсутствует один системный вызов, который библиотека hdfs3 использует без необходимости. В ядрах 2.6 отсутствует один системный вызов, который библиотека hdfs3 использует без необходимости.
Тривиально, но исполнителя ещё нет. Сделал Amos Bird.
### 8.8. Поддержка виртуальных столбцов с именем файла и путём. ### 8.8. Поддержка виртуальных столбцов с именем файла и путём.
[Ольга Хвостикова](https://github.com/stavrolia). [Ольга Хвостикова](https://github.com/stavrolia).
### 8.9. Поддержка сжатых файлов (gz, bz) на чтение и запись. ### 8.9. + Поддержка сжатых файлов (gz, bz) на чтение и запись.
Сделал [Andrey Bodrov](https://github.com/apbodrov)
### 8.10. Запись в табличную функцию ODBC. ### 8.10. Запись в табличную функцию ODBC.
@ -617,7 +621,9 @@ Fuzzing тестирование - это тестирование случай
Встроенная в ClickHouse возможность работать в качестве реплики MySQL даст преимущества для дальнейшего развития. Встроенная в ClickHouse возможность работать в качестве реплики MySQL даст преимущества для дальнейшего развития.
### 8.18. ClickHouse как Federated MySQL. ### 8.18. + ClickHouse как Federated MySQL.
Maxim Fedotov, Wargaming + Yuri Baranov, Яндекс.
### 8.19. Интеграция с RabbitMQ. ### 8.19. Интеграция с RabbitMQ.
@ -642,7 +648,7 @@ Fuzzing тестирование - это тестирование случай
## 9. Безопасность. ## 9. Безопасность.
### 9.1. Ограничение на хосты в запросах ко внешним системам. ### 9.1. + Ограничение на хосты в запросах ко внешним системам.
Михаил Коротов. Михаил Коротов.
@ -760,7 +766,7 @@ ClickHouse предоставляет возможность обратитьс
### 11.9. Доработки ODBC драйвера. ### 11.9. Доработки ODBC драйвера.
Денис Глазачев, Altinity. Денис Глазачев, Altinity. Хороший прогресс по этой задаче.
### 11.10. Преднастроенные HTTP handlers для запросов. ### 11.10. Преднастроенные HTTP handlers для запросов.
@ -873,7 +879,9 @@ zhang2014
### 14.17. Ввести понятие stateful функций. ### 14.17. Ввести понятие stateful функций.
zhang2014.
Для runningDifference, neighbour - их учёт в оптимизаторе запросов. Для runningDifference, neighbour - их учёт в оптимизаторе запросов.
В интерфейсе уже сделано. Надо проверить, что учитывается в нужных местах (например, что работает predicate pushdown сквозь ORDER BY, если таких функций нет).
### 14.18. UNION DISTINCT и возможность включить его по-умолчанию. ### 14.18. UNION DISTINCT и возможность включить его по-умолчанию.
@ -911,7 +919,7 @@ zhang2014
### 15.5. Использование ключа таблицы для оптимизации merge JOIN. ### 15.5. Использование ключа таблицы для оптимизации merge JOIN.
### 15.6. SEMI и ANTI JOIN. ### 15.6. + SEMI и ANTI JOIN.
Артём Зуйков. Артём Зуйков.
@ -954,7 +962,7 @@ ClickHouse не является geospatial СУБД. Тем не менее, в
Реализовать в ClickHouse типы данных для задач обработки геоинформационных данных: Point, Line, MultiLine, Polygon и операции над ними - проверка вхождения, пересечения. Вариантом минимум будет реализация этих операций в евклидовой системе координат. Дополнительно - на сфере и WGS84. Реализовать в ClickHouse типы данных для задач обработки геоинформационных данных: Point, Line, MultiLine, Polygon и операции над ними - проверка вхождения, пересечения. Вариантом минимум будет реализация этих операций в евклидовой системе координат. Дополнительно - на сфере и WGS84.
### 17.3. Ускорение greatCircleDistance. ### 17.3. + Ускорение greatCircleDistance.
[Ольга Хвостикова](https://github.com/stavrolia), основано на коде Андрея Аксёнова, получено разрешение на использование кода. [Ольга Хвостикова](https://github.com/stavrolia), основано на коде Андрея Аксёнова, получено разрешение на использование кода.
@ -1050,9 +1058,9 @@ Hold. Полезно для заказчиков внутри Яндекса, н
## 21. Оптимизации производительности. ## 21. Оптимизации производительности.
### 21.1. Параллельный парсинг форматов. ### 21.1. + Параллельный парсинг форматов.
Начинал Олег Ершов, доделывает Никита Михайлов, помогает [Александр Кузьменков](https://github.com/akuzm). Почти всё готово. Начинал Олег Ершов, доделывает Никита Михайлов, помогает [Александр Кузьменков](https://github.com/akuzm). Готово.
### 21.2. Параллельное форматирование форматов. ### 21.2. Параллельное форматирование форматов.
@ -1100,7 +1108,7 @@ Hold. Полезно для заказчиков внутри Яндекса, н
[Николай Кочетов](https://github.com/KochetovNicolai). Требует 2.1. [Николай Кочетов](https://github.com/KochetovNicolai). Требует 2.1.
### 21.10. Улучшение эвристики PREWHERE. ### 21.10. + Улучшение эвристики PREWHERE.
Amos Bird. Amos Bird.
@ -1237,29 +1245,32 @@ zhang2014.
Требует 6.3., но можно улучшить отдельными хаками. Нужно Метрике и БК. Требует 6.3., но можно улучшить отдельными хаками. Нужно Метрике и БК.
### 22.11. Более простая ser/de настроек запросов. ### 22.11. + Более простая ser/de настроек запросов.
[Виталий Баранов](https://github.com/vitlibar), почти всё готово. И пропуск неизвестных настроек. Важно для Метрики для упрощения апгрейда без изменения конфига.
[Виталий Баранов](https://github.com/vitlibar), готово.
### 22.12. Исправление низкой производительности чтения из Kafka. ### 22.12. + Исправление низкой производительности чтения из Kafka.
[Иван Лежанкин](https://github.com/abyss7).
Для ClickHouse нехарактерно наличие кода, обладающего столь низкой производительностью. Практики разработки не подразумевают, что такой код должен попасть в продакшен без надлежащего тестирования производительности. Для ClickHouse нехарактерно наличие кода, обладающего столь низкой производительностью. Практики разработки не подразумевают, что такой код должен попасть в продакшен без надлежащего тестирования производительности.
Изначально было назначено на [Ивана Лежанкина](https://github.com/abyss7), но по неизвестной причине было не сделано в течение нескольких месяцев.
Сделал Михаил Филимонов, Altinity.
### 22.13. Посмотреть, почему не работают некоторые collations. ### 22.13. Посмотреть, почему не работают некоторые collations.
[Иван Лежанкин](https://github.com/abyss7), совмещается с 7.1. Изначально было назначено на [Ивана Лежанкина](https://github.com/abyss7), но в результате сделал Александр Сапин.
### 22.14. Посмотреть, почему не работает StorageSet для MergeTree таблиц при некоторых условиях. ### 22.14. Посмотреть, почему не работает StorageSet для MergeTree таблиц при некоторых условиях.
### 22.15. Нормализация коммитов в Kafka и идемпотентности операций. ### 22.15. Нормализация коммитов в Kafka и идемпотентности операций.
[Иван Лежанкин](https://github.com/abyss7), если он не сдастся. [Иван Лежанкин](https://github.com/abyss7), если он не сдастся.
### 22.16. Исправление низкой производительности кодека DoubleDelta. ### 22.16. Исправление низкой производительности кодека DoubleDelta.
Василий Немков, Altinity - временно приостановлено, но намерения остаются в силе. Василий Немков, Altinity - в процессе.
Мы считаем важным, что код в ClickHouse содержит разумные оптимизации, основанные на анализе производительности. Но иногда бывают досадные исключения. Мы считаем важным, что код в ClickHouse содержит разумные оптимизации, основанные на анализе производительности. Но иногда бывают досадные исключения.
@ -1269,11 +1280,11 @@ zhang2014.
Василий Немков, Altinity. Василий Немков, Altinity.
### 22.19. Одновременное использование SAMPLE и PREWHERE. ### 22.19. + Одновременное использование SAMPLE и PREWHERE.
Нужно для Метрики. [Николай Кочетов](https://github.com/KochetovNicolai), ноябрь 2019. Нужно для Метрики. [Николай Кочетов](https://github.com/KochetovNicolai), ноябрь 2019.
### 22.20. Неправильная работа PREWHERE при некоторых условиях. ### 22.20. + Неправильная работа PREWHERE при некоторых условиях.
[Николай Кочетов](https://github.com/KochetovNicolai), декабрь 2019. [Николай Кочетов](https://github.com/KochetovNicolai), декабрь 2019.
@ -1310,6 +1321,10 @@ https://github.com/ClickHouse/ClickHouse/issues/2655
[Иван Лежанкин](https://github.com/abyss7). [Иван Лежанкин](https://github.com/abyss7).
### 22.29. Уязвимость DDL для словарей executable.
[Александр Сапин](https://github.com/alesapin)
## 23. Default Festival. ## 23. Default Festival.
@ -1582,13 +1597,14 @@ Amos Bird, но его решение слишком громоздкое и п
## 25. DevRel ## 25. DevRel
### 25.1. Перевод инструкции для начинающих разработчиков. ### 25.1. + Перевод инструкции для начинающих разработчиков.
Александр Казаков, ноябрь 2019. Александр Казаков, ноябрь 2019.
### 25.2. Вычитка и выкладка статьи про обфускацию данных на английском. ### 25.2. Вычитка и выкладка статьи про обфускацию данных на английском.
Эми, Александр Казаков, Алексей Миловидов, ноябрь 2019. Эми, Александр Казаков, Алексей Миловидов, ноябрь 2019.
Готово к выкладке.
### 25.3. Подготовка статьи "Секреты оптимизации производительности ClickHouse". ### 25.3. Подготовка статьи "Секреты оптимизации производительности ClickHouse".
@ -1608,7 +1624,7 @@ Amos Bird, но его решение слишком громоздкое и п
Эми Эми
### 25.8. Выступление keynote на BDTC. ### 25.8. + Выступление keynote на BDTC.
Алексей Миловидов Алексей Миловидов