阅读笔记08(大数据)

总述阿里巴巴在大数据时代,面临的挑战与机遇,系统的整体大数据系统架构,在数据爆炸增长的时代,能不能有组织、有序、有结构地存储,是阿里数据技术部门和产品部门需要解决的问题,另一个很重要的问题是在如双十一这种促销活动购物活动时候,阿里的服务能不能稳定的提供,满足越来越高的下单峰值,阿里大数据井喷式爆发,在数据服务和数据产品方面有着极大的挑战。

各层总述1.数据采集层方案主要包含俩个部分,第一部分Aplus.JS,它是Web端日志采集技术方案,app端日志采集技术方案为UserTrack,在此之上,阿里用规范埋点,这样在满足用户要求的同时,像在不同是场景中都有做,这样以此为依托在通过建立一套数据传输体系,来实现从生产业务端到大数据系统的数据传输,传输采用TimeTunnel(TT),包括数据库增量数据传输以及日志数据传输,TT作为基础架构,支持流式计算和及以不同时间窗口的批量计算,通过DataX和同步中心(ps基于前者封装)来连节备用数据库获取数据。典型的日志采集工作过程如下,1用户点击操作,2浏览器随即像服务器发起http请求,3服务器端业务处理模块按逻辑解析,将处理结果反馈给浏览器,4浏览器展现给客户。日志采集工作,一般在第四步执行,在HTML文档中增加一个日志采集点,当进行到这一步时候,会触发这个操作,发出请求至日志采集的服务器,如此日志采集服务器便可以确认浏览器的操作,采集-发送-收集-解析,另外考虑到互动行为特征,如鼠标焦点的变化,交互日志采集阿里通过一套名为“黄金令箭”采集方案来解决。另外包括页面日志服务器端的清洗和预处理,此处不再 细说,以上仅仅为浏览器的页面采集工作,还有无线客户端的日志采集工作,阿里使用采集sdk来实现,阿里使用名为UserTrack(UT)的sdk,有些页面事件,有着无痕埋点,无需开发者任何编码实现,UT提供了页面展现、页面退出、添加页面扩展信息这三个接口,UT提供透传参数的功能,及当前页面某些信息传入到下一个或者好几个页面中,通过Super Position Moder来进行来源去向的追踪,像用户路径还原这种问题就很简单了。

还有一些控点事件和其他事件,除了之前提到的,UT还提供默认的采集方法,如自动捕获应用崩溃,sdk提供日志的聚合功能,利用页面的生命周期来适当的聚合,以及本地聚合功能,识别页面复用,配合栈的深度等进行更为复杂的操作。很多情况下H5和Native互跳,数据丢失验证,用户路径无法还原,多端之间数据隔离等问题,阿里通过对H5和Native统一处理来解决。那么就涉及到日志的归档,通常Native部署采集SDK方式,具体流程略过。涉及到另外一个问题访客数,用户登陆时候用用户ID来唯一标示,为登陆的界面,pc端用Cookie信息作为设备唯一信息,aap端,阿里采用UTDID来标识。

无线端日志上传,是先存储在本地,后伺机上传,上传动作不单以时间间隔来决定,还要考虑日志的大小以及合理性,对与重要的数据,此时可以适当地释放其他日志资源来优先处理。日志早已不是初期的饥饿阶段,反而面临海量日志淹没的危险,故问题不再是采集技术本身,而是如何数据的规范化、机构化、组织化。阿里采用日志分流和定制处理、采集与计算一体化设计这俩个方案。具体有关分布式,分治策略等,后一个要求对日志的归类和汇总,,一体化要求采集和计算作为一个系统考虑,阿里采用用户直观感知的SPM规范。

另外一个重要的问题是大促保障,如“双十一“活动,需要保证每个阶段都没有问题,端埋点采集,服务器处理,传输,解析,分析,应用,需要考虑服务器能力,实时处理等各方面,对非重要数据进行适当限流,延迟上报,部分采样,后错峰恢复。

另外从业务上改造,各链路做优化。

 

数据同步主要将不同源系统的数据文件通过文件服务器,上传到目标系统,由于上传下载可能会造成数据丢失,除上传文件本身外还会上传一个校验文件,以确保准确性。通过解析日志文件获取发生变更的数据,主要步骤为源系统日志文件到通过日志解析模块,在由TCP/IP协议,数据加载模块再到目标系统。

数据存储时候面对大量非结构化数据,将其直接以文本文件形式存放在文件系统中,这些数据也有着很大的作用,目前阿里的大数据处理系统MaxCompute数据存储已经达到了PB级别!对于离线类型数据仓库应用,需将不同数据源数据批量同步至数据仓库。数据只有被整合和计算才能使用,挖掘潜在信息,数据的最大化价值化,阿里数据计算层主要包括俩大体系:数据存储及计算云平台(离线计算平台MaxCompute和StreamCompute:阿里自主研发的流式大数据平台)和数据整合及管理体系(内部称之为OneData),构建统一规范可共享的全域数据体系,数据仓库的数据加工链路包括:操作数据层(ODS)、明细层(DWD)、汇总层(ADS)。

数据计算和整合好后,需要供给产品和应用进行消费,阿里构建了自己的数据服务层,通过接口服务话方式对外提供数据服务。数据源架构在各种数据库之上,如Hbase,后面移至阿里云数据库(ApsaraDB for RDS 简称RDS)和表格存储(Table Store),统一数据平台(OneService ),提供数据查询、复杂数据查询、实时数据推送等服务。

在数据应用层,需要将数据供给给用户,阿里表现在各个方面:搜索、广告、金融、文娱、物流、保险等,阿里平台产品主要有实时数据监控、自助式数据网站或产品构建的数据小站、宏观决策分析支撑平台、对象分析工具、行业数据分析门、流量分析平台等。

总结:在数据为王的时代,有数据是资本,能分析数据是优势,最大消费数据是才是目的所在,有了这些数据才能成为新能源。
 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/865131.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【神兵利器】绕过EDR防病毒软件

免责声明 仅限用于技术研究和获得正式授权的攻防项目,请使用者遵守《中华人民共和国网络安全法》,切勿用于任何非法活动,若将工具做其他用途,由使用者承担全部法律及连带责任,作者及发布者不承担任何法律连带责任项目介绍 项目演示了使用Windows API函数(例如:VirtualAllo…

RAG项目推荐:bRAG-langchain-构建自己的 RAG 应用程序所需了解的一切

检索增强生成 (RAG) 项目项目链接:https://github.com/bRAGAI/bRAG-langchain/tree/mainbRAGAI 的官方平台即将上线。加入等待列表,成为早期使用者之一! 本仓库包含了对检索增强生成 (RAG) 在各种应用中的全面探索。 每个笔记本都提供了从入门级到高级实现的详细实践指南,包…

五上数学LK情况反馈203班

五上数学LK情况反馈203班 上周五进行了LK,使用答题卡,电子阅卷,答题卡放在中学部,我们只有拿着学生没有写答案的试卷讲评,需要知道具体错误的,由周老师告知学生,今天晚上有半数以上学生,周老师已经告知学生错误题目了,分数已经公布。 本次考试难度较大,带有XB的性质,…

【金融行业】2024中国网络安全产业势能榜优能企业 金融行业典型案例展示

金融行业一直是信息安全的重点领域,随着金融科技的快速发展和数字货币的崛起,金融机构面临着前所未有的挑战。数据泄露、网络攻击等安全事件的频发,促使金融企业加强安全保障。然而,信息安全的提高不仅仅是防止外部威胁的关键,更重要的是确保业务在突发事件或安全事件发生…

Timer、Ticker使用及其注意事项

在 Golang 中,Timer 和 Ticker 是常用的定时器工具,但它们的使用易出错,尤其是初学者。本文将深入探讨定时器的正确使用方式、常见误区,并通过源码解读帮助你更好地理解它们的工作原理。Timer、Ticker使用及其注意事项 在刚开始学习golang语言的时候就听说Timer、Ticker的使…

entire vs whole; coca

entire 868 whole 466left 4WORD 1: ENTIRE WORD W1 W2 AN 15134 932 VIRTUALLY 354 71 Virtually the entire sample几乎所有样本 Virtually the entire Israeli governing class几乎整个以色列统治阶级 DEVOTED 216 71 devoted his entire care…

第22章 高级线程处理

第22章 高级线程处理 22.1 同步概述 多线程我们常需要一些同步结构进行线程间通讯。同步结构可以分为三类:互斥锁一次只允许一个线程执行特定的活动或一段代码。主要目的是令线程访问共享的写状态而不互相影响。互斥锁包括 lock​、Mutex​ 和 SpinLock​。 2. 非互斥锁 实现…

DINO-X环境搭建推理测试

​引子 开放世界检测,前文也写OV-DINO(感兴趣的童鞋,请移步OV-DINO开放词检测环境安装与推理-CSDN博客)。这不,DINO系列又更新了。OK,那就让我们开始吧。 一、模型介绍 IDEA 开发了一个通用物体提示来支持无提示的开放世界检测,从而无需用户提供任何提示即可检测图像中…

一文说透汇编语言中的各种地址

本文讨论了学习汇编语言时一些易混淆的、关于地址的概念前言 由于笔者水平有限,随笔中难免有些许纰漏和错误,希望广大读者能指正。 一、各种地址之间的区分 笔者在刚开始学习汇编语言时,不是很能分清楚汇编地址、逻辑地址、物理地址、段地址、偏移地址、线性地址等概念,这对…

什么是自动化测试?为什么要做自动化测试?如何学习自动化测试?

自动化测试是指使用软件工具和脚本来执行测试任务的过程。它可以自动化执行测试用例、生成测试报告和进行结果分析。自动化测试可以减少人工测试的工作量,并提高测试的效率和准确性。它在软件开发过程中起到了重要的作用,可以帮助开发团队快速发现和修复软件中的缺陷,确保软…