6.阿里大数据——数据服务

数据部门产出的海量数据,如何能方便高效地开放出去,是我们一直要解决的难题。

一、服务架构演进

  1. DWSOA:由数据驱动,一个需求开发一个或几个接口,编写接口文档,开发给业务方调用。
  2. OpenAPI:将数据按照其统计粒度进行聚合,同样维度的数据,形成一张逻辑表(宽表),采用同样的接口描述。
  3. SmartDQ:在OpenAPI基础上,再抽象一层,用DSL(Domain Specific Language,领域专用语言)来描述取数需求。简单查询减少到只有一个接口。
  4. OneService:SmartDQ只满足的简单的查询服务需求,OneService提供多种服务类型来满足用户需求。如下:
  • OneService-SmartDQ
  • OneService-Lego:采用插件化方式开发服务,一类需求开发一个插件。
  • OneService-iPush:实时数据服务,提供WebSocket和long polling两种方式,其应用场景主要是商家端实时直播。
  • OneService-uTiming:主要提供即时任务和定时任务两种模式,满足用户运行大数据量任务的需求。

二、技术架构

1.SmartDQ

(1)元数据模型
数据源——物理表——逻辑表——主题
(2)架构图


SmartDQ架构图
  • 查询数据库:实时公共层的计算作业直接将结果写入HBase;通过同步作业将公共层的离线数据同步到对应的查询库。
  • 服务层
    • 元数据配置
    • 主处理模块:对用户的查询DSL进行语法解析,构建完整的查询树。
      • DSL解析
      • 逻辑Query构建
      • 物理Query构建
      • Query拆分
      • SQL执行
      • 结果合并
    • 其他模块

2.iPush

iPush架构图

看不懂

3.Lego

Lego架构图

看不懂

4.uTiming

uTiming架构图

你可能感兴趣的:(6.阿里大数据——数据服务)