отправьте этот фрейм данных потоковой передачи искры в hbase, используя scala

Я получаю kafka в потоке искры и обрабатываю свои данные для создания фрейма данных, который выглядит следующим образом:

+---+-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
|id |sen                      |attributes                                                                                                                                                    |
+---+-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+
|1  |Stanford is good college.|[[Stanford,ORGANIZATION,NNP], [is,O,VBZ], [good,O,JJ], [college,O,NN], [.,O,.], [Stanford,ORGANIZATION,NNP], [is,O,VBZ], [good,O,JJ], [college,O,NN], [.,O,.]]|
+---+-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------+

У меня есть таблица hbase "kafkaStreaming" с идентификатором столбца и атрибутом. Я хочу, чтобы эти данные были сохранены в hbase с «ID» в качестве ключа строки и атрибутов, например [[Stanford, ORGANIZATION, NNP], [is, O, VBZ], [good, O, JJ]] в att.

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


person Aayush Rampal    schedule 10.08.2016    source источник
comment
Я хочу знать, как преобразовать его в объекты PUT, чтобы внедрить их в HBASE.   -  person Aayush Rampal    schedule 10.08.2016


Ответы (1)


У нас есть пример кода для этого по адресу Машина для сращивания

Если вы хотите попытаться записать биты низкого уровня, вы можете динамически создавать HBase Puts и запускать их с помощью вызова функции или OutputFormat. Синтаксис Put допускает любое количество семейств столбцов.

При таком подходе семантика отказа, как правило, не так уж и горяча. Как вы откатываете сбои и т. д.?

person John Leach    schedule 10.08.2016
comment
Имеет смысл. Весь наш код написан на Java (бесполезно). У Cloudera есть некоторый открытый исходный код, расположенный здесь github.com/cloudera-labs/SparkOnHBase. У них есть минимальный код scala для взаимодействия с Hbase. Надеюсь это поможет. - person John Leach; 11.08.2016