mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-10 01:25:21 +00:00
Update extended-roadmap.md
This commit is contained in:
parent
9490bf7e5b
commit
07b9bf8a30
@ -62,11 +62,12 @@ Upd. Включено для системных таблиц.
|
||||
|
||||
Вместо этого предлагается разрешить кускам таблиц типа MergeTree располагать данные в разных форматах. А именно: - в оперативной памяти; - на диске со всеми столбцами в одном файле; - на диске со столбцами в отдельных файлах: в зависимости от размера куска и прошедшего времени. Для размещения кусков в оперативной памяти, придётся также реализовать опциональную поддержку write-ahead log с настраиваемыми правилами по сбросу на диск. Это позволит избавиться от проблем с мелкими вставками для MergeTree таблиц. Для ReplicatedMergeTree таблиц, это решит проблему лишь частично.
|
||||
|
||||
### 1.7. Буферизация и WAL в MergeTree {#buferizatsiia-i-wal-v-mergetree}
|
||||
### 1.7. + Буферизация и WAL в MergeTree {#buferizatsiia-i-wal-v-mergetree}
|
||||
|
||||
Требует 1.6. Антон Попов. Задача взята в работу. Q2.
|
||||
Есть pull request.
|
||||
Upd. В стадии код-ревью.
|
||||
Upd. Готово для использования начиная с версии 20.6 в экспериментальном режиме.
|
||||
|
||||
### 1.8. + Перенос между разделами по TTL {#perenos-mezhdu-razdelami-po-ttl}
|
||||
|
||||
@ -127,6 +128,8 @@ Q4.
|
||||
|
||||
Upd. Олег будет делать только часть про HDFS.
|
||||
Upd. Реализация поверх S3 является рабочей на уровне PoC.
|
||||
Upd. Реализация поверх S3 ужасно тормозит и сейчас доделывается.
|
||||
Upd. Реализацию поверх HDFS взял AmosBird для Kuaishou.
|
||||
|
||||
### 1.13. + Ускорение запросов с FINAL {#uskorenie-zaprosov-s-final}
|
||||
|
||||
@ -379,6 +382,7 @@ Upd. Появилась вторая версия LTS - 20.3.
|
||||
### 6.8. Таблица system.crashes {#tablitsa-system-crashes}
|
||||
|
||||
Сравнительно простая задача, но только для опытных разработчиков.
|
||||
Upd. В разработке.
|
||||
|
||||
### 6.9. + Отправлять информацию клиенту, если сервер падает по сигналу {#otpravliat-informatsiiu-klientu-esli-server-padaet-po-signalu}
|
||||
|
||||
@ -525,7 +529,7 @@ https://github.com/ClickHouse/ClickHouse/issues/8027\#issuecomment-566670282
|
||||
Проверили на настоящем сервере Huawei, а также в специальном Docker контейнере, который содержит внутри qemu-user-static.
|
||||
Также можно проверить на Cavium, на Raspberry Pi а также на твоём Android телефоне.
|
||||
|
||||
### 7.20. + Автосборка для FreeBSD x86\_64 {#avtosborka-dlia-freebsd-x86-64}
|
||||
### 7.20. + Автосборка для FreeBSD x86_64 {#avtosborka-dlia-freebsd-x86-64}
|
||||
|
||||
[Иван Лежанкин](https://github.com/abyss7).
|
||||
|
||||
@ -604,6 +608,8 @@ Upd. Сделаны fuzzBits, fuzzBytes.
|
||||
|
||||
2. Генерация и выполнение случайных синтаксически корректных запросов на случайных данных.
|
||||
|
||||
Upd. Александр Кузьменков сделал фазер запросов на основе мутаций AST.
|
||||
|
||||
### 7.25. + Синхронизация релизов в Аркадию {#sinkhronizatsiia-relizov-v-arkadiiu}
|
||||
|
||||
Изначально занимался Олег Алексеенков. Сейчас он перешёл работать в дружественный отдел, но обещает продолжать синхронизацию.
|
||||
@ -626,10 +632,10 @@ Upd: Добавлены все файлы побайтово.
|
||||
Команда DevTools. Прогресс по задаче под вопросом.
|
||||
Upd. Готово (все директории кроме contrib).
|
||||
|
||||
### 7.27. Запуск автотестов в Аркадии {#zapusk-avtotestov-v-arkadii}
|
||||
### 7.27. + Запуск автотестов в Аркадии {#zapusk-avtotestov-v-arkadii}
|
||||
|
||||
Требует 7.26. Коллеги начали делать, есть результат.
|
||||
Upd. В Аркадии частично работает небольшая часть тестов.
|
||||
Upd. В Аркадии частично работает небольшая часть тестов. И этого достаточно.
|
||||
|
||||
### 7.29. Опции clickhouse install, stop, start вместо postinst, init.d, systemd скриптов {#optsii-clickhouse-install-stop-start-vmesto-postinst-init-d-systemd-skriptov}
|
||||
|
||||
@ -659,10 +665,11 @@ Upd. В Аркадии частично работает небольшая ча
|
||||
В очереди. Иван Лежанкин.
|
||||
Отсутствует прогресс.
|
||||
|
||||
### 7.34. Бэкпортировать bugfix автоматически {#bekportirovat-bugfix-avtomaticheski}
|
||||
### 7.34. + Бэкпортировать bugfix автоматически {#bekportirovat-bugfix-avtomaticheski}
|
||||
|
||||
В очереди. Иван Лежанкин.
|
||||
Присутствует прогресс.
|
||||
Сделано.
|
||||
|
||||
### 7.35. Начальные правила для авто-merge {#nachalnye-pravila-dlia-avto-merge}
|
||||
|
||||
@ -676,7 +683,7 @@ Upd. В Аркадии частично работает небольшая ча
|
||||
Сейчас добавляем некоторых доверенных контрибьюторов в ручном режиме.
|
||||
Upd. Всё ещё добавляем в ручном режиме.
|
||||
|
||||
### 7.37. Разобраться с repo.yandex.ru {#razobratsia-s-repo-yandex-ru}
|
||||
### 7.37. + Разобраться с repo.yandex.ru {#razobratsia-s-repo-yandex-ru}
|
||||
|
||||
Есть жалобы на скорость загрузки и неудобство maintenance, operations, visibility.
|
||||
|
||||
@ -733,11 +740,12 @@ Upd. Задача взята в работу.
|
||||
Артемий Бобровский, ВШЭ
|
||||
Есть pull request.
|
||||
|
||||
### 8.11. Движок таблиц для чтения из Mongo {#dvizhok-tablits-dlia-chteniia-iz-mongo}
|
||||
### 8.11. + Движок таблиц для чтения из Mongo {#dvizhok-tablits-dlia-chteniia-iz-mongo}
|
||||
|
||||
Артемий Бобровский, ВШЭ
|
||||
Есть pull request.
|
||||
Upd. В стадии код-ревью.
|
||||
Готово.
|
||||
|
||||
### 8.12. Пропуск столбцов в форматах Parquet, ORC {#propusk-stolbtsov-v-formatakh-parquet-orc}
|
||||
|
||||
@ -745,9 +753,9 @@ Upd. В стадии код-ревью.
|
||||
|
||||
### 8.13. Поддержка массивов в Parquet, ORC {#podderzhka-massivov-v-parquet-orc}
|
||||
|
||||
### 8.14. Запись данных в ORC {#zapis-dannykh-v-orc}
|
||||
### 8.14. + Запись данных в ORC {#zapis-dannykh-v-orc}
|
||||
|
||||
Павел Круглов, ВШЭ. Есть pull request.
|
||||
Павел Круглов, ВШЭ. Есть pull request. Готово.
|
||||
|
||||
### 8.15. Запись данных в CapNProto {#zapis-dannykh-v-capnproto}
|
||||
|
||||
@ -790,7 +798,7 @@ Upd. Готово.
|
||||
|
||||
Maxim Fedotov, Wargaming + Yuri Baranov, Яндекс.
|
||||
|
||||
### 8.19. Интеграция с RabbitMQ {#integratsiia-s-rabbitmq}
|
||||
### 8.19. + Интеграция с RabbitMQ {#integratsiia-s-rabbitmq}
|
||||
|
||||
Ксения Сумарокова, ВШЭ.
|
||||
|
||||
@ -800,10 +808,11 @@ Maxim Fedotov, Wargaming + Yuri Baranov, Яндекс.
|
||||
|
||||
Есть pull request в процессе разработки.
|
||||
Upd. В процессе code review.
|
||||
Upd. Готово.
|
||||
|
||||
### 8.20. Интеграция с SQS {#integratsiia-s-sqs}
|
||||
### 8.20. - Интеграция с SQS {#integratsiia-s-sqs}
|
||||
|
||||
Низкий приоритет.
|
||||
Низкий приоритет. Отменено.
|
||||
|
||||
### 8.21. Поддержка произвольного количества языков для имён регионов {#podderzhka-proizvolnogo-kolichestva-iazykov-dlia-imion-regionov}
|
||||
|
||||
@ -832,8 +841,6 @@ Upd. Сделано теми людьми, кому не запрещено ра
|
||||
|
||||
### 9.2. Преднастроенные именованные соединения к внешним БД {#prednastroennye-imenovannye-soedineniia-k-vneshnim-bd}
|
||||
|
||||
Валерий Батурин, ВШЭ.
|
||||
|
||||
ClickHouse предоставляет возможность обратиться к внешней базе данных из языка запросов. Это реализовано в виде табличных функций. В параметрах к табличной функции указывается адрес удалённой базы данных (хост, порт), а также аутентификационные данные (имя пользователя, пароль). Аутентификационные данные указываются в запросе в открытом виде и, таким образом, попадают в историю запросов и в логи, что компрометирует безопасность системы.
|
||||
|
||||
Вместо этого предлагается описывать необходимые данные в конфигурационном файле сервера или в отдельном сервисе и ссылаться на них по именам.
|
||||
@ -883,12 +890,8 @@ Upd. Ура, нашли причину и исправили.
|
||||
|
||||
### 10.7. Поддержка Nullable в словарях {#podderzhka-nullable-v-slovariakh}
|
||||
|
||||
Артём Стрельцов, Николай Дегтеринский, Наталия Михненко, ВШЭ.
|
||||
|
||||
### 10.8. Поддержка массивов в словарях {#podderzhka-massivov-v-slovariakh}
|
||||
|
||||
Артём Стрельцов, Николай Дегтеринский, Наталия Михненко, ВШЭ.
|
||||
|
||||
### 10.9. - Уменьшение блокировок для cache словарей за счёт одновременных запросов одного и того же {#umenshenie-blokirovok-dlia-cache-slovarei-za-schiot-odnovremennykh-zaprosov-odnogo-i-togo-zhe}
|
||||
|
||||
Заменено в пользу 10.10, 10.11.
|
||||
@ -1022,6 +1025,8 @@ Q3.
|
||||
|
||||
### 13.3. Пулы ресурсов {#puly-resursov}
|
||||
|
||||
Александр Казаков.
|
||||
|
||||
Требует 13.2 или сможем сделать более неудобную реализацию раньше.
|
||||
Обсуждается вариант неудобной реализации. Пока средний приоритет, целимся на Q1/Q2.
|
||||
Вариант реализации выбрал Александр Казаков.
|
||||
@ -1065,10 +1070,10 @@ zhang2014
|
||||
Upd. Есть pull request-ы.
|
||||
Upd. DISTINCT готов.
|
||||
|
||||
### 14.9. Поддержка запроса EXPLAIN {#podderzhka-zaprosa-explain}
|
||||
### 14.9. + Поддержка запроса EXPLAIN {#podderzhka-zaprosa-explain}
|
||||
|
||||
Требует 2.1. [Николай Кочетов](https://github.com/KochetovNicolai).
|
||||
Upd. Есть pull request.
|
||||
Upd. Есть pull request. Готово.
|
||||
|
||||
### 14.10. arrayReduce как функция высшего порядка {#arrayreduce-kak-funktsiia-vysshego-poriadka}
|
||||
|
||||
@ -1229,7 +1234,7 @@ Upd. Есть pull request.
|
||||
|
||||
Предлагается реализовать в ClickHouse статистические тесты (Analysis of Variance, тесты нормальности распределения и т. п.) в виде агрегатных функций. Пример: `welchTTest(value, sample_idx)`.
|
||||
|
||||
Сделали прототип двух тестов, есть pull request.
|
||||
Сделали прототип двух тестов, есть pull request. Также есть pull request для корелляции рангов.
|
||||
|
||||
### 18.3. Инфраструктура для тренировки моделей в ClickHouse {#infrastruktura-dlia-trenirovki-modelei-v-clickhouse}
|
||||
|
||||
@ -1346,6 +1351,8 @@ Upd. Для DISTINCT есть pull request.
|
||||
|
||||
### 21.6. Уменьшение числа потоков для SELECT в случае тривиального INSERT SELECT {#umenshenie-chisla-potokov-dlia-select-v-sluchae-trivialnogo-insert-select}
|
||||
|
||||
ucasFL, в разработке.
|
||||
|
||||
### 21.7. Кэш результатов запросов {#kesh-rezultatov-zaprosov}
|
||||
|
||||
[Achimbab](https://github.com/achimbab).
|
||||
@ -1363,6 +1370,7 @@ Upd. В обсуждении.
|
||||
Для domain-specific кэшей (как например, кэш разжатых данных) выгодно, чтобы они использовали как можно больший объём свободной памяти. Но в этом случае, памяти может не хватить для других структур данных в программе. Если аллокатор памяти знает про кэш, то выделение памяти можно было бы делать путём вытеснения данных из кэша.
|
||||
|
||||
Upd. Есть нерабочий прототип, скорее всего будет отложено.
|
||||
Upd. Отложено до осени.
|
||||
|
||||
### 21.8.1. Отдельный аллокатор для кэшей с ASLR {#otdelnyi-allokator-dlia-keshei-s-aslr}
|
||||
|
||||
@ -1390,6 +1398,7 @@ Amos Bird.
|
||||
Сделана замена цепочек if на multiIf, но внезапно оказалось, что это является не оптимизацией, а наоборот.
|
||||
Сделано ещё несколько оптимизаций.
|
||||
Upd. Все вышеперечисленные оптимизации доступны в pull requests.
|
||||
Upd. Из них почти все помержены, осталась одна.
|
||||
|
||||
### 21.12. Алгебраические оптимизации запросов {#algebraicheskie-optimizatsii-zaprosov}
|
||||
|
||||
@ -1404,6 +1413,8 @@ Upd. Все вышеперечисленные оптимизации досту
|
||||
- Удаление дублирующихся DISTINCT, ORDER BY из подзапросов.
|
||||
|
||||
Несколько оптимизаций есть в PR.
|
||||
Upd. Все оптимизации кроме "Обращение инъективных функций в сравнениях на равенство" есть в PR.
|
||||
Upd. Из них больше половины помержены, осталось ещё две.
|
||||
|
||||
### 21.13. Fusion агрегатных функций {#fusion-agregatnykh-funktsii}
|
||||
|
||||
@ -1415,6 +1426,8 @@ Constraints позволяют задать выражение, истиннос
|
||||
|
||||
Если выражение содержит равенство, то встретив в запросе одну из частей равенства, её можно заменить на другую часть равенства, если это сделает проще чтение данных или вычисление выражения. Например, задан constraint: `URLDomain = domain(URL)`. Значит, выражение `domain(URL)` можно заменить на `URLDomain`.
|
||||
|
||||
Upd. Возможно будет отложено на следующий год.
|
||||
|
||||
### 21.15. Многоступенчатое чтение данных вместо PREWHERE {#mnogostupenchatoe-chtenie-dannykh-vmesto-prewhere}
|
||||
|
||||
Требует 2.1 и 21.10.
|
||||
@ -1459,6 +1472,7 @@ Constraints позволяют задать выражение, истиннос
|
||||
### 21.20. Использование материализованных представлений для оптимизации запросов {#ispolzovanie-materializovannykh-predstavlenii-dlia-optimizatsii-zaprosov}
|
||||
|
||||
В ByteDance есть готовая реализация, но они её боятся из-за, возможно, низкого качества кода.
|
||||
Upd. Вместо этого будем делать задачу 1.16.
|
||||
|
||||
### 21.21. + Чтение больших файлов с помощью mmap {#chtenie-bolshikh-failov-s-pomoshchiu-mmap}
|
||||
|
||||
@ -1540,11 +1554,12 @@ Upd. Добавили таймауты.
|
||||
### 22.15. Нормализация коммитов в Kafka и идемпотентности операций {#normalizatsiia-kommitov-v-kafka-i-idempotentnosti-operatsii}
|
||||
|
||||
Altinity.
|
||||
Я не в курсе, какой статус.
|
||||
|
||||
### 22.16. + Исправление низкой производительности кодека DoubleDelta {#ispravlenie-nizkoi-proizvoditelnosti-kodeka-doubledelta}
|
||||
|
||||
Василий Немков, Altinity - в процессе.
|
||||
Можно считать, что сделано, хотя отсутствие SIMD оптимизаций для variable length кодеков - это ужасно.
|
||||
Upd. Готово.
|
||||
|
||||
### 22.17. Консистентно работающий POPULATE для MaterializedView {#konsistentno-rabotaiushchii-populate-dlia-materializedview}
|
||||
|
||||
@ -1602,16 +1617,16 @@ Altinity.
|
||||
|
||||
## 23. Default Festival {#default-festival}
|
||||
|
||||
### 23.1. + Включение minimalistic\_part\_header в ZooKeeper {#vkliuchenie-minimalistic-part-header-v-zookeeper}
|
||||
### 23.1. + Включение minimalistic_part_header в ZooKeeper {#vkliuchenie-minimalistic-part-header-v-zookeeper}
|
||||
|
||||
Сильно уменьшает объём данных в ZooKeeper. Уже год в продакшене в Яндекс.Метрике.
|
||||
Алексей Миловидов, ноябрь 2019.
|
||||
|
||||
### 23.2. Включение distributed\_aggregation\_memory\_efficient {#vkliuchenie-distributed-aggregation-memory-efficient}
|
||||
### 23.2. Включение distributed_aggregation_memory_efficient {#vkliuchenie-distributed-aggregation-memory-efficient}
|
||||
|
||||
Есть риски меньшей производительности лёгких запросов, хотя производительность тяжёлых запросов всегда увеличивается.
|
||||
|
||||
### 23.3. Включение min\_bytes\_to\_external\_sort и min\_bytes\_to\_external\_group\_by {#vkliuchenie-min-bytes-to-external-sort-i-min-bytes-to-external-group-by}
|
||||
### 23.3. Включение min_bytes_to_external_sort и min_bytes_to_external_group_by {#vkliuchenie-min-bytes-to-external-sort-i-min-bytes-to-external-group-by}
|
||||
|
||||
Желательно 5.2. и 13.1.
|
||||
|
||||
@ -1619,11 +1634,11 @@ Altinity.
|
||||
|
||||
Есть гипотеза, что плохо работает на очень больших кластерах.
|
||||
|
||||
### 23.5. Включение compile\_expressions {#vkliuchenie-compile-expressions}
|
||||
### 23.5. Включение compile_expressions {#vkliuchenie-compile-expressions}
|
||||
|
||||
Требует 7.2. Задачу изначально на 99% сделал Денис Скоробогатов, ВШЭ и Яндекс. Остальной процент доделывал Алексей Миловидов, а затем [Александр Сапин](https://github.com/alesapin).
|
||||
|
||||
### 23.6. Включение учёта порядка столбцов в CSV {#vkliuchenie-uchiota-poriadka-stolbtsov-v-csv}
|
||||
### 23.6. + Включение учёта порядка столбцов в CSV {#vkliuchenie-uchiota-poriadka-stolbtsov-v-csv}
|
||||
|
||||
Просто аккуратно включить.
|
||||
|
||||
@ -1668,13 +1683,11 @@ ClickHouse поддерживает LZ4 и ZSTD для сжатия данных
|
||||
|
||||
### 24.3. Экспериментальные кодеки {#eksperimentalnye-kodeki}
|
||||
|
||||
Вероника Фалчикова, Лада Торчик, ВШЭ.
|
||||
|
||||
Существуют специализированные алгоритмы кодирования числовых последовательностей: Group VarInt, MaskedVByte, PFOR. Необходимо изучить наиболее эффективные реализации этих алгоритмов. Примеры вы сможете найти на https://github.com/lemire и https://github.com/powturbo/ а также https://github.com/schizofreny/middle-out
|
||||
|
||||
Внедрить их в ClickHouse в виде кодеков и изучить их работу на тестовых датасетах.
|
||||
|
||||
Upd. Есть два pull requests в начальной стадии, возможно будет отложено.
|
||||
Upd. Есть два pull requests в начальной стадии, отложено.
|
||||
|
||||
### 24.4. Шифрование в ClickHouse на уровне VFS {#shifrovanie-v-clickhouse-na-urovne-vfs}
|
||||
|
||||
@ -1692,7 +1705,7 @@ Upd. Есть два pull requests в начальной стадии, возм
|
||||
2. Шифрование отдельных значений.
|
||||
Для этого требуется реализовать функции шифрования и расшифрования, доступные из SQL. Для шифрования реализовать возможность добавления нужного количества случайных бит для исключения одинаковых зашифрованных значений на одинаковых данных. Это позволит реализовать возможность «забывания» данных без удаления строк таблицы: можно шифровать данные разных клиентов разными ключами, и для того, чтобы забыть данные одного клиента, потребуется всего лишь удалить ключ.
|
||||
|
||||
Будет делать Василий Немков, Altinity
|
||||
Делает Василий Немков, Altinity
|
||||
|
||||
### 24.6. Userspace RAID {#userspace-raid}
|
||||
|
||||
@ -1796,6 +1809,8 @@ Upd. Прототип bitonic sort помержен, но целесообраз
|
||||
|
||||
Требует 2.1.
|
||||
|
||||
Upd. Есть два прототипа от внешних контрибьюторов.
|
||||
|
||||
### 24.15. Поддержка полуструктурированных данных {#podderzhka-polustrukturirovannykh-dannykh}
|
||||
|
||||
Требует 1.14 и 2.10.
|
||||
@ -1889,7 +1904,7 @@ ucasFL, ICT.
|
||||
Жанна Зосимова, ВШЭ.
|
||||
Upd. Пока поддержали Arrow как формат ввода-вывода.
|
||||
|
||||
### - 24.30. - ClickHouse как графовая СУБД {#clickhouse-kak-grafovaia-subd}
|
||||
### 24.30. - ClickHouse как графовая СУБД {#clickhouse-kak-grafovaia-subd}
|
||||
|
||||
Amos Bird, но его решение слишком громоздкое и пока не open-source. Отменено.
|
||||
|
||||
@ -1971,10 +1986,14 @@ Amos Bird, но его решение слишком громоздкое и п
|
||||
|
||||
Алексей Миловидов и все подготовленные докладчики.
|
||||
Upd. Есть Saint HighLoad online.
|
||||
Upd. Есть C++ Russia.
|
||||
CodeFest, DUMP, UWDC отменились.
|
||||
|
||||
### 25.15. Конференции зарубежные: Percona, DataOps, попытка попасть на более крупные {#konferentsii-zarubezhnye-percona-dataops-popytka-popast-na-bolee-krupnye}
|
||||
|
||||
Алексей Миловидов и все подготовленные докладчики
|
||||
Upd. Есть Percona.
|
||||
DataOps отменилась.
|
||||
|
||||
### 25.16. Сайт play.clickhouse {#sait-play-clickhouse}
|
||||
|
||||
@ -1995,6 +2014,7 @@ Upd. Есть Saint HighLoad online.
|
||||
|
||||
Алексей Миловидов и вся группа разработки.
|
||||
Благодаря Robert Hodges добавлен CMU.
|
||||
Upd. Взаимодействие с ВШЭ 2019/2020 успешно выполнено.
|
||||
|
||||
### 25.18. - Лекция в ШАД {#lektsiia-v-shad}
|
||||
|
||||
@ -2012,6 +2032,8 @@ Upd. Есть поползновения с TDEngine.
|
||||
|
||||
### 25.21. Повторное награждение контрибьюторов в Китае {#povtornoe-nagrazhdenie-kontribiutorov-v-kitae}
|
||||
|
||||
Upd. Ждём снятия ограничений и восстановления активности по онлайн митапам.
|
||||
|
||||
### 25.22. On-site помощь с ClickHouse компаниям в дни рядом с мероприятиями {#on-site-pomoshch-s-clickhouse-kompaniiam-v-dni-riadom-s-meropriiatiiami}
|
||||
|
||||
[Иван Блинков](https://github.com/blinkov/) - организация. Провёл мероприятие для турецкой компании.
|
||||
@ -2019,6 +2041,8 @@ Upd. On-site заменяется на Online.
|
||||
|
||||
### 25.23. Новый мерч для ClickHouse {#novyi-merch-dlia-clickhouse}
|
||||
|
||||
Upd. Старого пока хватает, раздача уменьшилась.
|
||||
|
||||
### 25.24. Конкурсы bughunter или оптимизации кода на C++ {#konkursy-bughunter-ili-optimizatsii-koda-na-c}
|
||||
|
||||
Проведение конкурсов должно начинаться для сотрудников Яндекса, пока нет согласования.
|
||||
|
Loading…
Reference in New Issue
Block a user