通过SLS十分钟完成数据入湖OSS

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,内容安全 1000次 1年
日志服务 SLS,月写入数据量 50GB 1个月
简介: 数据湖的优势是能够在低存储成本下很好满足长期存储、查询、分析、读取,并在此基础上做数据发现,BI,ML等。本文实践如何通过SLS快速完成日志数据入湖。

背景

数据湖是一类存储数据自然/原始格式的系统或存储,通常是对象块或者文件,包括原始系统所产生的原始数据拷贝以及为了各类任务而产生的转换数据,包括来自于关系型数据库中的结构化数据(行和列)、半结构化数据(如CSV、日志、XML、JSON)、非结构化数据(如email、文档、PDF等)和二进制数据(如图像、音频、视频)。数据湖的优势是能够在低存储成本下很好满足长期存储、查询、分析、读取,并在此基础上做数据发现,BI,ML等。我们发现日志数据在使用场景和需求上有着新的趋势:一是日益严格的合规要求,日志数据要求留存时间变长,二是日志的价值被进一步挖掘,机器学习、离线分析、数据发现等。总结来看,日志的生命周期中,除了基本的OLAP能力做DevOps,还有用于数据洞察,合规审计,规则告警,和DevOps下一形态AIOps等。

日志数据的入湖有一般以下的方式,一种是通过计算引擎(Spark/Flink等)如Spark Streaming,Connect生态比较丰富,但往往需要对计算引擎“专精”的人员进行运维和开发,而且运行的成本也不低;如果不依赖计算引擎完全自行开发,一是很难针对不同的云产品、存档日志和各种自建开源日志平台进行统一的收集方式,各种日志源Connect的方式不同,存储时不同的格式、不同的压缩类型,都会导致开发成本快速增加,而脱离计算引擎也很难保证稳定性和数据的不丢不错。

SLS日志入湖解决方案

这里介绍下SLS的解决方案日志服务(SLS)是云原生观测分析平台,为Log/Metric/Trace等数据提供大规模、低成本、实时平台化服务。一站式提供数据采集、加工、分析、告警可视化与投递功能,全面提升研发、运维、运营和安全等场景数字化能力。SLS集成了数据投递到OSS中的功能,Serverless的方式助力日志数据入湖,支持丰富的日志数据源,一站式的分析查询,多种投递格式,压缩类型,无需运维;提供详细的任务监控,而且可配置投递量波动,投递失败条数等报警,可实时触达用户。

目前可以在OSS控制台入口即可快速完成日志入湖的链路:支持 Log/Metric/Trace 数据实时采集、加工、投递功能,帮助您把散落在各个地方的日志数据统一采集后投递到 OSS 实现数据湖构建,在投递过程中提供了对数据加工、构建列存格式、设置压缩等功能支持。

数据入湖后用户可以基于OSS丰富的数据湖生态构建处理和分析的管线,如DLF、DLA、自建开源等,数据流动起来可以创造更大的价值!

目前有两个选择,一种是SLS现有数据投递OSS,适合已有SLS项目的用户, 另一种是数据采集并投递OSS,可完成数据采集、处理、投递SLS整个过程,适合同时有对云服务或自建日志有收集和中心化管理查询的用户。

下面我会通过实践的方式完成日志数据的收集,加工,投递入湖的功能。

路径一:SLS现有数据投递OSS

选择投递的源

  1. 点击SLS现有数据投递OSS按钮
  2. 选择现有的SLS的project和logstore
  3. 选择投递OSS

进行数据加工(可选)

如果对日志数据有下面的使用需求,可以选择对日志进行数据加工后再投递:

  • 数据过滤:用户场景中无需对logstore中所有数据都转储,选择使用数据加工丢弃掉无需存储的日志数据
  • 数据规整:logstore中的日志并不像nginx访问日志等标准日志一样字段存在统一规范,可通过数据加工规整字段,统一schema投递后更方便进行分析
  • 数据富化:用户通过连接一些外表(MySQL, CSV, OSS内数据等)对日志内容进行富化,比如日志中只有uid等信息,可以通过join用户表补充一些额外信息,分析师无需在分析数据、创建报表时再引入外部依赖
  • 数据脱敏:现在越来越重视对于隐私的保护,用户需要对于使用数据湖进行BI,ML等功能的使用方进行脱敏,如手机号只显示前三位和后两位,或对其他敏感信息进行md5 hash脱敏

下方是一个简单的数据过滤的例子,场景中要将OSS的访问日志进行投递,在投递前对数据进行一定的过滤,只保留GetObject方法的日志以后续统计一些热点文件

点击加工后投递,跳转到对应logstore的数据加工界面

添加下面的数据加工语句

e_keep(e_search("operation=GetObject"))

此DSL的含义为仅保留operation字段为"GetObject"的日志。点击预览,能看到10条数据预览加工后有3条operation=GetObject的日志被保留下来,通过数据加工过滤后可以减少后续投递和OSS存储费用。

之后选择保存数据加工,填写存储的目标logstore,创建成功后点击确认

确认后即可前往投递OSS

投递

OSS投递功能如下

目前已经有部分region上线了新版的投递功能并持续迭代中,具体的区别可参考OSS投递新旧版区别

我们可以使用预览数据,对logstore中的日志数据进行预览,方便确定投递的格式和配置

更详细的配置说明可以参考:数据投递概述

路径二:数据采集并投递OSS

点击数据采集并投递OSS,跳转至接入数据页面,支持丰富的接入场景,包含阿里云的云产品、丰富的SDK、自建日志和OSS等多渠道导入等。接入数据更多的说明可以参考:数据采集概述

模拟接入

可以通过模拟接入快速测试投递入湖功能是否符合预期,包含下面种类的模拟日志

以OSS访问日志(模拟)为例,点击OSS访问日志 - 云产品 模拟,选择将要导入的project和logstore

选择时间范围,数据量,日志字段等配置,点击开始导入

开始导入后进入模拟任务,在任务完成后,点击投递OSS或者加工后投递OSS

自建开源接入

自建开源方式接入以nginx日志导入为例,需进行以下几步

  1. 配置project,logstore

  1. 创建和配置机器组(机器组安装了日志采集的工具logtail)
  2. Logtail配置:配置日志的采集路径格式
  3. 查询分析配置:配置索引等信息

配置结束后投递即可

(加工后)投递OSS

同上一部分配置

查看投递任务

配置完成后会跳到任务的详情页,在这里可以看到任务的投递量,投递速度,延迟,错误日志,投递结果等任务详情

计费方式

数据加工与数据投递都是Serverless,弹性扩容,无需运维,按日志量付费。日志的导入和存储等具体付费标准参考:计费项

结语

SLS提供了开箱即用的OSS数据投递入湖功能,之后也会持续迭代,希望能够帮助用户使用SLS与OSS数据湖生态,发掘日志价值,助力业务发展。

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
目录
相关文章
|
3月前
|
机器学习/深度学习 人工智能 专有云
人工智能平台PAI使用问题之怎么将DLC的数据写入到另一个阿里云主账号的OSS中
阿里云人工智能平台PAI是一个功能强大、易于使用的AI开发平台,旨在降低AI开发门槛,加速创新,助力企业和开发者高效构建、部署和管理人工智能应用。其中包含了一系列相互协同的产品与服务,共同构成一个完整的人工智能开发与应用生态系统。以下是对PAI产品使用合集的概述,涵盖数据处理、模型开发、训练加速、模型部署及管理等多个环节。
|
3月前
|
SQL 运维 监控
SLS 数据加工全面升级,集成 SPL 语法
在系统开发、运维过程中,日志是最重要的信息之一,其最大的优点是简单直接。SLS 数据加工功能旨在解决非结构化的日志数据处理,当前全面升级,集成 SPL 语言、更强的数据处理性能、更优的使用成本。
18118 136
|
2月前
|
存储 消息中间件 人工智能
AI大模型独角兽 MiniMax 基于阿里云数据库 SelectDB 版内核 Apache Doris 升级日志系统,PB 数据秒级查询响应
早期 MiniMax 基于 Grafana Loki 构建了日志系统,在资源消耗、写入性能及系统稳定性上都面临巨大的挑战。为此 MiniMax 开始寻找全新的日志系统方案,并基于阿里云数据库 SelectDB 版内核 Apache Doris 升级了日志系统,新系统已接入 MiniMax 内部所有业务线日志数据,数据规模为 PB 级, 整体可用性达到 99.9% 以上,10 亿级日志数据的检索速度可实现秒级响应。
AI大模型独角兽 MiniMax 基于阿里云数据库 SelectDB 版内核 Apache Doris 升级日志系统,PB 数据秒级查询响应
|
2月前
|
缓存 NoSQL Linux
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
【Azure Redis 缓存】Windows和Linux系统本地安装Redis, 加载dump.rdb中数据以及通过AOF日志文件追加数据
|
1月前
|
存储 监控 数据可视化
SLS 虽然不是直接使用 OSS 作为底层存储,但它凭借自身独特的存储架构和功能,为用户提供了一种专业、高效的日志服务解决方案。
【9月更文挑战第2天】SLS 虽然不是直接使用 OSS 作为底层存储,但它凭借自身独特的存储架构和功能,为用户提供了一种专业、高效的日志服务解决方案。
79 9
|
1月前
|
SQL 人工智能 运维
在阿里云日志服务轻松落地您的AI模型服务——让您的数据更容易产生洞见和实现价值
您有大量的数据,数据的存储和管理消耗您大量的成本,您知道这些数据隐藏着巨大的价值,但是您总觉得还没有把数据的价值变现出来,对吗?来吧,我们用一系列的案例帮您轻松落地AI模型服务,实现数据价值的变现......
139 3
|
2月前
|
存储 监控 网络协议
在Linux中,如何使用 tcpdump 监听主机为 192.168.1.1,tcp 端⼝为 80 的数据,并将将输出结果保存输出到tcpdump.log?
在Linux中,如何使用 tcpdump 监听主机为 192.168.1.1,tcp 端⼝为 80 的数据,并将将输出结果保存输出到tcpdump.log?
|
2月前
|
存储 安全 大数据
对象存储的意义:探索数据新纪元的关键基石
在信息爆炸时代,数据成为核心资产,而高效安全的数据存储至关重要。对象存储作为一种新兴技术,起源于20世纪90年代,旨在解决传统文件系统的局限性。随着云计算和大数据技术的发展,它已成为关键技术之一。对象存储具备高可扩展性、高可靠性、低成本、易于管理和多协议支持等优点。它支撑大数据发展、推动云计算繁荣、助力企业数字化转型并保障数据安全。未来,对象存储将进一步提升性能,实现智能化管理,并与边缘计算融合,获得政策支持,成为数据新时代的关键基石。
104 3
|
2月前
|
数据库 Java 监控
Struts 2 日志管理化身神秘魔法师,洞察应用运行乾坤,演绎奇幻篇章!
【8月更文挑战第31天】在软件开发中,了解应用运行状况至关重要。日志管理作为 Struts 2 应用的关键组件,记录着每个动作和决策,如同监控摄像头,帮助我们迅速定位问题、分析性能和使用情况,为优化提供依据。Struts 2 支持多种日志框架(如 Log4j、Logback),便于配置日志级别、格式和输出位置。通过在 Action 类中添加日志记录,我们能在开发过程中获取详细信息,及时发现并解决问题。合理配置日志不仅有助于调试,还能分析用户行为,提升应用性能和稳定性。
40 0
|
2月前
|
开发者 前端开发 编解码
Vaadin解锁移动适配新境界:一招制胜,让你的应用征服所有屏幕!
【8月更文挑战第31天】在移动互联网时代,跨平台应用开发备受青睐。作为一款基于Java的Web应用框架,Vaadin凭借其组件化设计和强大的服务器端渲染能力,助力开发者轻松构建多设备适应的Web应用。本文探讨Vaadin与移动设备的适配策略,包括响应式布局、CSS媒体查询、TouchKit插件及服务器端优化,帮助开发者打造美观且实用的移动端体验。通过这些工具和策略的应用,可有效应对屏幕尺寸、分辨率及操作系统的多样性挑战,满足广大移动用户的使用需求。
39 0