首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >服务器时间序列指标的Cassandra数据建模

服务器时间序列指标的Cassandra数据建模
EN

Stack Overflow用户
提问于 2020-01-06 20:03:29
回答 1查看 41关注 0票数 0

我将每秒收集服务器指标,如操作系统指标、Java进程信息等。

例如JSON:

代码语言:javascript
复制
{
  "localhost": {
    "os": {
      "cpu": 4,
      "memory": 16
    },
    "java": {
      "jvm": {
        "vendor": "Oracle"
      },
      "heap": 4,
      "version": 1.8
    }
  }
}

对于这类数据,最好的数据模型是什么?我应该将每种类型的指标存储在单独的表中还是全部存储在一个表中?

EN

回答 1

Stack Overflow用户

发布于 2020-01-06 23:14:04

一种选择是将每个单独的指标转换为带点的字符串,以便您的JSON:

代码语言:javascript
复制
{
  "localhost": {
    "os": {
      "cpu": 4,
      "memory": 16
    },
    "java": {
      "jvm": {
        "vendor": "Oracle"
      },
      "heap": 4,
      "version": 1.8
    }
  }
}

会变成这样:

代码语言:javascript
复制
Host        Key               Value
localhost   os.cpu            4
localhost   os.memory         16
localhost   java.jvm.vendor   Oracle
localhost   java.heap         4
localhost   java.version      1.8 

上面未显示的是时间戳列。主键将是host+key+timestamp。如果您不需要能够按单个主机进行查询,则可以将主机名集中到键中,即key=localhost.os.cpu。

查询需求的精确细节很大程度上决定了这是否是正确的选择。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59611782

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档