热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

数据中台开源解决方案(二)

前文提到数据中台商业的解决方案有很多,开源框架种类繁多,每一个模块都有很多开源的套件。可供选择的解决方案太多,重点推荐开源解决方案,框架图如下图所示。  6.数据仓库在

前文提到数据中台商业的解决方案有很多,开源框架种类繁多,每一个模块都有很多开源的套件。可供选择的解决方案太多,重点推荐开源解决方案,框架图如下图所示。

 

 

6.数据仓库

在数据平台选择好后,下一步的重要工作是实现企业的数据资产化,满足前端业务对数据应用的需求。数据资产化的关键举措是对企业的原始数据进行清洗和规整,将其转化为价值数据,然后从中抽象出主数据,进一步构建不同主题的数据标签体系。这些关键举措离不开数据仓库的标准化、存储、计算和建模体系化的支撑。目前,主流的数据仓库分为离线数据仓库和实时数据仓库,两者的典型区别是数据服务时间粒度。传统的离线数据仓库一般的数据服务时间粒度是天,实时数据仓库的数据服务时间粒度是分钟,甚至秒。从数据仓库存储和计算框架开源解决方案来看,目前行业的离线数据仓库普遍采用Hive+Spark的综合方案,而实时数据仓库当前的主流方案之一是HDFS+Flink+Kafka。目前,大部分企业在建设数据仓库时,综合考量性能、健壮性、投入产出比和运维复杂度,主要策略是以离线数据仓库的批处理计算为主,以实时数据仓库为辅助。

7.可视化自助数据分析

数据分析是实现数据价值的关键举措之一。透过错综复杂的数据关系发现价值点是一项费力、费时的工作。好的工具能够使这项工作事半功倍。为了提高数据分析的效率,行业涌现了多种解决方案,集中体现在自助取数、自助分析、多维分析、分析可视化这几个方面,目标是实现可视化自助数据分析。可视化自助数据分析的核心功能是支持多数据源接入、权限管理、高性能计算和可视化多维分析。目前,自助 OLAP 开源主要使用的计算引擎有Impala、Presto、ClickHouse和Kylin。在查询引擎部分,已经介绍过这几种计算引擎的特点,在此不再赘述。开源可视化解决方案主要有Superset、Redash和Metabase。Superset出自Airbnp,目前是Apache的开源项目,功能比较强大,网上的参考案例较多。Redash是一个轻量级的应用,部署简单,短小精悍,能满足日常分析需求。Metabase 的功能丰富程度介于Superset和Redash之间,网上的参考案例较少。在实际应用中,笔者重点推荐ClickHouse+Kylin+Superset的统一解决方案。预计算的OLAP使用Kylin引擎,及时查询的计算使用ClickHouse。

8.规则引擎

规则引擎是常用的实现数据价值的基础工具之一,常用的应用场景有风险管理、动态定价、精准营销、监控预警等。笔者过去一直使用开源工具Drools 结合二次开发搭建规则引擎,其优点是语法规则简单、支持动态规则配置、社区热度高、网上落地案例丰富、功能丰富且不断升级迭代,缺点是相对较重、应用门槛较高、聚合计算效率低等。对于实时规则应用场景,建议使用流式计算引擎计算复杂的聚合规则,而简单的规则计算使用Drools内核。

9.机器学习引擎

要从错综复杂的数据中挖掘出核心价值离不开算法的支持。智能化的真谛是使用机器学习算法、Al算法和其他算法不同程度地实现用机器替代人工。目前, 各种开源的算法包特别多, 当建模数据行数在千万级别时, 笔者常用 Anaconda 包和 XGBoost 包。当建模数据行数在亿级别时,笔者常用Spark MLlib。笔者使用的Al算法框架是TensorFlow。在自然语言处理方面,笔者常用的是百度的ERNIE框架,该框架在多个公开中文数据集下的性能比Google的BERT框架略好。

10.元数据管理

Atlas和Hadoop无缝连接,能有效地支持元数据管理、数据资产分类、元数据搜索、血缘关系可视化和数据治理。Atlas支持对元数据添加标签,然后通过标签对数据资产进行分门别类的管理,并基于标签进行统一权限控制和数据资产的安全管理。同时,Atlas还可以捕获各种元数据信息(如数据的产生、表的建立和执行、数据交互、数据ETL执行、数据存储、数据安全访问、数据的使用等),并支持查看元数据和血缘的可视化,便于及时发现数据的变化,快速定位数据问题。数据具有时效性,Atlas支持数据全生命周期管理(如在过了数据时效后,临时表被自动删除)。Atlas 还支持和多个外部平台(如Hive、SAS等)的元数据互联互通。我们可以将这些平台的元数据导入Atlas中,然后应用Atlas进行元数据管理和数据治理。

11.工作流调度和监控

数据应用百花齐放,系统后台需要对这些数据应用的工作流进行合理调度和监控,确保数据应用的及时性和稳定性。当任务运行失败时,系统要能及时发现并实时通知相关数据运维人员。这些功能是对工作流调度和监控工具的基本要求。目前,行业常用的开源工作流调度和监控工具主要是Oozie和Azkaban。两者的工作原理的最大区别是前者的工作流运行靠捕捉和监控更加细粒度的MapReduce批处理任务执行级别信息,而后者的工作流运行仅仅靠捕捉和监控较粗粒度的操作进程级别的信息。这会导致在任务出现失败或者断电后,Azkaban需要重新执行工作流,而Oozie可以基于失败的工作流重新执行。不过Azkaban的这个功能可以通过二次开发进行优化。Azkaban的优势是有完善的权限控制,支持对工作流的读写进行权限控制。

整体而言, Oozie的功能更加丰富, 比如支持Web、Rest API、Java API操作工作流,支持工作流的状态持久化存储、基于时间的定时任务调度及丰富的数据源等,但是其配置更复杂,开放性较弱,二次开发难度高,使用门槛更高。Azkaban是一个轻量级的应用,聚焦批量工作量的调度和监控,简单易用,更开放,支持二次开发。

总之,通过上述介绍的开源工具的部署、应用和整合,企业可以低成本且快速地搭建一套大数据平台,支持数据资产化,实现高性能的数据分析和数据应用,高效地支持业务的数字化和智能化转型。



推荐阅读
  • 宝塔面板下启用HTTPS的详细指南
    本文提供了在宝塔面板环境中配置HTTPS的具体步骤,确保您的网站通信更加安全可靠。 ... [详细]
  • 服务器部署中的安全策略实践与优化
    服务器部署中的安全策略实践与优化 ... [详细]
  • 本文详细介绍了PHP中的几种超全局变量,包括$GLOBAL、$_SERVER、$_POST、$_GET等,并探讨了AJAX的工作原理及其优缺点。通过具体示例,帮助读者更好地理解和应用这些技术。 ... [详细]
  • 初探Hadoop:第一章概览
    本文深入探讨了《Hadoop》第一章的内容,重点介绍了Hadoop的基本概念及其如何解决大数据处理中的关键挑战。 ... [详细]
  • 2023年1月28日网络安全热点
    涵盖最新的网络安全动态,包括OpenSSH和WordPress的安全更新、VirtualBox提权漏洞、以及谷歌推出的新证书验证机制等内容。 ... [详细]
  • 深入解析Dubbo:使用与源码分析
    本文详细介绍了Dubbo的使用方法和源码分析,涵盖其架构设计、核心特性和调用流程。 ... [详细]
  • 对象存储与块存储、文件存储等对比
    看到一篇文档,讲对象存储,好奇,搜索文章,摘抄,学习记录!背景:传统存储在面对海量非结构化数据时,在存储、分享与容灾上面临很大的挑战,主要表现在以下几个方面:传统存储并非为非结 ... [详细]
  • 使用 Jupyter Notebook 实现 Markdown 编写与代码运行
    Jupyter Notebook 是一个开源的基于网页的应用程序,允许用户在同一文档中编写 Markdown 文本和运行多种编程语言的代码,并实时查看运行结果。 ... [详细]
  • 本文详细介绍了Java代码分层的基本概念和常见分层模式,特别是MVC模式。同时探讨了不同项目需求下的分层策略,帮助读者更好地理解和应用Java分层思想。 ... [详细]
  • Python 数据可视化实战指南
    本文详细介绍如何使用 Python 进行数据可视化,涵盖从环境搭建到具体实例的全过程。 ... [详细]
  • 本文介绍了如何利用HTTP隧道技术在受限网络环境中绕过IDS和防火墙等安全设备,实现RDP端口的暴力破解攻击。文章详细描述了部署过程、攻击实施及流量分析,旨在提升网络安全意识。 ... [详细]
  • 在Conda环境中高效配置并安装PyTorch和TensorFlow GPU版的方法如下:首先,创建一个新的Conda环境以避免与基础环境发生冲突,例如使用 `conda create -n pytorch_gpu python=3.7` 命令。接着,激活该环境,确保所有依赖项都正确安装。此外,建议在安装过程中指定CUDA版本,以确保与GPU兼容性。通过这些步骤,可以确保PyTorch和TensorFlow GPU版的顺利安装和运行。 ... [详细]
  • 本文来自微信公众号:界面新闻(ID:wowjiemian),作者:席菁华,头图来自:视觉中国海底打桩,安装基座,吊装塔筒、机舱、叶片……北至山东,南至广东,在中国东部广袤的海域上, ... [详细]
  • Ansible:自动化运维工具详解
    Ansible 是一款新兴的自动化运维工具,基于 Python 开发,集成了多种运维工具(如 Puppet、CFEngine、Chef、Func 和 Fabric)的优点,实现了批量系统配置、程序部署和命令执行等功能。本文将详细介绍 Ansible 的架构、特性和优势。 ... [详细]
  • 在Windows系统中安装TensorFlow GPU版的详细指南与常见问题解决
    在Windows系统中安装TensorFlow GPU版是许多深度学习初学者面临的挑战。本文详细介绍了安装过程中的每一个步骤,并针对常见的问题提供了有效的解决方案。通过本文的指导,读者可以顺利地完成安装并避免常见的陷阱。 ... [详细]
author-avatar
火山哥哥5237
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有