Apache Software Foundation выпустила свежий релиз своей платформы — Apache Hadoop 3.3.0. С момента последнего обновления прошло полтора года. Сама платформа представляет собой инструмент для организации распределенной обработки больших объемов данных с использованием MapReduce. Hadoop включает в себя набор утилит, библиотек и фреймворков для разработки и выполнения распределенных программ, которые способны работать на кластерах из тысяч узлов.
Для Hadoop создана специализированная файловая система Hadoop Distributed File System (HDFS), которая обеспечивает резервирование данных и оптимизацию работы MapReduce-приложений. HDFS предназначена для хранения файлов больших размеров, распределенных между отдельными узлами вычислительного кластера. Благодаря своим возможностям Hadoop используется крупнейшими компаниями и организациями. Google даже предоставила Hadoop право на использование технологий, которые затрагивают патенты, связанные с методом MapReduce.
В общем, встречаем Apache Hadoop 3.3.0.
Вот список самых важных изменений в новой версии:
- Поддержка платформ на основе ARM-архитектуры (кстати, у Selectel есть ARM-серверы; вот ссылка, если захотите попробовать).
- Версия формата Protobuf (Protocol buffers) обновлена до 3.7.1. Protobuf используется для сериализации структурированных данных.
- Для коннектора S3A добавлена функция Delegation Token (аутентификация), улучшена поддержка кэширования ответов с кодом 404, плюс увеличена производительность S3guard и общая надежность работы.
- Разработчики заявили о решении проблем с автоматическим тюнингом в файловой системе ABFS.
- Добавлена поддержка Java 11.
- Появилась поддержка файловой системы Tencent Cloud COS, что необходимо для доступа к объектному хранилищу COS.
- Добавлен сервис DNS Resolution, что дает возможность клиентам определять серверы через DNS по именам узлов. Соответственно, в настройках нет необходимости добавлять все хосты.
- Появился каталог приложений YARN (Yet Another Resource Negotiator) с возможностью поиска.
- Добавлена поддержка планирования запуска OPPORTUNISTIC-контейнеров через Resource Manager.
Благодаря тому, что Hadoop активно развивается, рынок решений на его основе быстро растет. Если в 2019 году объем рынка составлял около $1,7 млрд, то, по прогнозам экспертов, к 2024 году он достигнет $9,4 млрд.
Сейчас Hadoop занимает первое место среди репозиториев Apache по числу вносимых изменений. Размер кодовой базы платформы составляет около 4 млн строк. Наиболее крупные хранилища — Netflix, Twitter, Facebook.
barloc
Итого из всех плюшек значимо только Java 11.
muove
dns же наконец то
xhumanoid
не совсем, тем кто активно использует там плюшек и причин перейти на порядок больше, вот только краткий список изменений который может быть интересен реальным пользователям
2 тикета которые можно включить на текущем хадупе без обновления
issues.apache.org/jira/browse/HADOOP-16011
OsSecureRandom very slow compared to other SecureRandom implementations
(specific for secured DN)
issues.apache.org/jira/browse/HADOOP-16452
Increase ipc.maximum.data.length default from 64MB to 128MB
(problems with large DN)
с изменением кода, поэтому обновление нужно
issues.apache.org/jira/browse/YARN-9848
revert YARN-4946
(fix stuck application in aggregation state)
issues.apache.org/jira/browse/HDFS-14617
Improve fsimage load time by writing sub-sections to the fsimage index
issues.apache.org/jira/browse/HDFS-12943
Consistent Reads from Standby Node
(позволяет разгрузить неймноду за счёт выноса операций чтения на отдельную ноду, с учётом что вся работа с метаданными идёт под RW Lock и удаление большого количества блоков за раз могло захватить лок надолго и остановить полностью кластер, многие будут счастливы. вызвано тем что в свое время оптимизируя чтение внесли структуру FoldedTreeSet, чтение стало более gc friendly, но на больших объёмах деградация удаления данных из этой структуры очень существенное, поэтому в будущих версиях структуру будут переделывать, жаль в 3.3 не успели и перенесли на 3.4 issues.apache.org/jira/browse/HDFS-13671 и связанные с этим тикеты)
issues.apache.org/jira/browse/HADOOP-16398
Exports Hadoop metrics to Prometheus
issues.apache.org/jira/browse/HDFS-13505
Turn on HDFS ACLs by default.
(Нужно обновляться аккуратно, так как поменяли дефолт)
umbrella ticket YARN Container Phase 2
актуально для тех кто гоняет докер контейнеры в хадупе
issues.apache.org/jira/browse/YARN-8472
issues.apache.org/jira/browse/YARN-9391
Disable PATH variable to be passed to Docker container
issues.apache.org/jira/browse/YARN-9486
Docker container exited with failure does not get clean up correctly
issues.apache.org/jira/browse/YARN-8587
Delays are noticed to launch docker container
issues.apache.org/jira/browse/YARN-9496
Reinit of container stuck in localization
issues.apache.org/jira/browse/YARN-9184
Docker run doesn't pull down latest image if the image exists locally
(сейчас приходится делать отдельный тег на каждый билд, так как образы не перетягиваются)
issues.apache.org/jira/browse/YARN-8643
Docker image life cycle management on HDFS
> Итого из всех плюшек значимо только Java 11.
добавлена возможность работать на java 11
issues.apache.org/jira/browse/HADOOP-15338
Java 11 runtime support (closed)
но вот сборка на java 11 до сих пор имеет определённые падающие unit tests
issues.apache.org/jira/browse/HADOOP-16795
Java 11 compile support (open)
вообще полезная ссылка
hadoop.apache.org/docs/r3.3.0/hadoop-project-dist/hadoop-common/release/3.3.0/RELEASENOTES.3.3.0.html