2015-09-22 3 views
0

Я хочу построить топологию трезубца, которая получит кортежи из Kafka, сгруппируйте их по одному полю и сохраните все сгруппированные кортежи в HBase. Причина для группировки заключается в том, что операции по размещению HBase быстрее с несколькими объектами put по сравнению с помещением одного объекта, я хочу группировать объекты Put по одному полю и вставлять все те объекты Put в один вызов API HBase.Как построить топологию Storm Trident, которая будет сохраняться в HBase

Я написал следующий код, но не знаю, где я должен писать код, который преобразует все кортежи в объекты типа «Путь» HBase и сохраняет все объекты Put в HBase.

OpaqueTridentKafkaSpout kafkaTridentSpout = new OpaqueTridentKafkaSpout(spoutConfig); 
TridentTopology topology = new TridentTopology(); 
topology.newStream("stream", kafkaTridentSpout) 
          .groupBy(new Fields("pointId")) 
          .toStream(); 
topology.build(); 

Может ли кто-нибудь мне помочь?

+2

Может быть, «storm-hbase» помогает: https://github.com/apache/storm/tree/master/external/storm-hbase –

ответ

-1

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

+0

Буря Трезубец не имеет болтов. Вместо этого он имеет функции, фильтры и т. Д. – Shekhar

Смежные вопросы