Statistics 如何跟踪大量实体的JSON数据随时间的变化?

Statistics 如何跟踪大量实体的JSON数据随时间的变化?,statistics,bigdata,analytics,audit,Statistics,Bigdata,Analytics,Audit,我有一个系统,每分钟按计划检查大量实体的状态。对于每个实体,都会有一个JSON文件,其中包含指示不同属性状态的字段。系统将这些JSON文件转储到网络共享上 每分钟运行一次的计划都会生成一个JSON,其中包含20k多个实体,像这样的实体有几十个属性 [ { "entityid": 12345, "attribute1": "queued", "attribute2": "pending" }, { "entit

我有一个系统,每分钟按计划检查大量实体的状态。对于每个实体,都会有一个JSON文件,其中包含指示不同属性状态的字段。系统将这些JSON文件转储到网络共享上

每分钟运行一次的计划都会生成一个JSON,其中包含20k多个实体,像这样的实体有几十个属性

[
    {
        "entityid": 12345,
        "attribute1": "queued",
        "attribute2": "pending"
    },
    {
        "entityid": 34563,
        "attribute1": "running",
        "attribute2": "successful"
    }
]

我需要能够跟踪实体的属性状态随时间的变化,例如,回答诸如
实体x
的状态何时变为“待定”之类的问题。存储这些数据并生成统计数据的最佳方式是什么

您应该将数据存储在数据库中。如果您的数据总是具有相同的结构,则可以使用“经典”数据库,如Postgresql或Mysql。如果您的数据形状不规则,请查看NoSQL数据库,如MongoDB。如果您需要以JSON格式获取数据,您可以轻松地将数据从数据库导出到JSON


下面是一篇讨论JSON和数据库的文章:

如果您只更改dict中某些字段的值,而不想使用DB,最好的选择是:
1) 将Json文件转换为字符串,为此可以使用
Json.dumps

2) 使用diff lib比较两个字符串(更新前后):

您是否尝试过使用差异库?你还对这个问题的答案感兴趣吗?