java. net .SocketTimeoutException при сканировании таблицы HBase с фильтром Regex - PullRequest
1 голос
/ 30 марта 2020

В связи с дизайном ключа строки мне нужно выполнить фильтр сканирования регулярных выражений, который, на мой взгляд, сканирует весь набор ключей строки этой таблицы.

Проблема, с которой я сталкиваюсь, заключается в том, что по умолчанию это ограничение по умолчанию callTimeout=60000 и я иду за пределы этого значения.

Я искал решения, но двух подходов, которые я нашел до сих пор, я бы хотел избежать:

Подход 1: Изменение файла hbase-client.xm с увеличением следующего значения:

<property>
    <name>hbase.client.operation.timeout</name>
    <value>1800000</value>
</property>

К сожалению, у меня нет доступа к этому файлу, и в любом случае я не могу перезапустить клиент.

Подход 2 : изменение конфигурации Hbase

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.hbase.HBaseConfiguration;

Configuration conf = HBaseConfiguration.create();

conf.set("hbase.rpc.timeout", "1800000");
conf.set("hbase.client.scanner.timeout.period", "1800000");

Этот вариант лучше, но мне нужно будет коснуться кода и общего API, которых я предпочел бы избежать.

Итак, поскольку я отправляю это задание с помощью spark-submit, я хотел бы знать, можно ли изменить этот параметр в этой отправке с помощью spark напрямую, без изменения файлов конфигурации в кластере и без изменения кода.

Смежные вопросы, где я не смог найти ответ: 1 и 2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...