栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【数仓】数据服务和数据挖掘-《大数据之路》读书笔记

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【数仓】数据服务和数据挖掘-《大数据之路》读书笔记

  今天更新《大数据之路》第 6 章和第 7 章,数据服务和数据挖掘。关注公众号回复 802 获取 pdf。其他章节读书笔记点击下面链接获取。
《大数据之路》读书笔记。

1.数据服务

数据服务研究的是海量数据如何方便高效地开放出去。

1.1 服务架构演进 1.1.1 DWSOA

实现:需求为驱动,一个需求开发一个或多个接口,编写接口文档,开放给业务方。

优点:简单。

缺点:粒度粗,不灵活,扩展性差,复用率低,接口数量增加快,维护成本高,开发效率低,无法快速响应。

1.1.2 OpenAPI

实现:将数据按统计粒度聚合,同样维度的数据形成逻辑表,采用同样的接口描述。例如把会员为中心的数据做成一张逻辑表,查询会员维度的数据都调用会员接口。

优点:接口数量收敛。

缺点:维度不可控,随时间推移,维度越来越多。

1.1.3 SamrtDQ

实现:在 OpenAPI 上再抽象一层,采用 SQL 语法。同时也可以用对象关系映射(ORM)框架(例如 MyBatis)来解决。

优点:不用关系底层物理表(例如底层是 HBase 还是 MySQL,是单表还是分库),把逻辑表的作用发挥出来了。

缺点:SQL 不能解决负责业务逻辑,不能满足个性化的取数业务场景。

1.1.4 OneService 统一的数据服务层

实现:提供多种服务类型来满足用户需求。包括 SmartDQ、Lego、iPush、uTiming。

1.2 技术架构 1.2.1 SmartDQ

简单来说就是物理表到逻辑表的映射。

  • 数据源:底层多种数据源接入,比如 MySQL、HBase
  • 物理表:某个数据源中的一张表
  • 逻辑表:可以理解为视图,虚拟表
  • 主题:逻辑表挂在在某个主题下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GST98oLk-1650531021862)(.20220422image-20220421143043994.png)]

1.2.2 iPush

面向不同消息源,通过定制过滤规则,向 Web、无线终端推送消息。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fcbTcEmh-1650531021864)(./20220422image-20220421143951112.png)]

1.2.3 Lego

面向中度和高度定制化数据查询需求、支持插件机制的服务容器。基于插件可以快速实现个性化需求并发布上线。采用 Node。JS 技术栈实现,适合处理高并发、低延迟的 IO 密集型场景,支撑用户识别发码、用户识别、用户画像、人群透视和人气圈选等在线服务。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wmkBPMXs-1650531021865)(C:Userszxy19Documents博客文章数仓20220422微信截图_20220421144344.png)]

1.2.4 uTiming

云端的任务调度应用,提供批量数据处理,支持用户识别、用户画像、人群圈选三类服务的离线计算,以及用户识别、用户画像、人群透视的服务数据预处理、入库。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VZWm93wD-1650531021866)(.20220422image-20220421154654862.png)]

1.3 最佳实践 1.3.1 性能 1 资源分配
  • 剥离计算资源:复制的计算逻辑交给下面的公共层处理,只保留核心的业务处理逻辑。
  • 查询资源分配:两种查询接口,Get 接口返回一条数据,List 接口返回很多数据,因此 Get 查询耗时很短,但是在队列等待上消耗大量时间,为了避免不必要的等待,分成两个线程池。减少 Get 请求的等待时间。
  • 执行计划优化:
    • 查询拆分:引擎差分调用者的请求,并发执行,返回时汇总,提高性能。
    • 查询优化:将用户的 List 请求转为 Get 请求,提高性能。
2 缓存优化
  • 元数据缓存:启动时全部加载到本地缓存。
  • 模型缓存:将解析后的模型缓存,下次遇到相似的 SQL 时从缓存中解析。
  • 结果缓存:复杂的查询等。
3 查询能力
  • 合并查询:比如卖家支付金额查询,日期选今天应该是实时查询,选昨天应该是离线查询。设计新的语法能够统一处理这两种情况。
  • 推送服务:轮询会有服务器压力大(轮询时间短)或者实时性不佳(轮询时间长)的问题。推送能很好解决问题。
1.3.2 稳定性 1 发布系统
  • 元数据隔离:用户的变更在预发环境中进行充分的验证,验证后在发布到线上环境中。
  • 隔离发布:不同用户的发布互不影响。
2 隔离

机房隔离、分组隔离(不同调用者优先级不同)

3 安全限制

最大返回记录数(查询强制带上 limit),必传字段(防止全表扫描),超时时间(释放系统资源)

4 监控

调用日志采集,调用监控

5 限流、降级 2.数据挖掘 2.1 数据挖掘算法平台

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4XSlvNVT-1650531021868)(C:Userszxy19Documents博客文章数仓20220422微信截图_20220421162321.png)]

2.2 数据挖掘中台系统 2.2.1 挖掘数据中台

数据中台分为三层:特征层、中间层和应用层。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LJhyl9zn-1650531021869)(C:Userszxy19Documents博客文章数仓20220422微信截图_20220421163109.png)]

  • 特征层 FDM:存储特征指标,统一进行清洗和去噪,提高机器学习特征工程环节的效率。
  • 个题中间层 IDM:存储通用性强的结果数据,面向个体,比如商品、卖家、买家。
  • 关系中间层 RDM:存储通用性强的结果数据,面向关系,比如相似性、竞争关系。
  • 应用层 ADM:存储比较个性篇应用的数据挖掘指标,比如用户偏好的类目、品牌。
2.2.2 挖掘算法中台

对具有代表性的场景,形成相应的方法论和实操模型。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PXJalEqV-1650531021870)(C:Userszxy19Documents博客文章数仓20220422微信截图_20220421163915.png)]

2.3 数据挖掘案例 2.3.1 用户画像

用户画像就是给用户打上标签,比如品牌偏好、类别偏好,之后提高更精准的推送。

2.3.2 互联网反作弊

反作弊工作的主要内容:

  1. 账户、资金安全与网络欺诈防控
  2. 非人行为和账户识别
  3. 虚假订单与信用炒作识别
  4. 广告推广与 APP 安全反作弊
  5. UGC 恶意信息检测:用户利用文本、图片传播不正当信息

方法:

  • 基于业务规则:精度高,可解释性强,人力成本高,对新作弊手法滞后性强
  • 基于有监督学习:通用性强,人力成本在样本标记和特征处理上,可解释性不强,容易错判,需要其他辅助指标
  • 基于无监督学习:不需要正负样本标记,检测到的异常行为可以沉淀到规则系统中,缺点是特征设计和提取工作量大

欢迎关注公众号。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/821778.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号