【发布时间】:2014-11-16 13:21:24
【问题描述】:
假脱机目录 CSV 文件格式:sample.csv
8600000US00601,00601,006015-DigitZCTA,0063-DigitZCTA,11102
8600000US00602,00602,006025-DigitZCTA,0063-DigitZCTA,12869
8600000US00603,00603,006035-DigitZCTA,0063-DigitZCTA,12423
8600000US00604,00604,006045-DigitZCTA,0063-DigitZCTA,33548
8600000US00606,00606,006065-DigitZCTA,0063-DigitZCTA,10603
我的 Flume.Conf 代码:
agent.sources = spool
agent.channels = fileChannel2
agent.sinks = sink2
agent.sources.spool.type = spooldir
agent.sources.spool.spoolDir = /home/cloudera/cloudera
agent.sources.spool.fileSuffix = .completed
agent.sources.spool.channels = fileChannel2
#agent.sources.spool.deletePolicy = immediate
agent.sinks.sink2.type = org.apache.flume.sink.hbase.HBaseSink
agent.sinks.sink2.channel = fileChannel2
agent.sinks.sink2.table = sample
agent.sinks.sink2.columnFamily = s1
agent.sinks.sink2.serializer = org.apache.flume.sink.hbase.RegexHbaseEventSerializer
agent.sinks.sink1.serializer.regex = ^([^,]+),([^,]+),([^,]+),([^,]+)$
#agent.sinks.sink2.serializer.regexIgnoreCase = true
agent.sinks.sink1.serializer.colNames =col1,col2,col3,col4
agent.sinks.sink2.batchSize = 100
agent.channels.fileChannel2.type=memory
我可以使用 flume 将数据加载到单列中,但无法使用正则表达式将其加载到多列中,任何帮助,以便我可以将其加载到 hbase 中的多列中。谢谢。
【问题讨论】:
-
你得到答案了吗?
-
如果你有答案,请分享。谢谢。
-
我也有同样的问题:(请分享!!!
-
agent.sinks.sink2.serializer.regex =(.+),(.+),(.+),(.+),(.+) 在正则表达式中使用它,它会有所帮助您在多列中加载 csv 数据。
标签: regex csv ubuntu-12.04 bigdata cloudera