Мы используем Map для записи данных в HBase. Поскольку у нас есть какое-то форматирование, мы внедрили собственный редуктор, расширив TableReducer. Этот пользовательский редуктор ведет себя по-разному в среде производства и разработки. Получение следующей ошибкеHBase-Mapreducer, оптимальное количество редукторов при использовании TableReducer
Ошибка: org.apache.hadoop.hbase.client.RetriesExhaustedWithDetailsException: Ошибка 659 действий: RegionTooBusyException: 659 раз,
От here, я понял, что промывка не выполняется должным образом. Однако то же самое отлично работает в среде dev.
Наряду с вышеуказанным вариантом, я чувствую, что настройка количества редукторов также может повлиять на то, сколько данных отправлено на сервер региона.
Мы используем соль для разметки ключей строк среди серверов региона. На данный момент соль составляет 20 м, а количество региональных серверов - 60. Если соль выбирается равной количеству серверов региона, чтобы равномерно распределять записи? Если нет, то как определить оптимальное значение количества редукторов при загрузке данных в Hbase.
Также, как правило, максимальное количество подключений, разрешенных на стороне клиента, для взаимодействия с Hbase. Здесь мы используем API-редуктор Map, но в целом мы обрабатываем клиентское соединение с Hbase, максимальное число клиентских подключений может играть важную роль. Заранее благодарим за помощь