这是我在2015年高德负责P6晋升评审为团队成员准备的要点,整理下。

1. 数据仓库难点

1.1 分布式OLAP设计与选型

  • 传统BI 友盟,Talking Data 启明星
  • keylin
  • phoniex
  • ocean base
  • garuda
  • drds
  • impala
  • drill

框架优劣,实现方式,性能对比

1.2 分布式OLAP优势

  • 支持ad-hoc
  • 上卷,下钻,切片,切块
  • 数据端开发迅速

1.3 分布式OLAP 难点

  • 海量数据聚合
  • 要求RT可用
  • 阿里生态系统限制
  • 时间紧迫

1.4 分布式OLAP实现

  • 分库分表 DRDS
  • 数据仓库
    • 基本行为
    • 离线点击
    • 崩溃行为
  • 主题域— 数据立方体(Cube)
    • 用户分析
    • 活跃度
    • 渠道专题

1.5 目前缺陷

在没索引的维度较慢
阿里生态圈的喜与优

外网工具丰富

web工作台
运维控制台
可靠工作流

闭门造车,轮子过时
需要多部门协助

1.6 整体工作流

采集 — 收容 — 计算 — 导出 — 存储 — 服务 — 前端

2. 服务演化

2.1 单一应用

所有功能部署一起,ORM 是核心

2.2 垂直应用

拆分应用, MVC 是核心

2.3 分布式服务框架

核心业务抽取复用, RPC

2.4 流动计算框架

提高机器利用率, SOA

3. 挖掘架构

3.1 数据层

3.2 算法层

3.2.1 特征工程:

清洗 :
脏数据 (乱码,机型非法取值)
空缺值(日志记录不规范,经常出现某些平台字段为空)
噪声 (取值非法)
分箱
离群挖掘
回归

集成:
冗余属性 (重复字段,同一字段命名不同)
数值冲突检测( 单位不同,字段长度不同)

变换:
归一化
投影 (PCA)

归约
数据压缩 (空间索引,小波变换,PCA,回归,概率分布模型,粗糙集,采样)
维度规约 特征提取

离散化 值区间

特征工程

3.2.2 分类:

SVM
随机森林
GBDT
神经网络

3.3.3 聚类

基于划分

Kmean
KMeoid
EM

基于密度

DBScan
Optics

基于层次

自顶向下
自底向上

基于栅格

String
WaveCluster

3.3.4 回归

线性回归
逻辑回归

3.3.5 关联

FPGrowth
Aprioi

3.3.6 空间算法

元胞自动机
空间尺度变化模型
空间自回归(SAR)
层次贝叶斯

3.3 策略/模型层

3.4 评估层

3.4.1 算法评测

规则扫描

数据规则
业务规则

白盒测试

MR 单元测试
MR 集成测试
MR 性能测试

Job 监控

Job 性能
Job 配置
Job 报警

算法收益对比

可视化对比工具
收益统计工具
AB Test

3.5 服务层

高效,可靠,分布式的数据服务
日志监控
日志回流

3.6 挖掘工作流

  1. 收集数据
    收集数据一般是补充外部数据,包括采用爬虫和接口,获取,补充目前数据不足部分。Python scrapy,requests是很好的工具。
  2. 准备数据
    主要包括数据清洗,预处理,错值纠正,缺失值填补。连续值离散化,去掉异常值,以及数据归一化的过程。同时需要根据准备采用的挖掘工具准备恰当的数据格式。
  3. 分析数据
    通过初步统计、分析以及可视化,或者是探索性数据分析工具,得到初步的数据概况。分析数据的分布,质量,可靠程度,实际作用域,以确定下一步的算法选择。 R的ggplot,python的matplotlib,js 的leaflet,d3都是很好的可视化工具。

4. 训练算法

整个工作流最核心的一步,根据现有数据选择算法,生成训练模型。主要是算法选择和参数调整
算法的选择,需要对算法性能和精度以及编码实现难度进行衡量和取舍。 (甚至算法工具箱对数据集的限制情况都是算法选择考虑的内容) 实际工程上,不考虑算法复杂度超过O(N^2)的算法。Java的Weka和Python的Scipy是很好的数据挖掘分析工具。
参数调整。这是一门神奇的技能,只能在实际过程中体会。

5. 测试算法

这一步主要是针对监督算法(分类,回归),为了防止模型的Overfit,需要测试算法模型的覆盖能力和性能。方法包括Holdout,还有random subsampling.
非监督算法(聚类),采用更加具体的指标,包括熵,纯度,精度,召回等。

6 使用,解释,修正算法

数据挖掘不是一个静态的过程,需要不断对模型重新评估,衡量,修正。算法模型的生命周期也是一个值得探讨的话题。

阿里数据服务P6~P7晋升要点的更多相关文章

  1. 【阿里云产品公测】结构化数据服务OTS之JavaSDK初体验

    [阿里云产品公测]结构化数据服务OTS之JavaSDK初体验 作者:阿里云用户蓝色之鹰 一.OTS简单介绍 OTS 是构建在阿里云飞天分布式系统之上的NoSQL数据库服务,提供海量结构化数据的存储和实 ...

  2. 阿里dubbo服务注册原理解析

           阿里分布式服务框架 dubbo现在已成为了外面很多中小型甚至一些大型互联网公司作为服务治理的一个首选或者考虑方案,相信大家在日常工作中或多或少都已经用过或者接触过dubbo了.但是我搜了 ...

  3. Java生鲜电商平台-SpringCloud微服务架构中核心要点和实现原理

    Java生鲜电商平台-SpringCloud微服务架构中核心要点和实现原理 说明:Java生鲜电商平台中,我们将进一步理解微服务架构的核心要点和实现原理,为读者的实践提供微服务的设计模式,以期让微服务 ...

  4. Dataphin数据服务系列之--API 配置、管理和消费

    研发小哥哥还在为公司里大量 API 只上不下,不可查不可用, 想找的 API 找不到而苦恼吗?业务方小姐姐还在为 API 开发时间长,业务相应不及时而抱怨吐槽吗? 铛铛铛,Dataphin 数据服务 ...

  5. MaxCompute,基于Serverless的高可用大数据服务

    摘要:2019年1月18日,由阿里巴巴MaxCompute开发者社区和阿里云栖社区联合主办的“阿里云栖开发者沙龙大数据技术专场”走近北京联合大学,本次技术沙龙上,阿里巴巴高级技术专家吴永明为大家分享了 ...

  6. 海量大数据大屏分析展示一步到位:DataWorks数据服务+MaxCompute Lightning对接DataV最佳实践

    1. 概述 数据服务(https://ds-cn-shanghai.data.aliyun.com) 是DataWorks产品家族的一员,提供了快速将数据表生成API的能力,通过可视化的向导,一分钟“ ...

  7. [源码阅读] 阿里SOFA服务注册中心MetaServer(1)

    [源码阅读] 阿里SOFA服务注册中心MetaServer(1) 目录 [源码阅读] 阿里SOFA服务注册中心MetaServer(1) 0x00 摘要 0x01 服务注册中心 1.1 服务注册中心简 ...

  8. [源码阅读] 阿里SOFA服务注册中心MetaServer(2)

    [源码阅读] 阿里SOFA服务注册中心MetaServer(2) 目录 [源码阅读] 阿里SOFA服务注册中心MetaServer(2) 0x00 摘要 0x01 MetaServer 注册 1.1 ...

  9. [源码阅读] 阿里SOFA服务注册中心MetaServer(3)

    [源码阅读] 阿里SOFA服务注册中心MetaServer(3) 目录 [源码阅读] 阿里SOFA服务注册中心MetaServer(3) 0x00 摘要 0x01 概念 1.1 分布式一致性 1.2 ...

随机推荐

  1. ThinkPHP CodeIgniter URL访问举例

      ThinkPHP   URL访问:   http://localhost/think/index.php/Home/login/func/[name/syt/password/123/]   ht ...

  2. UNIMRCP 代码走读

    基于UNIMRCP1.5.0的代码走读 与 填坑记录 1. server启动配置加载 入口:unimrcp_server.c static apt_bool_t unimrcp_server_load ...

  3. Linux系统如何制作U盘启动盘更换系统

    进入这个网站balenaEtcher,直接下载可接

  4. [Boolan-C++学习笔记]第二周整理

    1.对于String类型的类(含有指针) 其中的指针成员能够灵活的申请存储空间,但指针操作又带来内存泄漏的风险,变更指针的操作需要尤为谨慎. 要点在于写好BigThree 构造函数 { 完成成员初始化 ...

  5. hdu 5285 二分图黑白染色

    题意:给出 n 个人,以及 m 对互不认识的关系,剩余的人都互相认识,要将所有人分成两组,组内不能有互不认识的人,要求每组至少有一人,并且第一组人数尽量多,问两组人数或不可能时单独输出 BC 48 场 ...

  6. https://wenku.baidu.com/view/35c88b375acfa1c7aa00ccca.html--swot

    https://wenku.baidu.com/view/35c88b375acfa1c7aa00ccca.html

  7. ZH奶酪:【Python】random模块

    Python中的random模块用于随机数生成,对几个random模块中的函数进行简单介绍.如下:random.random() 用于生成一个0到1的随机浮点数.如: import random ra ...

  8. 推荐10款优秀的JavaScript Web UI库 框架和套件

    在进行Web开发时,并非所有的库都适合你的项目,但真正开发的时候,你任然需要依赖一款UI框架.特别在你时间紧迫的时候,它是你忠实的朋友. 他们都是些广泛使用包含不同语言实现的WEB UI框架.今天我就 ...

  9. 整理开源协议问题 GPL APACHE

    整理开源协议问题 GPL APACHE APACHE 和 GPL 互相不兼容. APACHE 不可以使用 GPL 的代码. 但是 APACHE 可以调用 GPL 组件的接口. 比如 Linux 和 A ...

  10. Oracle 11gR2 RAC 常用维护操作 说明

    一.启动和停止集群 在Oracle 11gR2 下的RAC,架构发生了变化.CRS的信息也是放在ASM 实例里的,所以要关asm,必须关闭crs, 如果还使用了acfs的话,一关crs那么acfs里的 ...