《企业级大数据平台构建:架构与实现》——1.4 平台辅助工具
1.4 平台辅助工具
大数据平台作为一个技术支撑平台,它面向的用户群体至少包括应用开发、平台运维和数据分析这三类用户群体。这三类用户因为自身的工作职责不同导致其关注平台的视角也会不同。应用开发的职责是基于技术平台开发应用,基于平台编写程序,所以他们更关注的是开发SDK、程序调试跟踪的方式;平台运维的职责是保障大数据平台的正常稳定运行,所以他们关注的是平台的各种监控指标。而数据分析的职责是基于平台数据做数据分析,所以他们关注的是如何使用机器学习相关算法,用最快的速度验证自己的想法并得出反馈。
通过前面的介绍,我们可以知道大数据平台的基本能力从底层技术角度已经覆盖了这三类用户的需求,但是这样将赤——裸裸的底层技术直接拿出来给用户使用,对于用户来说体验真是太糟糕了。所以大数据平台需要一层纽带将原始的底层技术能力和终端活生生的人联系起来。这层纽带便是由众多辅助平台使用的工具所组成的,它们可以大幅度降低大数据平台的使用门槛,并增强平台的易用性和友好性。
1.?开发套件
相比于传统的软件编程方式,大数据领域的程序开发会复杂很多。为了迎合分治思想,同时能够使程序以最大的并行度执行,我们的程序都会以多线程的方式分布式地运行在多台服务器之上,这就使程序的开发和调试难度陡增。除此之外,在程序的设计思路上,大数据领域也和传统领域有着显著的不同,例如大数据领域的存储技术可以突破传统关系型数据库的诸多限制,使得一张单表拥有上千列和数亿行成为可能。这就使得我们可以使用与以往软件完全不同的设计思路去实现一些功能。
所以大数据平台应该拥有与之适配的一套SDK开发套件,将底层的复杂逻辑进行封装从而对上层应用屏蔽,同时提供一套简单易用的开发接口和一系列辅助开发和调试的工具。
2.?任务管理与调度
得益于单一集群架构,集群内的所有服务器资源现在可以由一个统一的资源调度系统进行整合使用。因此,我们开发的数据导入、离线计算等程序都需要以任务的形式提交到调度系统。于是便有了对各种任务进行提交、状态跟踪、日志查询和执行周期性调度等需求。
所以大数据平台应该能提供一个可视化的任务管理与系统对内部对所有应用任务进行控制和监管。
3.?自助式数据探索分析
数据分析、数据挖掘可以说是一个循环往复的过程。不断地通过抛出假设、建立模型、验证假设、修正模型这样一个循环过程渐进明细。这些步骤通常需要专业的大数据开发工程师以代码编程的形式进行实现。然而,我们必须面对这样一个不幸的事实,专业的程序开发工程师通常不善于数据分析的理论和算法,而专业的数据科学家又不精通程序开发。能够同时精通数据分析和程序开发的人可谓是凤毛麟角。
所以大数据平台应该能够提供一个可视化的数据分析系统,可以让数据科学家使用类似SQL这样简单易学的方式进行自助式的数据分析,从而可以在不需要编写任何程序的情况下直接进行多种方式的数据探索与分析。
- 点赞
- 收藏
- 关注作者
评论(0)