V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
这是一个专门讨论 idea 的地方。

每个人的时间,资源是有限的,有的时候你或许能够想到很多 idea,但是由于现实的限制,却并不是所有的 idea 都能够成为现实。

那这个时候,不妨可以把那些 idea 分享出来,启发别人。
Livid
267.72D
571.88D

最近打算做的一个关于 Time Series DB 的试验

  •  
  •   Livid ·
    PRO
    · Apr 23, 2018 · 7102 views
    This topic created in 2929 days ago, the information mentioned may be changed or developed.

    把 DNSCrypt-Proxy 的 TSV 格式的 query.log 用 Python 解析之后,同时插入到下面 4 个数据库中:

    • MySQL InnoDB
    • InfluxDB
    • TimescaleDB
    • ElasticSearch

    然后用 Flask 做一个统计各种 DNS 查询的前端(比如每天最多的 10 个域名 / 10 个客户端,及各种流量图之类),然后对比这 4 个数据库在这类 time series 的实际应用场景中到底能有多大的区别。

    p.s.


    估计这类问题也是这里很多同学每天正在经历的痛点,所以我就先把想法分享出来了。

    21 replies    2018-05-14 20:11:03 +08:00
    wph95
        1
    wph95  
       Apr 23, 2018   ❤️ 2
    可以加上一个 prometheus 试试(虽然和 influxDB 当前的设计思想基本一致)
    实际应用场景可以定义一下, 是写多读少?每分钟写多少量,每分钟查多少量。
    Livid
        2
    Livid  
    MOD
    OP
    PRO
       Apr 23, 2018 via Android
    @wph95 实际应用场景,我主要是想看看谁的聚合查询是最快的。
    hst001
        3
    hst001  
       Apr 23, 2018 via Android
    战略性 mark
    freeznet
        4
    freeznet  
       Apr 23, 2018
    必须 mark~!
    xupefei
        5
    xupefei  
       Apr 23, 2018 via Android
    比较 SQL 和 NoSQL,schema 和 schema-free 需要特别设计数据,因为设计不好的数据直接会造成不平等的比较。Time series benchmarking 在学术界也是个很新的领域,鲜有研究。
    给你一篇参考:ftp://ftp.informatik.uni-stuttgart.de/pub/library/medoc.ustuttgart_fi/DIP-3729/DIP-3729.pdf
    mlhorizon
        6
    mlhorizon  
       Apr 23, 2018
    Mark,坐等结果
    bysslord
        7
    bysslord  
       Apr 23, 2018 via iPhone
    最近也在折腾 influxdb,mark
    jy01264313
        8
    jy01264313  
       Apr 23, 2018
    再加一个 graphite 吧
    bomb77
        9
    bomb77  
       Apr 23, 2018
    期待结果,我先投 influxdb 一票,不知道结果会不会让人惊讶
    sun2920989
        10
    sun2920989  
       Apr 23, 2018
    等着看看
    ninion
        11
    ninion  
       Apr 23, 2018
    同在折腾 influxdb 求问有没有国内用户群
    rrfeng
        12
    rrfeng  
       Apr 23, 2018   ❤️ 1
    每条都入还是单位时间后统计再入?这个差别很大的。另外只有 MySQL 和 ElasticSearch 并没有 time series 的属性。

    1. MySQL 必然倒数(少量数据情况下可能胜出),但是需要没有可以配合的前端。
    2. ElasticSearch 配 Kibana 不需要前端可以快速出图。
    3. InfluxDB 和 TimescaleDB 在非定量场景(一个 series 单位时间内条数一定)会出现什么反应确实很好奇。
    4. 可以直接用 Grafana 统一出图,不需要 flask 自己写了。

    ES 的区别在于存全量数据(原始日志直接录入),分析可以选择任意字段。Influxdb 通常只用来存聚合后的统计数据……如果也把全量塞进去的话,需要将字段拆成很多很多的 tag,可能会影响查询效率。
    Livid
        13
    Livid  
    MOD
    OP
    PRO
       Apr 24, 2018
    之前 Hacker News 上关于 InfluxDB 和 TimescaleDB 的这个讨论很有料:

    https://news.ycombinator.com/item?id=16539317
    xuanyuanaosheng
        14
    xuanyuanaosheng  
       Apr 24, 2018 via Android
    持续关注
    widewing
        15
    widewing  
       Apr 24, 2018 via Android
    我用 OpenTSDB 是不是显得比较 out...
    freestyle
        16
    freestyle  
       Apr 24, 2018 via iPhone
    mark
    rrfeng
        17
    rrfeng  
       Apr 24, 2018 via Android
    @widewing
    open tsdb 可能还是目前最多用的。
    crystom
        18
    crystom  
       Apr 25, 2018
    不知道做游戏日志存储哪个好
    Kabie
        19
    Kabie  
       Apr 27, 2018
    最近还看到了一个略有不同的东西……
    https://github.com/pipelinedb/pipelinedb
    lambdaT
        20
    lambdaT  
       May 5, 2018 via iPhone
    mark
    capthy
        21
    capthy  
       May 14, 2018
    influxdb 配合 grafana 做前端很不错
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   802 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 66ms · UTC 20:25 · PVG 04:25 · LAX 13:25 · JFK 16:25
    ♥ Do have faith in what you're doing.