目标
统一的数据分析平台工具,分析人员可以搜索,查询,协作来产生分析结果。这个分析工具背后自动收集相关的metadata和 Data profile 信息,数据专家可以提供相应的帮助为元数据补充商业解释。其中包含主要的组件:
- SQL数据分析查询编辑器, 查询语句可以共享,语句的定义有作者和其他人修订这就像Wiki一样。分析查询器需要有自动补全功能帮助分析人员。语法高亮也是重要的。还可以结合性能优化提示和资源使用管理。
- 可插拔查询适配器。查询语句可以不同分析系统中执行包括但不限于Hadoop(尤其Hive, Hbase), Spark SQL, CEP on Storm, Presto, Web Services。 向下是可插拔的架构适应不同的查询引擎。
- 元数据管理,数据集和表对象Metadata信息,Data Profile,Sample数据信息可见。这些信息必须是自动后台收集,支持分析查询器的自动补全功能。
这么做的好处是提供分析人员一个统一化的分析入口,提供一个简单的Web 接口就能作数据分析。应为结合了社区化,这将会降低数据分析门槛,更快的普及数据技术。不管底下技术如何变化,业务人员学习成本比较低。
自助式分析数据产品,支撑跨多数据产品团队,共享技术框架,统一客户体验的流程和支持库。这个产品包含的主要组件有:
- 流程,项目管理,数据质量,敏捷开发,减少重复建设,标准统一,框架统一 ,职责管理。
- 支持库,前端可视化公用类, 后端数据库连接公用类。
- 可视化的公用“托拉拽”框架。前端设计标准,UX风格统一化。
- 数据产品Metadata
- 注册服务
这么做的好处是提供给数据工程师是一个统一的设计发布流程,由于采用了统一的支持库组件和可视化的前端框架,多数据产品团队的UX风格统一。数据产品之间通过Metadata整合在一起,告别烟囱式架构,告别各自为战。
统一的ETL数据处理架构,通过配置式建立ETL流程,用户只需配置源数据,转换逻辑,目标表就可以完成数据移动和清洗工作,可以处理包括实时和批处理数据。进一步的数据深加工通过批处理统一完成。
挑战
从烟囱式的架构移植到统一的数据自助分析平台会遇到很多的挑战,其中包括:
- 固有的成型的技术栈会受到冲击。有些团队的数据产品可能已经做的一段时间而且非常优秀,这就需要去考量如何融入新的平台。新的平台对用户有一个学习的过程。
- 这个平台如果在公司层面铺开使用,跨部门合作将是一个重要挑战。如何顺畅的聆听到客户的需求是成功的前提条件。闭门造车是行不通的。
- 最后,数据技术的变化是很快很快的。做架构设计的时候需要考虑到哪些会变哪些不怎么会变,接受比较成熟的技术与孵化的技术之间,这都需要找到一些平衡点。
应对
平台本身是一个进化的过程。设置开发优先级尤其重要。个人建议先做分析平台,再做数据产品,最后做数据处理,由外及内从最接近产生数据价值的地方开始做起。逐步的从烟囱式的数据开发转移到可控的,自助式,分层的开发框架上来。
|