大数据的智能处理和数据可视化实践报告

核心提示本文根据吴仕橹老师在〖2021 Gdevops全球敏捷运维峰会-广州站〗现场演讲内容整理而成。讲师介绍吴仕橹,汇丰科技 数据分析经理。曾任职于Accenture负责对M&G的大型系统集成系统的研发和交付,主要采用Spring Integra

本文根据吴世昌先生在【2021 Gdevops全球敏捷运维峰会-广州站】现场演讲内容整理而成。

讲师介绍

汇丰银行数据分析经理石舒。我曾经就职于埃森哲,负责MG大型系统集成系统的RD和交付,主要采用Spring集成并封装,采用SOAP架构。近年来,我在汇丰科技投资银行部工作,致力于大型前台系统的开发和运营。2019年以来,我专注于数据安全、数据处理、数据可视化等自研平台的研发,以及团队的DevOps改造。

共享摘要

I .商业见解和分析

二。数据和分析执行

三。数据安全和管理

四。数据交换

动词 (verb的缩写)Rapid-V

人们经常把数据比作石油。而石油真正有价值的是通过提炼一些相应的技术得到的产品,比如煤油、汽油、机油以及进一步催化裂解得到的凡士林等一些产品。

所以在看大数据的时候,我会把油脂加工的整个产业化思路放进去,然后展开。一方面,大数据需要有技术平台支撑;另一方面需要各种数据。技术支持数据处理,数据可以通过平台实现商业价值。即流程创建可重用的数据资产,然后在这些数据资产的基础上进一步带来更多更长期的商业价值。

I .商业见解和分析

这个图是我看的大数据的第三个维度:数据管道,也就是我们常说的数据管道。图中的S1s2s3相当于我们的石油开采厂,负责开采数据,然后将采集到的数据通过输送管道输送到相应的目标点进行存储。在我们的场景中,这个目标点是数据湖。

数据存储后,需要相应的流程来处理。我们的数据工厂相当于一个炼油厂,它将通过蒸馏和催化裂化技术处理数据,产生可重用的数据资产。此时如何使用数据资产?我们可以把它应用到许多方面。比如直接使用,因为在现阶段,这些数据资产就像煤油、汽油、机油等一样。从石油中提炼,可直接用于燃油发动机。我们可以使用这些数据资产直接呈现报告或表格。

到数据处理的更深维度,即数据的洞察。一个特殊的例子是数据科学。科学家可以进入这个维度,在这些经过清洗和漂亮处理的数据上建立机器学习的模型,并从中挖掘出更多的商业洞察力。这里我们有一个问题:这个时候这些洞见可以用来做什么?答案是帮助公司省钱或者带来新的商业价值。

我们回过头来说说大数据平台的建设。大数据平台有很多组件,包括数据采集平台或工具。我最不喜欢数据采集的粘贴,因为我觉得比较简单。简单粗暴的说就是复制粘贴数据。但如果想做好,也可以是技术活。想象一下,每天会有几千个系统的数据以离线实时的方式注入到数据湖中,那么涉及的数据量和工作流的调度会对其并发性有特别高的要求,喜欢做高并发系统的小朋友可以做这方面的研究。

数据注入之后,接下来是数据清洗、智能管理、数据管理、安全、可视化等。,每一个都是可以展开的大话题。今天,我只谈其中的一两个。

二。数据和分析执行

该图显示了我们的一个数据管道,以用户案例作为视觉突破点。在这上面,我们有数据注入,数据清洗,数据连接,数据科学家的数据分析,把最终的洞察发送给用户去消费。这里我想重点说一下关于link的这一部分。在我们部门,我们使用一种叫做实体解析的技术。主题思路可以参考:https://www . data community DC . org/blog/2013/08/entity-resolution-for-big-data。

它的思路简单来说就是通过智能化的方式实现数据连接和重复数据删除。为什么我们需要这样的技术?大多数时候,我们处理的数据并没有一个唯一的ID来连接和串连所有的数据。实体解析就是这样一个算法,把所有的数据组织成一个网络,而不需要我们唯一的ID。举个例子,作为一个互联网用户,我有携程、支付宝、微信或者其他一些平台的数据,但是这些系统很可能是不互通的,我无法用一个唯一的ID把它们连接起来。所以实体解析的作用就是把不同系统的数据连接起来,为这些连接起来的数据生成一个唯一的ID。

这部分听起来有点像:在数据库中选择一个表然后区分它,合并数据并删除重复数据。理论上是这样,但实际上在做大数据的时候,比如我们公司会去外面买很多数据,比如新年的调查或者国外一些关于企业的数据。这些外部数据,加上我们自己公司几百个系统的数据,会达到一个相当大的量级。这个时候,我们将很难把这些数据结合起来。尤其是银行业,很多核心系统一般都是二三十岁。那些系统的设计不如我们今天的互联网系统,所以当我们需要组合这些系统的数据时,我们无法像关系数据库那样以链接的方式来完成。

比如说我们对应一个企业级客户。这里,我们假设它的名字是阿里巴巴集团。当然,这里的阿里巴巴集团并不是指市场上的大厂。我们只是做一个假设。阿里巴巴是一个集团公司,可能有几百个或者几千个子公司,比如菜鸟,可能是其他子公司之一。我们整个实体解析中的解决方案是将这些数据源中与阿里巴巴集团相关的所有实体链接起来,包括其子公司和子公司。然后,我只需要找到其中的一个,比如菜鸟,就可以追溯到对应的母公司,其母公司的母公司,以及自己的子公司或者亲戚朋友。这是其解决方案的一个方面。

另一方面,我们称之为关联方,它将公司与公司、公司与个人之间的关系联系起来,比如某人是某公司的董事,或者某公司在某月向另一公司支付了一定的款项。比如我和X老师都受雇于h公司,同时X老师是A公司的董事,我是b公司的董事,X老师的A公司转了100万美元给c公司。

接下来,我们来谈谈实体解析的最后一个功能点。以阿里巴巴为例。可能是也可能不是我们公司的客户。如果是我们的客户,那么我们可以把它在我们所有的内外部系统中的所有信息都链接起来,比如它有什么样的账户,买过什么样的产品,做过什么样的交易,它的财务状况如何等等。所有这些信息都可以呈现和链接。

用数据做这件事背后的潜在价值是什么?我想以客户尽职调查为例。传统上,对公共业务的尽职调查需要很长时间,并且需要审查许多文件。数字化后,潜在的可能性是,客户尽职调查可以变成二阶。

举个例子,举个例子,阿里的妈妈还不是我们的客户,但是有一天她突然来找我们的一个客户经理,说要和我们银行做生意。这个时候,如果我们已经把所有的东西都数字化了,所有的信息都可以链接起来。我取阿里妈妈的名字,通过我刚刚抛出的整个模型,可以查到它的信用等级,它在搜索中的得分,它有什么样的风险,它和阿里巴巴有没有父子关系等等。这样操作人员就可以快速判断这个客户,帮其开户,客户就不用再花一两个月的时间等待尽职调查的结果了。

通过这种数据驱动的方式,将全调优的时间缩短到最小。进一步挖掘这些数据,也许可以邀请数据科学家创建一个模型,通过模型进一步提炼数据,给出一个参考分数?

实体解析会用到哪些技术?业界会推荐一些类似k mean的模型来做联动。我们用Apache的Spark Graph X进行图形计算,简单来说就是点与点之间通过边的关系相互连接。在这个例子中,数据源是对应的点,而边是指数据之间的关系,通过它我们可以连接数据。

三。数据安全和管理

接下来,你可能会对数据安全和数据管理感兴趣,这其实是很大的话题。这里的数据安全主要是基于我们自己搭建的一个叫数据卫士的产品。它主要用于控制谁可以看到和使用什么样的数据。举个例子,比如我是广州天河某支行的客户经理,客户关系管理有10个客户。按照整个设计,我只能看到与这10个客户相关的一些信息,而看不到关于收入和支出的数据。然后当我进入系统的时候,我们的数据卫士会通过整个数据的所有元素从源头收集它的元数据,并标注相应的特征。

四。数据交换

数据交换是基于微服务架构的平台,主要是数据消费层。在传统行业,尤其是银行业,数据会被更深的内部防火墙包围。数据安全得到了保护,但这种做法也给数据读取和应用造成了很大的障碍。一方面,从流程上需要层层安全审批;另一方面,除了不断向防火墙开放端口,没有更好的技术实现方式。因此,数据交换应运而生。

在面向用户的层,我们使用F5作为负载平衡。当用户拥有访问权限时,它会通过网络级别的负载平衡将其路由到不同的服务。同时,后端服务将访问我们的数据存储层,最终处理和提炼的数据存储在这里。所以可以在数据交换中发布各种API和sftp服务,让用户或系统消费我们的数据。

动词 (verb的缩写)数据可视化

业界有很多商业或开源的数据可视化方案,比如Apache的superset,用户可以配置相应的数据源,然后通过编写类sql语言实现数据可视化;像Looker或者Power BI这样的商业产品可以实现数据可视化,但是商业产品一般都比较贵。后来经过我们的思考和调查,分析了一些中小用户案例和我们的日常需求,得出的结论是我们需要一个实用的可视化工具。所以我们开发了Rapid V,通过拉取不同的数据源,可以快速配置不同类型的视觉模式。

这是我们当时的想法。正如你所看到的,它主要有4个不同的部分。一个专用于配置不同的数据源。可以上传API,csv或者pushed文件作为数据源,也可以使用Oracle或者PostgreSQL,Elasticsearch。通过上面的一些组件,把相应的数据源拉过来,相当于把它们链接起来,然后我就可以就近配置了。就像这张图,我想通过求和或者计数来汇总。当我们部署了自己的可视化布局后,我们可以选择保存并发布它。

Rapid V的另一个重要功能是建模,通过它我们可以以一种配置好的方式组合来自不同数据源的数据。这背后的主要原因是Trino用来做一个虚拟化的关卡。有了它,我可以通过标准化的sql将不同数据源中的数据组合起来,从而组装成一个新的数据源。

Rapid V最后一部分的功能是报表的统一管理。当用户配置他的报告并将发布它时,他可以选择他的可见性或与授权的人共享它。

这是我们的一个例子。当时我们在推动相应的男女招聘比例,希望通过招聘更多的女生来达到更好的男女平衡。而且通过这份报告,可以带来很多真知灼见,像收到的简历中性别分布是怎样的?最终通过面试的男女比例等。这是我们以前招聘的时候,带动整个部门做的事情。

>>>>

问与答(Question and Answer)

问:汇丰内部有数百个系统,其中一些系统可能因年龄不同而有不同的底层系统,甚至数据库或数据格式。汇丰如何处理这些不同数据格式的收集和有效数据的验证?

A1:实际上,我们已经开发了一个专门的数据收集系统,用于从各种数据源收集数据,包括离线和实时数据。比如数据源有Oracle、PG、DB、MySQL、SQL Server、Solace、Kafaka、常用文件、云存储等等。在我们的设计中,我们使用Hdfs作为数据落地系统,以统一的Parquet格式存储文件,并将数据加载到Hive中,以方便对原始数据的分析和处理。每次数据采集后,有两个数据验证步骤。第一步是数据的校验和,第二步是采集的数据和原系统数据的对账,保证数据不丢失。

Q2:一家银行有很多不同的业务部门,其中有不同的业务数据,但同时也可能有自己的数据平台。我想问一下,怎么才能有动力让它把业务数据放到你的平台上?

A2:例如,我们有市场部,其中有产品和贸易,但客户数据在银行部门。如果银行自己做,既没有市场端的产品相关数据,也没有市场端的交易数据。再者,风控部门有交易风险、市场风险等数据,财务部门有财务相关的数据,他们各自的数据是相互关联的。没有彼此,以客户为中心的360度数据就无法实现。所以这是大家的动力。如果我把这些数据都拿进来,就能做到360度的客户。

Q3:在一个公司里,不同部门的数据往往是相互独立的。当我们要跨部门修改调用这些数据时,可能会涉及到一个复杂冗长的审批过程。如何才能简化这个流程,缩短审批时间?

答3:我相信贵公司应该有一个类似CDO的部门,即首席数据办公室。比如在这个部门,我们公司有一个像CDO这样的部门,数据管理是它的一个职能和分支。他们还将负责解决一些问题,如将数据上传到云端和跨国家共享数据。所以问题中提到的部门之间的数据跨度,这部分痛点不是很大。更大的痛点是:如何跨境共享数据?或者怎么上传数据到云端?因为这涉及到数据的外包,我们部门负责应对监管,保证我们不太敏感的数据可以上云。

DBA社区是一个围绕数据库、大数据和AIOps的企业级专业社区。资深大咖,技术干货,每日原创文章推送,每周线上技术分享,每月线下技术沙龙,每季GdevopsDAMS行业会议。

 
友情链接
鄂ICP备19019357号-22