我有一个代表大矩阵的CSV文件,我希望将其上传到Apache Hbase实例(在AWS EMR上运行,但这无关紧要)。 CSV包含〜15000列和〜50000行。矩阵的像元值为整数。
CSV看起来像这样:
ROW_KEY col1 col2 col3 .... col15000
row1 0 1 125 456
row2 23 23 45 ...
row3 ... ... ...
...
row50000
我打算将我的HBase模式保留在单个列系列中,每个列(col1,col2等)都作为列限定符。
我已经研究过在python脚本中遍历CSV并使用happybase之类的东西上传每一行,但这似乎要花相当长的时间。
我已经研究过ImportTSV工具,但是该工具似乎需要一个参数来详细说明所有列名,例如:
Dimporttsv.columns=HBASE_ROW_KEY,cf1:name,cf2:exp
在args中详述成千上万的列似乎不是一个好的解决方案。