dev*_*ull 5 statistics audit analytics bigdata
我有一个系统,可以每分钟按计划检查大量实体的状态。对于每个实体,都会有一个 JSON 文件,其中包含指示不同属性状态的字段。系统将这些 JSON 文件转储到网络共享上。
每分钟运行的计划的每次运行都会生成一个 JSON,其中包含 20k 个奇数实体,这些实体具有数十个属性。
[
{
"entityid": 12345,
"attribute1": "queued",
"attribute2": "pending"
},
{
"entityid": 34563,
"attribute1": "running",
"attribute2": "successful"
}
]
Run Code Online (Sandbox Code Playgroud)
我需要能够跟踪实体属性状态随时间的变化,例如,回答诸如状态何时entity x变为“待定”之类的问题。存储这些数据并生成统计数据的最佳方法是什么?
您应该将数据存储在数据库中。如果您的数据始终具有相同的结构,您可以使用“经典”数据库,例如 Postgresql 或 Mysql。如果您的数据形状不规则,请查看 MongoDB 等 NoSQL 数据库。如果您需要以 JSON 格式获取数据,您可以轻松地将数据从数据库导出到 JSON。
这是一篇讨论 JSON 和数据库的文章:https://hashrocket.com/blog/posts/faster-json- Generation-with-postgresql