TimeSeries数据库
PhilDB的Python项目详细描述
PHILDB项目
timeseries数据库项目:用于存储可能更改的timeseries 数据。例如水文数据,如径流数据,其中 随着质量控制流程的改进 随时间记录的数据集。
phildb应该能够以 熊猫。在这个时候,只有每天的数据都经过了广泛的测试 一些有限的日常使用。
有关phildb设计的更多信息,请参见论文: PhilDB: the time series database with built-in change logging。 本文探讨了现有的时间序列数据库解决方案,讨论了 phildb的动机,描述了phildb的架构和哲学 软件,包括infloxdb、phildb和scidb之间的评估。
依赖性
需要Python2.7或更高版本(主要在MacOSX和Linux上使用Python2.7和Python3.5进行测试)。 测试套件使用travis ci和python 2.7、3.4、3.5和3.6在linux上运行。 测试套件使用Appveyor和Python3.4在Windows上运行。
所有python依赖项都记录在python_需求中 文件。
安装
phildb是pip可安装的。
最新的稳定版本可以通过pypi安装:
pip install phildb
最新的稳定版本也可以通过conda安装:
conda install -c amacd31 phildb
最新的开发版本可以通过github安装:
pip install git+https://github.com/amacd31/phildb.git@dev
最新的开发版本可以从conda安装,安装方式为:
conda install -c amacd31/label/dev phildb
开发环境
在makefile中,开发环境的许多进程(包括测试和文档生成)已经自动化。
virtualenv包可用于创建 必需的python包。
创建安装了依赖项的虚拟环境:
make venv
测试一切正常:
make test
制作文档:
make docs
在doc/build/html/index.html查看生成的文档
有关其他详细信息,请参阅安装文件。
用法
创建新的phildb
phil-create new_tsdb
打开新创建的phildb
phildb new_tsdb
如果使用make构建的开发环境,请将其与添加phildb工具一起加载到您的路径:
. load_env
示例
有关设置test phil数据库的代码,请参见examples目录 不同的数据集。每个示例都附带一个自述文件,概述 步骤获取一些数据并加载它。每个 示例可以用作准备TimeSeries数据库和 加载数据。
examples/hrs/example还包含一个示例脚本(autocorr.py) 使用phildb处理hrs数据。脚本计算 hrs数据集中所有streamflow时间序列的自动关联。
目前有三组示例代码,acorn sat, bom_观察,和小时。
橡实-sat
ACORN-SAT Example.ipynb位于examples/acorn sat中,演示了加载最小值 澳大利亚112个车站日最高气温记录。
本例中使用的数据集是澳大利亚气候观测 参考网络-地表空气温度(ACORN-SAT),见 澳大利亚气象局网站 ACORN-SAT website。
物料清单观察值
Bureau of Meterology observations example.ipynb 位于Examples/Bom_Observations演示加载 72小时观测json文件中的半小时气温数据。
本例中使用的数据是来自 澳大利亚气象局网站(如链接的json文件 在本页:Sydney Airport observations
小时
HRS Example.ipynb 位于examples/hrs演示每日加载 221个径流站的流量数据ar在澳大利亚附近。
本例中使用的数据集是水文参考站 (hrs)澳大利亚气象局网站上的数据集 HRS website。
这个例子还包括一个脚本来计算自相关 对于hrs数据集中的所有streamflow时间序列。