时间序列

Prometheus学习系列(九)之Prometheus 存储

我与影子孤独终老i 提交于 2019-12-18 02:33:46
前言 本文来自 Prometheus官网手册 和 Prometheus简介 存储 Prometheus是一个本地磁盘时间序列数据库,但也可选择与远程存储系统集成,其本地时间序列数据库以自定义格式在磁盘上存储时间序列数据。 1.1 磁盘布局 采集的样本按每两个小时的时间段保存到一个目录,该目录包含一个或多个块文件,该文件包含该时间窗口的所有时间序列样本,以及元数据文件和索引文件(用于将度量名称和标签索引到块文件中的时间序列)。通过API删除系列时,删除记录存储在单独的逻辑删除文件中(而不是立即从块文件中删除数据) 当前传入样本的块保存在内存中,但尚未完全保留。通过预写日志(WAL)防止崩溃,可以在崩溃后重新启动Prometheus服务器时重放。预写日志文件以128MB段存储在wal目录中。这些文件包含尚未压缩的原始数据,因此它们比常规块文件大得多。 Prometheus将保留至少3个预写日志文件,但是高流量服务器可能会看到三个以上的WAL文件,因为它需要保留至少两个小时的原始数据。 Prometheus服务器的数据目录的目录结构如下所示: ./data ├── 01BKGV7JBM69T2G1BGBGM6KB12 │ └── meta.json ├── 01BKGTZQ1SYQJTR4PB43C8PD98 │ ├── chunks │ │ └── 000001 │ ├──

Prometheus 入门

泪湿孤枕 提交于 2019-12-15 23:59:55
文章首发于公众号《程序员果果》 地址 : https://mp.weixin.qq.com/s/BjZyNcWEgflJMnjfceiluw 简介 Prometheus 是一套开源的系统监控报警框架。它启发于 Google 的 borgmon 监控系统,由工作在 SoundCloud 的 google 前员工在 2012 年创建,作为社区开源项目进行开发,并于 2015 年正式发布。 特点 作为新一代的监控框架,Prometheus 具有以下特点: 强大的多维度数据模型: 时间序列数据通过 metric 名和键值对来区分。 所有的 metrics 都可以设置任意的多维标签。 数据模型更随意,不需要刻意设置为以点分隔的字符串。 可以对数据模型进行聚合,切割和切片操作。 支持双精度浮点类型,标签可以设为全 unicode。 灵活而强大的查询语句(PromQL):在同一个查询语句,可以对多个 metrics 进行乘法、加法、连接、取分数位等操作。 易于管理: Prometheus server 是一个单独的二进制文件,可直接在本地工作,不依赖于分布式存储。 高效:平均每个采样点仅占 3.5 bytes,且一个 Prometheus server 可以处理数百万的 metrics。 使用 pull 模式采集时间序列数据,这样不仅有利于本机测试而且可以避免有问题的服务器推送坏的

深度学习与时间序列 Combination of the above Journal 2017

孤街浪徒 提交于 2019-12-14 17:39:24
Combination of the above Journal 2017 Yuhan Jia; Jianping Wu; Moshe Ben-Akiva; Ravi Seshadri; Yiman Du (2017). Rainfall-integrated traffic speed prediction using deep learning method. IET Intelligent Transport Systems, Volume: 11, Issue: 9, 11 Summary: The paper investigates the performance of deep belief network (DBN) and long short-term memory (LSTM) to conduct short-term traffic speed prediction with the consideration of rainfall impact as a non-traffic input. To validate the performance, the traffic detector data from an arterial in Beijing are utilised for model training and testing. The

matlab——排队论

走远了吗. 提交于 2019-12-11 16:23:43
步骤: (1)确定问题是否属于排队论领域 (2)确定修理工个数s (3)确定机器源数m (4)找到时间终止点T (5)带入模型即可 function out = MMSmteam ( s , m , mu1 , mu2 , T ) % M / M / S / m排队模型 % s——修理工个数 % m——机器源数 % T——时间终止点 % mu1——机器离开 - 到达时间服从指数分布 % mu2——修理时间服从指数分布 % 事件表: % p_s——修理工空闲概率 % arrive_time——机器到达事件 % leave_time——机器离开事件 % mintime——事件表中的最近事件 % current_time——当前时间 % L——队长 % tt——时间序列 % LL——队长序列 % c——机器到达时间序列 % b——修理开始时间序列 % e——机器离开时间序列 % a_count——到达机器数 % b_count——修理机器数 % e_count——损失机器数 % 初始化 arrive_time = exprnd ( mu1 , 1 , m ) ; arrive_time = sort ( arrive_time ) ; leave_time = [ ] ; current_time = 0 ; L = 0 ; LL = [ L ] ; tt = [ current

Pandas的时间序列数据(26)

馋奶兔 提交于 2019-12-11 00:27:01
Pandas的时间序列数据-datetime (本章节内容较多,右上角有目录导航,可参考部分内容定位) 时间序列数据在金融、经济、神经科学、物理学里都是一种重要的结构化的数据表现形式,以时间为基本组织领域内的观测值并进行相应的分析,即时间序列分析的主要目的是根据已有的历史数据对未来进行预测。经济数据中大多数以时间序列的形式给出。根据观察时间的不同,时间序列中的时间可以是年份、季度、月份或其他任何时间形式。pandas 最基本的时间序列类型就是以时间戳(TimeStamp)为 index 元素的 Series 类型。 Python和Pandas里提供大量的内建工具、模块可以用来创建时间序列类型的数据。 datetime模块,Python的datetime标准模块下的1).date子类可以创建日期时间序列的数据、2).time子类可创建小时分时间数据,而3).子类datetime则可以描述日期小时分数据。 import datetime cur = datetime.datetime(2018,12,30, 15,30,59) print cur,type(cur) d = datetime.date(2018,12,30) print d t = datetime.datetime(2018,12,30).now() print t 程序的执行结果: 2018-12-30 15:30

AR模型

筅森魡賤 提交于 2019-12-10 01:18:36
§1.AR模型 1.白噪声序列 如果时间序列 { ε t , t = 1 , ⋯ , T } \{\varepsilon_t,t=1,\cdots,T\} { ε t ​ , t = 1 , ⋯ , T } 满足: E ( ε t ) = 0 , V a r ( ε t ) = σ 2 对 任 意 s ≠ t , ε t 和 ε s 不 相 关 , 即 E ( ε t ε s ) = 0 则 称 { ε t , t = 1 , ⋯ , T } 为 白 噪 声 序 列 , 简 称 白 噪 声 ( w h i t e    n o i s e ) \begin{array}{lcl} E(\varepsilon_t)=0,Var(\varepsilon_t)=\sigma^2\\ 对任意s≠t,\varepsilon_t和\varepsilon_s不相关,即E(\varepsilon_t\varepsilon_s)=0\\ 则称\{\varepsilon_t,t=1,\cdots,T\}为白噪声序列,简称白噪声(white\,\, noise) \end{array} E ( ε t ​ ) = 0 , V a r ( ε t ​ ) = σ 2 对 任 意 s  ​ = t , ε t ​ 和 ε s ​ 不 相 关 , 即 E ( ε t ​ ε s ​ ) = 0 则 称 {

时间序列预测算法总结

。_饼干妹妹 提交于 2019-12-07 21:59:58
时间序列算法 time series data mining 主要包括 decompose (分析数据的各个成分,例如趋势,周期性), prediction (预测未来的值), classification (对有序数据序列的 feature 提取与分类), clustering (相似数列聚类)等。 时间序列的预测 常用的思路: 1、计算平均值 2、 exponential smoothing 指数衰减 不同的时间点,赋予不同的权重,越接近权重越高 3、snaive:假设已知数据的周期,上一个周期对应的值作为下一个周期的预测值 4、drift:飘移,即用最后一个点的值加上数据的平均趋势 5、Holt-Winters: 三阶指数平滑 Holt-Winters的思想是把数据分解成三个成分:平均水平(level),趋势(trend),周期性(seasonality)。R里面一个简单的函数stl就可以把原始数据进行分解: 一阶Holt—Winters假设数据是stationary的(静态分布),即是普通的指数平滑。 二阶算法假设数据有一个趋势,这个趋势可以是加性的(additive,线性趋势),也可以是乘性的(multiplicative,非线性趋势),只是公式里面一个小小的不同而已。 三阶算法在二阶的假设基础上,多了一个周期性的成分

回归预测算法比较

*爱你&永不变心* 提交于 2019-12-07 21:57:37
GBDT和时间序列分析的区别:GBDT算法做预测分析时考虑到一些影响目标值的因素,而时间序列主要考虑到数据在时序上的一些规律,忽略了其他因素对目标值的影响。这两种算法在实际应用中刚好互补。如果原始数据中包含足够的数据特征,通常情况下使用GBDT回归做预测分析效果会比时间序列更好。如果原始数据缺乏特征信息,使用时间序列进行预测反而很好。 来源: CSDN 作者: mbshqqb 链接: https://blog.csdn.net/mbshqqb/article/details/84300059

Prometheus(1) 概念

有些话、适合烂在心里 提交于 2019-12-06 13:54:34
Prometheus Prometheus是一套开源的监控&报警&时间序列数据库的组合。对我来说,它跟 zabbix 最大的区别就是它没有模板,所有的告警规则都得自己写。。。 它有一套查询命令(promQL)可以进行很多的运算。 组成及架构 介绍以下几个常用的组件: Prometheus Server : 用于收集和存储时间序列数据。 exporters : 用于暴露已有的第三方服务的 metrics 给 Prometheus。 Alertmanager : 从 Prometheus server 端接收到 alerts 后,会进行去除重复数据,分组,并路由到对收的接受方式,发出报警。常见的接收方式有:电子邮件,微信、钉钉等。 大概流程: Prometheus Server 定时去目标上抓取 metrics ,如配置好的 jobs、exporters ,每个目标需要暴露一个 http 接口给它定时抓取。 Prometheus Server 存储收集到的 metrics ,并运行已定义好的 alert.rules,记录新的时间序列或者向 Alertmanager 推送警报。 Alertmanager 根据配置文件,对接收到的告警进行处理,并发出告警。 Grafana 使用 Prometheus 作为数据源,根据收集到的 metrics 生成可视化数据 概念 数据模型

Prometheus学习系列(九)之Prometheus 存储

大兔子大兔子 提交于 2019-12-06 12:30:32
前言 本文来自 Prometheus官网手册 和 Prometheus简介 存储 Prometheus是一个本地磁盘时间序列数据库,但也可选择与远程存储系统集成,其本地时间序列数据库以自定义格式在磁盘上存储时间序列数据。 1.1 磁盘布局 采集的样本按每两个小时的时间段保存到一个目录,该目录包含一个或多个块文件,该文件包含该时间窗口的所有时间序列样本,以及元数据文件和索引文件(用于将度量名称和标签索引到块文件中的时间序列)。通过API删除系列时,删除记录存储在单独的逻辑删除文件中(而不是立即从块文件中删除数据) 当前传入样本的块保存在内存中,但尚未完全保留。通过预写日志(WAL)防止崩溃,可以在崩溃后重新启动Prometheus服务器时重放。预写日志文件以128MB段存储在wal目录中。这些文件包含尚未压缩的原始数据,因此它们比常规块文件大得多。 Prometheus将保留至少3个预写日志文件,但是高流量服务器可能会看到三个以上的WAL文件,因为它需要保留至少两个小时的原始数据。 Prometheus服务器的数据目录的目录结构如下所示: ./data ├── 01BKGV7JBM69T2G1BGBGM6KB12 │ └── meta.json ├── 01BKGTZQ1SYQJTR4PB43C8PD98 │ ├── chunks │ │ └── 000001 │ ├──