日志分析图表:同比环比场景和TreeMap

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
日志服务 SLS,月写入数据量 50GB 1个月
简介: 一. 同比环比场景应用 同比环比是日志分析中十分常见的场景,日志服务于7月推出同比环比函数,我们可以利用其强大的分析能力,配合日志分析图表中的同比环比图以及折线图和柱状图进行非常直观清晰的展示。 同比环比函数 同比函数用于把当前区间的计算结果和之前一个指定区间的结果进行比较。

一. 同比环比场景应用

同比环比是日志分析中十分常见的场景,日志服务于7月推出同比环比函数,我们可以利用其强大的分析能力,配合日志分析图表中的同比环比图以及折线图和柱状图进行非常直观清晰的展示。

同比环比函数

同比函数用于把当前区间的计算结果和之前一个指定区间的结果进行比较。

  • 函数语法:
compare(value, time_window)
  • value:double或long类型数据
  • time_window:数值类型,单位为秒

比较当前窗口计算出来的value值和time_window计算出来的结果进行比较,返回值为数组类型,分别是[当前值,time_window之前的值,当前相对于之前的增长比例。]

  • 使用样例:
* | select compare( pv , 86400) from (select count(1) as pv from log)

更多可以参考同比和环比函数

场景1:最近1小时PV日同比分析

Step1:

我们知道,日志服务提供的分析语法可以通过SQL的方式对某一时间段内的数据进行统计,如最近1小时的PV,我们把这个定义为一个**窗口1**:
* | select count(1) as pv from log

Step2:

为窗口添加同比信息,这里以日同比为例,获取昨日(以秒为单位即86400)同一个小时窗口的数据信息,即**窗口2**,优化查询语句为:
* | select compare(pv , 86400) from
    (
        select count(1) as pv from log
    )

这里会得到一个数组[894, 897, 0.99665551839],即为[窗口1数据, 窗口2数据,窗口1/窗口2]

Step3:

将获取到的数组进行整合,分别提出为3列进行查看,优化查询语句为:
* | select
    diff[1] as "今天",
    diff[2] as "昨天",
    diff[1]-diff[2] as "比例" from
    (
        select compare(pv , 86400) as diff
        from (
            select count(1)  as pv from log
        )
    )

undefined

从结果中可以看到今天、昨天和比例三组值,从而可以得到结论为同比少了3次PV,对进行属性配置然后画图可得:

  • 图表类型:同比环比图
  • 显示值:今天
  • 对比值:比例
  • 趋势比较阈值:0(diff[1]-diff[2]获取差值和0进行对比,增加和减少不同情况展示)

undefined

场景2:最近1天PV日每小时日环比增长分析

Step1:

构建最近1天PV变化根据小时变化趋势查询语句,时间范围选取**今天**:
* | select
    date_format(date_trunc('hour', __time__), '%H:%i') as time,
    COUNT(1) as pv
    group by time
    order by time

Step2:

为窗口添加同比信息,优化查询语句为:
* | select
    time,
    compare(pv , 86400) as diff
    from (
        select
            date_format(date_trunc('hour', __time__), '%H:%i') as time,
            COUNT(1) as pv from log
            group by time
            order by time
    )
    group by time

Step3:

将diff数组提取两个窗口的计算差值:
* | select
    time,
    diff[1] as "今天",
    diff[2] as "昨天"
    from (
        select
        time,
        compare(pv , 86400) as diff
        from (
            select
            date_format(date_trunc('hour', __time__), '%H:%i') as time,
            COUNT(1) as pv from log
            group by time
        )
        group by time
    )
    order by time

从结果中可以看到时间、今天和昨天三组值,对进行属性配置然后画图可得:

  • 图表类型:线图
  • X轴:time
  • 左Y轴:今天、昨天

undefined

二. TreeMap(矩形树图)

矩形树图,即矩形式树状结构图(Treemap),用矩形面积表示数据的大小。各个小矩形的面积越大,表示占比越大。

和柱状图不一样的是,矩形树图更适合展示更多分类的信息(柱状图不建议超过10种分类信息)

场景:查看访问分布前30的来源ip地址

* | select remote_addr, count(1) as c group by remote_addr order by c limit 30
  • 图表类型:矩形树图
  • 分类:remote_addr
  • 数值列:c

undefined

结语

如果您有需要支持的图表类型也欢迎联系我们,期待您的意见和建议


image
相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
11月前
|
关系型数据库 物联网 PostgreSQL
沉浸式学习PostgreSQL|PolarDB 11: 物联网(IoT)、监控系统、应用日志、用户行为记录等场景 - 时序数据高吞吐存取分析
物联网场景, 通常有大量的传感器(例如水质监控、气象监测、新能源汽车上的大量传感器)不断探测最新数据并上报到数据库. 监控系统, 通常也会有采集程序不断的读取被监控指标(例如CPU、网络数据包转发、磁盘的IOPS和BW占用情况、内存的使用率等等), 同时将监控数据上报到数据库. 应用日志、用户行为日志, 也就有同样的特征, 不断产生并上报到数据库. 以上数据具有时序特征, 对数据库的关键能力要求如下: 数据高速写入 高速按时间区间读取和分析, 目的是发现异常, 分析规律. 尽量节省存储空间
694 1
|
8天前
|
SQL 数据采集 JSON
使用对比!SLS 数据加工 SPL 与旧版 DSL 场景对照
本文讨论在不同的数据处理需求中,新版数据加工 SPL 与旧版数据加工 DSL 的使用对照。
|
5天前
|
存储 Kubernetes Java
阿里泛日志设计与实践问题之在写多查少的降本场景下,通过SLS Scan方案降低成本,如何实现
阿里泛日志设计与实践问题之在写多查少的降本场景下,通过SLS Scan方案降低成本,如何实现
|
30天前
|
消息中间件 存储 Oracle
共识协议的技术变迁问题之能不能介绍下Share Log应用场景Pub/Sub
共识协议的技术变迁问题之能不能介绍下Share Log应用场景Pub/Sub
|
30天前
|
消息中间件 容灾
共识协议的技术变迁问题之Share Log在哪些场景中被广泛应用
共识协议的技术变迁问题之Share Log在哪些场景中被广泛应用
|
30天前
|
监控 存储
日志存储问题之志格式的乱象如何解决
日志存储问题之志格式的乱象如何解决
|
3月前
|
存储 监控 Apache
查询提速11倍、资源节省70%,阿里云数据库内核版 Apache Doris 在网易日志和时序场景的实践
网易的灵犀办公和云信利用 Apache Doris 改进了大规模日志和时序数据处理,取代了 Elasticsearch 和 InfluxDB。Doris 实现了更低的服务器资源消耗和更高的查询性能,相比 Elasticsearch,查询速度提升至少 11 倍,存储资源节省达 70%。Doris 的列式存储、高压缩比和倒排索引等功能,优化了日志和时序数据的存储与分析,降低了存储成本并提高了查询效率。在灵犀办公和云信的实际应用中,Doris 显示出显著的性能优势,成功应对了数据增长带来的挑战。
查询提速11倍、资源节省70%,阿里云数据库内核版 Apache Doris 在网易日志和时序场景的实践
|
3月前
|
存储 数据采集 弹性计算
日志服务的典型应用场景
日志服务的典型应用场景
53 3
|
9月前
|
存储 数据采集 监控
从存储统一到数据融合,SLS在可观测场景的思考和行动
介绍SLS在可观测数据融合分析的一系列技术升级,融合Trace、全栈监控、Continuous Profiling、移动端监控等功能,帮助大家更快速地构筑全栈、自动化的观测能力。
127740 52
|
3月前
|
设计模式 Java 数据库连接
设计模式与面向对象编程:举例说明在Java中应用工厂模式的场景,并编写一个简单的工厂模式实现。编写一个Java装饰器,用于添加日志记录功能到现有方法上。
设计模式与面向对象编程:举例说明在Java中应用工厂模式的场景,并编写一个简单的工厂模式实现。编写一个Java装饰器,用于添加日志记录功能到现有方法上。
33 0

相关产品

  • 日志服务