openorg时间序列api的实现
openorg-timeseries的Python项目详细描述
这是openorg time-series API specification作为django应用程序的实现。
功能
- 以压缩的二进制格式存储数据,以便快速检索
- 以CSV格式存档数据,以取消基于格式的锁定
- 时区感知 可定制的聚合(例如对于日平均值和周平均值,最小值和最大值)
- 实现其他时间序列实现所使用的api
- 允许从restful web服务创建、修改和更新时间序列
- 具有用于管理时间序列的细粒度权限模型
尚未实现的功能
- 管理界面仍然有点不友好
- 系列在一段时间内未更新时的可自定义警报
- 基于仪表和计数器的系列(目前仅限于基于周期的系列)
- 虚拟时间序列(即时间序列是其他时间序列的函数)
架构
此项目包括DJANGO应用程序,可以在现有的应用程序中包含 通过将'openorg_timeseries'添加到^{tt2}中的django项目$ Django设置文件中的变量。
openorg_timeseries.longliving包含一个threading.Thread,它中介对底层数据的访问,并阻止…
演示应用程序
这个项目附带了一个演示web服务,您可以使用它快速评估其有用性。
运行
首先,使用pip:
$ pip install -r requirements.txt
接下来,使用以下命令启动演示服务器:
$ django-admin.py rundemo –settings=openorg_timeseries.demo.settings –pythonpath=.
给它几秒钟,然后您可以将web浏览器指向http://localhost:8000/ <http://localhost:8000/
查看它的运行情况。
详细信息
演示站点在启动时执行以下步骤:
- 在当前目录中创建demo-data目录以存储演示使用的数据
- 运行syncdbdjango管理命令,在demo-data目录中创建sqlite3数据库
- 启动一个长期有效的过程,管理数据存储和检索
- 创建新的时间序列并加载一些示例数据
- 运行runservermanagement命令(不带自动重载器)启动django开发服务器