时间序列分析 - 基础知识与分析场景(Time series analysis)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了时间序列分析 - 基础知识与分析场景(Time series analysis)相关的知识,希望对你有一定的参考价值。

参考技术A

在所有的可视化仪表板中,和时间相关的图表是最常见的。除了最基本的折线图外,我们还有很多方式来呈现和分析时间序列的数据。

在开始探查分析前,我们需要先确定时间序列的模式。

常见的模式有:

很多时候时间序列会同时包含趋势、季节以及周期性。

美国新建房屋销售额表现出强烈的 年度季节性 ,以及周期为6~10年的 周期性 。同时数据并没有表现出明显的趋势性。

柏林的游客数据同时包含了 趋势性 季节性 ,即总的游客数量是稳步上升的,同时又有明显的季节性。

为了更清楚的看到 季节性 的分布,我们可以将多年的数据对齐到以月的方式查看。

不借助外部仪器,人类的极限反应速度可以到100毫秒。在科学分析场景,如物理学,时间精度可以更高。在商业分析场景,一般拿到的数据粒度会以:年、季度、月、周、日、小时 居多。细粒度的时间可以向上聚合到粗粒度的,比如:拿到的是去年每一天的销售额数据,但作为年度的总结,只要看每个月的销售额即可。

等间距,一个接一个的。如3月1日、3月2日、3月3日、一直到 3月15日每天的数据。如果缺了某几天的数据,在时间轴上仍然会保留对应的位置。

假设我们想看一周中每天的销售表现,这时可以从连续的时间中,提取出离散的周几时间来进行分析。

在具体分析时,我们一般还会区分下工作日与周末,并分别看平均值。

总结过去,展望未来。我们总是希望知道当前相比过去的变化。

以各个地区在过去几年销售额的变化为例,我们可以看到6个地区详细到每个月的销售额数据,但当我们想知道相比过去是否有增长或哪个地区的增长最快时,就没法看清了。

这个时候,可以通过 斜率图 (slopegraphs)来更好的分析与呈现,具体做法是只保留头尾时间的数据,然后用折线图来呈现,为了更容易发现上升下降,还可以用颜色来区分。

从假设分析(What-If Analysis)的角度,我们会关心如果在某个时间点做了某个行动所带来的收益。

以买房为例,我们会关心如果我在 某个时间点 买了房,那么截止到当前的涨幅变化,以及相比更早的时间的变化。

这个是纽约的房价变化图,如果在2012年买入,那么到了2017时,会有21%的涨幅。而如果是在2006年的高点购入,则只有6%的涨幅。在做这样的假设分析时,我们一般会允许用户指定时间参数,以更灵活的分析前后的变化。

相比过程本身,人们更容易关注结果。

假设我们有不同类别的商品在销售,每年的销售额稳步上升,除了关心具体的收入外,我们还想知道各个类别的排名变化。如果通过颜色来细分各个类别的销售额,虽然也可以看出一些排名变化,但还是会不直观。

这时我们可以先计算每年的销售额排名,然后用排名变化图(Bump Chart)来呈现。相比销售额随时间的大幅波动,排名变化图可以让你更好的聚焦于关心的点。

以玩具总动员三部曲为例,这3部电影发行于不同的年份,也都获得了很高的收入。

如果只看累计的票房收入,我们可以知道第二部的表现最好。但如果我们想知道这几部电影从首映日开始的增长变化或火爆程度就没法看出了。

从这个图上我们可以按周看发生在不同年份的,三部曲的每周票房收入。

更好的方式把时间对齐到一个 公共基准点 来查看分析,而不是查看一段绝对时间范围的数据。按星期看自首映日开始的总收入,就更容易比较增长曲线了。

在项目管理的场景,一个项目会拆分为多个可以并行或有前后依赖关系的任务。

为了查看总的用时,以及同时进行的任务,我们可以用甘特图(Gantt charts)来呈现和分析。这儿的205天是整个项目的用时。如果要算人天成本,可以把这儿的每个任务的用时加起来,即投入了4个人,总的人天是:292。

Loadrunner压测结果性能问题分析指标项

事务分析内容:
用户事务分析是站在用户角度进行的基础性能分析。
1、Transation Sunmmary(事务综述)
对事务进行综合分析在一定测试时间内用户事务的成功与失败情况,判断系统是否正常运行。

2、Average Transaciton Response Time(事务平均响应时间)
测试场景运行期间的事务执行所用的平均时间,通过它可以分析测试场景运行期间应用系统的性能走向。

3、Transactions per Second(每秒通过事务数)
在场景运行的每1秒每个事务通过、失败以及停止的数量,分析TPS主要是看曲线的性能走向。
例:当压力加大时,点击率/TPS曲线如果变化缓慢或者有平坦的趋势,很有可能是服务器开始出现瓶颈。

4、Total Transactions per Second(每秒通过事务总数)
显示在场景运行时,在每一秒内通过的事务总数、失败的事务总署以及停止的事务总数。

5、Transaction Performance Sunmmary(事务性能摘要)
事务性能摘要:显示所有事务的最小、最大和平均执行时间,可以直接判断响应时间是否符合用户的要求。

6、Transaction Response Time Under Load(事务响应时间与负载)
“事务响应时间与负载”是“正在运行的虚拟用户”图和“平均响应事务时间”图的组合,通过它可以看出在任一时间点事务响应时间与用户数目的关系,从而掌握系统在用户并发方面的性能数据,为扩展用户系统提供参考。

Web资源分析内容:
1、Hits per Second(每秒点击次数)
“每秒点击次数”,即使运行场景过程中虚拟用户每秒向Web服务器提交的HTTP请求数。

2、Throughput(吞吐率)
“吞吐率”显示的是场景运行过程中服务器的每秒的吞吐量。其度量单位是字节,表示虚拟用在任何给定的每一秒
从服务器获得的数据量。
可以依据服务器的吞吐量来评估虚拟用户产生的负载量,以及看出服务器在流量方面的处理能力以及是否存在瓶颈。

3、HTTP Status Code Summary(HTTP状态代码概要)
“HTTP状态代码概要”显示场景或会话步骤过程中从Web服务器返回的HTTP状态代码数,
该图按照代码分组。 HTTP状态代码表示HTTP请求的状态,类似如下:
2xx - 成功
3xx - 重定向
4xx - 客户端错误
500 - 内部服务器错误。*

4、HTTP Responses per Second(每秒HTTP响应数)
每秒HTTP响应数:是显示运行场景过程中每秒从Web服务器返回的不同HTTP状态代码的数量,
还能返回其它各类状态码的信息,通过分析状态码,可以判断服务器在压力下的运行情况。

5、Pages Downloader per Second(每秒下载页面数)
每秒下载页面数:每一秒内从服务器下载的网页数。使用此图可依据下载的页数来计算Vuser生成的负载量。

6、Retries per Second(每秒重试次数)
“每秒重试次数”显示场景或会话步骤运行的每一秒内服务器尝试的连接次数。
在下列情况将重试服务器连接:
A、初始连接未经授权
B、要求代理服务器身份验证
C、服务器关闭了初始连接
D、初始连接无法连接到服务器
E、服务器最初无法解析负载生成器的IP地址

7、Connections(连接数)
连接数:显示场景或会话步骤运行过程中每个时间点打开的TCP/IP连接数。借助此图,
可以知道何时需要添加其他连接。

8、Connections Per Second(每秒连接数)
每秒连接数:显示在运行过程中每秒建立的TCP/IP连接数。

9、SSLs Per Second(每秒SSL连接数)
每秒SSL连接数:显示场景或会话步骤运行的每一秒内打开的新的以及重新使用的SSL连接数。
当对安全服务器打开TCP/IP连接后,浏览器将打开SSL连接。

网页元素细分项:
1、Download Time Breaddown(下载时间细分)
下载时间细分:图显示网页中不同元素的下载时间,同时还可按照下载过程把时间进行分解,
用不同的颜色来显示DNS解析时间、建立连接时间、第一次缓冲时间等各自所占比例。

2、Component Breakdown(Over Time)(组件细分(随时间变化))
组件细分:显示选定网页的页面组件随时间变化的细分图。通过该图可以很容易的看出哪些
元素在测试过程中下载时间不稳定。

3、Download Time Breakdown(Over Time)(下载时间细分(随时间变化))
下载时间细分: 图显示选定网页的页面元素下载时间细分情况,它非常清晰地显示了页面各个
元素在压力测试过程中的下载情况。

4、Time to First Buffer Breakdown(Over Time)(第一次缓冲时间细分(随时间变化))
第一次缓冲时间细分:显示成功收到Web服务器返回的第一次缓冲之前的这段时间,
场景或会话步骤运行的每一秒中每个网页组件的服务器时间和网络时间(以秒为单位)。
可以使用该图确定场景或会话步骤运行期间服务器或网络出现问题的时间。
First Buffer Time:是指客户端与服务器端建立连接后,从服务器发送第一个数据包开始计时,
数据经过网络传送到客户端,到浏览器接收到第一个缓冲所用的时间。

5、Page Component Breakdown(页面组件细分)
页面组件细分:图显示每个网页及其组件的平均下载时间(以秒为单位)。

6、Page Component Breakdown(Over Time)(页面组件分解(随时间变化))
页面组件分解(随时间变化):图显示压测运行期间的每一秒内每个网页及其组件的平均响应时间 (以秒为单位)。

7、Page Download Time Breakdown(页面下载时间细分)
页面下载时间细分:图显示每个页面组件下载时间的细分,可以根据它确定在网页下载期间事务响应
时间缓慢是由网络错误引起还是由服务器错误引起。

8、Page Download Time Breakdown(Over Time)(页面下载时间细分(随时间变化))
页面下载时间细分:显示压测运行期间,每一秒内每个页面组件下载时间的细分。

9、Time to First Buffer Breakdown(第一次缓冲时间细分)
第一次缓冲时间细分:显示成功收到从Web服务器返回的第一次缓冲之前的这一段时间内的每个
页面组件的相关服务器/网路时间。如果组件的下载时间很长,则可以使用此图确定产生的问题与
服务器有关还是与网络有关。
网络时间:定义为第一个HTTP请求那一刻开始,直到确认为止所经过的平均时间。
服务器时间:定义为从收到初始HTTP请求确认开始,直到成功收到来自Web服务器的一次缓冲为止所经过的
平均时间。
10、Downloader Component Size(KB)(已下载组件大小)
已下载组件大小:显示每个已经下载的网页组建的大小。

以上是关于时间序列分析 - 基础知识与分析场景(Time series analysis)的主要内容,如果未能解决你的问题,请参考以下文章

最强解读SD-WAN基础内容与场景分析

科普知识之---数据挖掘--- 商业应用场景

安全客简报 | CSRF 攻击场景分析与重现学习

典型用户与用户场景分析

VMWare vSphere - CPU性能分析与监控之就绪时间(ready time)分析

性能测试基础知识