【问题标题】:Importing csv data into OpenTSDB将 csv 数据导入 OpenTSDB
【发布时间】:2013-05-28 23:18:57
【问题描述】:

我已在 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 的任何提示?谢谢。

【问题讨论】:

    标签: opentsdb


    【解决方案1】:

    您需要编写一个脚本来将您的 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
    

    【讨论】:

      【解决方案2】:

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

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

      它适用于 CSV 文件的形式

      Timestamp,Foo,Bar
      1483342774,42.1,23.2
      

      希望这会有所帮助。反馈将不胜感激。

      【讨论】:

        猜你喜欢
        • 2015-06-23
        • 2019-10-21
        • 1970-01-01
        • 1970-01-01
        • 2011-08-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-09-19
        相关资源
        最近更新 更多