0

我已经在 Cloudera Hadoop/HBase 集群上成功安装了 OpenTSDB。

我的问题是,我有大量的 1 分钟历史股票数据,如下所示:

"Date","Time","Open","High","Low","Close","Volume" 
12/30/2002,0930,24.53,24.65,24.53,24.65,762200
12/30/2002,0931,24.65,24.68,24.52,24.6,90400

......

从 QS 指南中的文档中,它在批量导入部分中说:

./tsdb 导入你的文件

当我在我的数据上尝试这个时,它会抛出一个无用的异常。

关于如何将其导入 OpenTSDB 的任何提示?谢谢。

4

2 回答 2

4

您需要编写一个脚本来将您的 CSV 转换为 OpenTSDB 格式的内容。OpenTSDB 的一般格式是metric timestamp value tags

例如,您的示例可以编写如下:

stock.open 1041269400 24.53 symbol=XXX
stock.high 1041269400 24.65 symbol=XXX
stock.low 1041269400 24.53 symbol=XXX
stock.close 1041269400 24.65 symbol=XXX
stock.volume 1041269400 762200 symbol=XXX
stock.open 1041269460 24.65 symbol=XXX
stock.high 1041269460 24.68 symbol=XXX
stock.low 1041269460 24.52 symbol=XXX
stock.close 1041269460 24.6 symbol=XXX
stock.volume 1041269460 90400 symbol=XXX

虽然看起来您正在使用 1 分钟的时间段,打开/关闭是多余的,所以也许这会更合适:

stock.quote.1m 1041269340 24.53 symbol=XXX
stock.quote.1m 1041269400 24.65 symbol=XXX
stock.quote.1m 1041269460 24.6 symbol=XXX
于 2013-05-28T23:49:18.380 回答
0

我为 opentsdb 写了一个小的 csv 导入器。

https://github.com/soeren-lubitz/csv-to-opentsdb

它适用于 CSV 文件的形式

Timestamp,Foo,Bar
1483342774,42.1,23.2

希望这可以帮助。反馈将不胜感激。

于 2017-01-02T07:41:41.767 回答