Редуктор для таблицы HBase - PullRequest
1 голос
/ 21 июля 2010

По сути, мне нужно направить данные к нужному редуктору.Каждый Редуктор будет TableReducer.

У меня есть следующий файл

venodor1, user1, xxxx = n venodor1, user1, xxxx = n venodor2, user2, xxxx = n venodor2,user2, xxxx = n

Мне нужно вставить это в следующие таблицы hbase

Таблица vendor1: [user1] => {data: xxxx = n} [user2] => {data:xxxx = n}

Поставщик таблицы2: [пользователь1] => {данные: xxxx = n} [пользователь2] => {данные: xxxx = n}

Формат: [ROW_ID] =>{[FAMILY]: [COLUMN] = [VALUE]}

  • у каждого поставщика есть своя таблица hbase
  • строки должны идти в разные таблицы hbase на основе значения в строке.

Есть ли способ сделать это?С каскадом?Есть ли другая работа вокруг этого?

Спасибо, Федерико

1 Ответ

0 голосов
/ 13 сентября 2010

Я нашел способ ... Позволить редуктору обрабатывать таблицы. Вместо использования TableReducer, просто используйте Reducer. При загрузке настроек таблицы (таблицы должны быть свойствами) установите для параметра auto flush значение false и установите размер буфера. При очистке flushCommit () на всех таблицах. Выход редуктора должен быть NullWritable для ключа и значения (если вы не хотите что-то выводить). На уменьшении Просто сделайте table1.put tabe2.put и т. Д.

Реализация TableReducer делает что-то вроде этого под капотом для одного стола.

...