我需要创建一个时间序列数据库,并执行以下任务:
Mongo 是否适应了这一点,如果是,我应该如何构建数据库?(一个时间序列=一个文档?或者一个文档=时间序列的一个条目,所有这些文档构成了整个时间序列的集合?)
我在这里有点迷茫,我发现很难找到任何信息,因为通常 Mongo 非常灵活,因此用户可以在基础设施中进行选择。
任何专门解释如何在 Mongo 中管理时间序列的教程链接都非常受欢迎。
谢谢!
我建议每个文档有一个时间序列条目。每个文档存储多个条目存在一些问题:
另请注意,时间戳内置于默认的 MongoDB ObjectId 中。如果时间序列精度小于一秒,您可以使用它。
这是来自使用 MongoDB 的事件日志记录库的示例 BSON 文档:
Example format of generated bson document:
{
'thread': -1216977216,
'level': 'ERROR',
'timestamp': Timestamp(1290895671, 63),
'message': 'test message',
'fileName': '/var/projects/python/log4mongo-python/tests/test_mongo_handler.py',
'lineNumber': 38,
'method': 'test_emit_exception',
'loggerName': 'testLogger',
'exception': {
'stackTrace': 'Traceback (most recent call last):
File "/var/projects/python/log4mongo-python/tests/test_mongo_handler.py", line 36, in test_emit_exception
raise Exception(\'exc1\')
Exception: exc1',
'message': 'exc1',
'code': 0
}
}
Run Code Online (Sandbox Code Playgroud)
由于事件日志类似于时间序列,因此可能值得研究代码的其余部分。有 Java、C#、PHP 和 Python 版本。
这是另一个类似的开源项目:Zarkov
[更新]为了回应@RockScience 的评论,我添加了更多参考:
归档时间: |
|
查看次数: |
17786 次 |
最近记录: |