论文部分内容阅读
伴随着企业自身业务种类的快速增加以及业务范围的不断扩大,企业所掌握的数据量呈指数级增长。庞大的业务数据量往往蕴含着重要的商业价值。企业发展过程中,企业高层人员逐渐认识到对过往数据的合理使用可以给企业带来丰厚的回报。并且随着大数据技术的日渐成熟,各种商业化且稳定有效的方案可以做到既节约大量的成本,又给企业发展带来合理有效的数据支持。当前企业进行大数据分析主要依靠在分布式集群如Hadoop集群上进行数据存储,使用Hadoop生态圈组件如Hive、Spark、Flink、Storm进行数据的计算,基本涵盖了离线数据仓库、实时计算、实时数据仓库等多个方面的功能建设。通常企业中的运营人员、数据分析人员并非都毕业于计算机类相关专业。他们普遍具有统计学类知识,并且对相关业务领域具有较深的理解,这些人员基本掌握SQL语言但是对于Linux、大数据等技术了解不深。如果直接让运营人员、数据分析人员直接通过CRT或Xshell等工具连接Hadoop集群进行数据分析开发任务,可能存在学习成本高、工作效率低、数据存在泄漏、集群安全性等等一系列问题。但是分析人员又需要可以编写SQL脚本并且对脚本进行试错修改的地方,类似于计算机程序开发中的IDE工具。于是以提供统一查询接口,方便集群权限管理,控制保障数据安全,提升数据开发脚本编写效率为主要目标的数据开发系统就有了研发的需要。数据开发系统能够解决上述数据分析过程中会出现的问题,满足分析人员对数据分析的日常需要,同时能够工程化的管理权限、脚本文件。企业数据开发系统是公司内部系统,是一种交互式数据分析Web工具,其功能描述类似于计算机程序开发中的IDE工具。系统主要用于简化内部用户进行大数据处理分析过程,工程化管理数据开发脚本文件,监控数据开发过程,及时解决出现的问题,防范与追踪风险,统计各项指标辅助企业决策。同时对于不同的脚本执行引擎要求也给予一定的支持。系统按功能需求共划分为用户管理、项目管理、环境管理、作业管理、函数管理这五个主要模块进行实现,涉及使用Spring Boot、Redis、Hadoop、Hive、Spark、Tez 等多项技术。目前该系统运行良好,承担了 90%以上的数据分析任务开发,降低了数据分析人员的数据开发难度,提升了数据开发的效率,给企业的各级部门的数据开发流程提供了良好的保证。并且在集群各项权限上也进行了一定的保证,确保Hadoop集群的稳定可用,同时规避了大规模数据泄露的安全性风险。