NonRecoverableException: Недостаточно живых планшетных серверов для создания таблицы с запрошенным коэффициентом репликации 3. 1 планшетных серверов живы

Я пытаюсь создать таблицу Kudu, используя Impala-shell.

Запрос:

CREATE TABLE lol
(
  uname STRING,
  age INTEGER,
  PRIMARY KEY(uname)
)
STORED AS KUDU
TBLPROPERTIES (
'kudu.master_addresses' = '127.0.0.1'
);

CREATE TABLE t (k INT PRIMARY KEY) STORED AS KUDU
TBLPROPERTIES (
'kudu.master_addresses' = '127.0.0.1'
);

Но я получаю ошибку:

ERROR: ImpalaRuntimeException: Error creating Kudu table 'impala::default.t'
CAUSED BY: NonRecoverableException: Not enough live tablet servers to create a table with the requested replication factor 3. 1 tablet servers are alive.

Пожалуйста, предложите, что для этого нужно сделать. Я новичок в Куду.

**

1 ответ

Решение

NonRecoverableException: Not enough live tablet servers to create a table with the requested replication factor 3 эта ошибка происходит потому что в запросе не указан фактор репликации

В KUDU коэффициент репликации по умолчанию = 3.

Если вы работаете в автономном кластере запросов, в этом случае только 1 планшетный сервер в Kudu (сервер Kudu) активен, для указанного выше коэффициента репликации запроса должно быть 1

Вы можете изменить коэффициент репликации в соответствии с требованием, установив

table_num_replicas (необязательно) - количество реплик

Запрос:

                         CREATE TABLE lol
                         (
                           uname STRING,
                           age INTEGER,
                           PRIMARY KEY(uname)
                         )
                         STORED AS KUDU
                         TBLPROPERTIES (
                         'kudu.master_addresses' = '127.0.0.1',
                         'kudu.num_tablet_replicas' = '1'
                        );

В KUDU для большого количества данных раздел должен быть указан.

Запрос:

create table test 
(
id int not null,
code string,
primary key(id)
) 
partition by hash partitions 8 
stored as KUDU 
TBLPROPERTIES ( 
'kudu.master_addresses' = '127.0.0.1' ,
'kudu.num_tablet_replicas' = '1'
);

Для настройки дополнительных свойств см. https://kudu.apache.org/docs/command_line_tools_reference.html

В дополнение к ответу вы также можете установить "Количество реплик по умолчанию" в конфигурации Kudu равным 1. Таким образом вы избежите хлопот с установкой этого параметра в каждой вводимой вами команде. Вы можете получить доступ к этой конфигурации из Cloudera Manager -> Kudu -> Configuration, затем выполните поиск "Количество реплик по умолчанию", вам может потребоваться подавить настройку, чтобы избежать предупреждающего сообщения, потому что рекомендуемая настройка - 3.

Другие вопросы по тегам