这是我在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. Kaggle新手入门之路(完结)

    学完了Coursera上Andrew Ng的Machine Learning后,迫不及待地想去参加一场Kaggle的比赛,却发现从理论到实践的转变实在是太困难了,在此记录学习过程. 一:安装Anaco ...

  2. 软考------(抽象类、接口) 策略设计模式(strategy) 应用

    某软件公司现欲开发一款飞机飞行模拟系统,该系统主要模拟不同种类飞机的飞行特征与起飞特征.需要模拟的飞机种类及其特征如表5-1所示. #include <iostream> #include ...

  3. 【计算机视觉】交并比IOU概念理解

    前言 交并比IOU(Intersection over Union)是一种测量在特定数据集中检测相应物体准确度的一个标准. 图示 很简单,IoU相当于两个区域重叠的部分除以两个区域的集合部分得出的结果 ...

  4. STM32 用c语言控制4个LED灯从左向右无限流动

    在用c语言写LED流水灯的前提条件是配置好其他环境,这里我就不说环境了, 想让LED灯无限循环时,首先要想到的是无限循环函数,我这里利用的是for函数 无限循环. #include "stm ...

  5. elastic job简单用法

    public class JobMain { //配置注册中心 private ZookeeperConfiguration zkConfig = new ZookeeperConfiguration ...

  6. 关联容器map(红黑树,key/value),以及所有的STL容器详解

    字符串或串(String)是由数字.字母.下划线组成的一串字符.一般记为 s=“a1a2···an”(n>=0).它是编程语言中表示文本的数据类型.在程序设计中,字符串(string)为符号或数 ...

  7. asp.net 导出excel的一种方法

    项目用到的一种导出excel 的方法予以记录:(具体的业务类可更具情况替换使用) protected void Export(string filename, List<ComponentCon ...

  8. Linux性能测试工具安装全集

    stress 下载地址:http://people.seas.harvard.edu/~apw/stress/ 一.stress工具安装:1.获取stress源码安装包(stress-1.0.4.ta ...

  9. 单变量微积分笔记21——三角替换2(tan和sec)

    tan和sec常用公式 我一直认为三角函数中只有sin和cos是友好的,其它都是变态.现在不得不接触一些变态: 这些变态的相关等式: 等式的证明 这个稍有点麻烦,先要做一些前置工作. 三角替换 示例1 ...

  10. Spring boot 使用的注解有哪些?

    Spring boot 使用的注解有哪些? 注解 作用 @SpringBootApplication 等价于 @Configuration + @EnableAutoConfiguration + @ ...