编者按:由 MobTech 袤博科技主办的【CoderPark】第二季数智有为第 2 期直播流动圆满闭幕。流动现场精彩纷呈,来自字节跳动的数据治理平台研发负责人王慧祥老师缺席分享。在字节跳动外部,数据平台数据治理团队致力于建设一站式、全链路的数据治理解决方案平台,以下是本次演讲内容局部摘录:
本次对于“一站式数据治理解决方案及平台架构”的分享会分为四个局部开展:
第一,明确数据治理的概念,从平台视角登程,介绍在字节跳动外部数据治理所服务的指标;
第二,介绍字节跳动外部数据治理的现状与咱们须要解决的问题;
第三,介绍以后平台的解决方案;
第四,分享一站式数据治理的平台架构。
数据治理的概念
数据治理是一种数据管理的概念,确保组织能在数据的全生命周期中具备高质量的数据品质能力,并且实现对数据的齐全治理,以反对业务的指标。这外面有些关键词:一些组织和公司外部关注的是数据全生命周期,心愿它有一个较高的品质,指标则是用来反对业务。所以数据治理的指标次要由以下几点形成:第一,最大化数据价值;第二,治理数据的危险;
第三,升高数据的老本
数据治理是一个比拟大的概念,它包含政策、规定、组织构造、治理过程,以及一些技术的反对。它的畛域包含数据品质、数据老本、数据可用性以及数据安全等方面。所以,影响数据治理打算的驱动因素是多样的,如数据法规、隐衷政策的限度、数据品质参差不齐、数据治理老本高、资源受限等。
此外,治理施行的形式和范畴也不同,比方:有可能是由对立的组织,诸如数据治理委员会在整个企业或者公司的范畴内发动一些治理指标与打算,来推动整个组织的数据治理;也可能是在一些部门、团队外部去进行无限范畴内的治理。数据治理打算的指标实现必须得用适当的工具来解决,数据治理的形式也越来越偏向于朝着系统化和工具化的方向来倒退。
字节跳动数据治理背景
在字节跳动外部,作为对立的数据治理平台方,咱们的指标是:“建设一站式、全链路的数据治理解决方案平台”,治理平台肩负了四个使命:
第一,让数据价值最大化。这外面包含全生命周期数据品质的保障,既要做到高价值,又能实现低成本。
第二,提供全链路解决方案。数据治理在理论过程中会由多个不同角色独特参加,包含了管理者视角和执行者视角。咱们心愿不同的角色在咱们的平台里,都可能使用一些工具和伎俩来推动治理的执行。
第三,工具和方法论的联合。字节跳动外部数据治理平台的建设是以方法论来疏导建设,心愿工具可能提供十分齐备的治理能力。
第四,提供增强型的治理能力。在零碎的能力上能够被动发现一些隐患问题,做一些举荐或者倡议的策略来晋升治理效率。
在字节外部,不同角色对数据治理的视角不同。比方,从管理者或者是责任者的视角登程,他们可能会思考如何去制订一些治理的指标,如何可能让组织、团队实现这些治理的指标;他们可能会关注于这个指标什么时候可能实现、进度如何;他们也会思考,当他们真得去做了这些治理之后,这些数据或者资产是否可能继续衰弱。
而从执行者的视角登程,则要思考当数据治理指标下达之后,我该如何去做;我本人有哪些资产,资产有什么问题;我去做治理的时候,怎么样可能进步治理效率;我能不能及时发现数据资产的问题,并疾速治理。
因而在整个数据治理的流程中,需遵循以下步骤:
第一:我有什么?比方我的计算工作,资产的存储,品质的一些规定,SLA 的承诺或者一些异样报警,哪些是属于我的。
第二,清晰通晓治理指标。要晓得我要去治理什么,从哪些开始下手,哪些资产是有问题的,我的一些规定设置是否正当。
第三,怎么治理。比方在面临一个具体的治理问题时,他人是如何治理的,他们是不是有一些相干的教训能够借鉴;在具体的施行过程里,如何去提效治理。
第四,掂量治理成果。也就是咱们的治理是否达到了一些指标,或者取得了哪些收益。
最初,总结与复盘。做完了整个治理链路流程之后的总结,如经验总结、问题演绎等等。
数据治理解决方案
上述内容是数据治理流程链路中波及到的方方面面,那么在平台侧咱们如何解决每个流程中对应的问题呢?咱们能够从思路上划分为三个维度:
▌一站式解决方案
在建设一站式解决方案里,咱们细分了三层。
第一层:视图层。这个视图层就是来满足咱们可能晓得,咱们有哪些资产,咱们有什么,咱们的指标是什么,该怎么制订,这个咱们称之为治理全景层。
第二层:计划层。也就是真正施行去推动这个治理过程的一层。在这一层外面咱们提出了两种治理的门路,一种是主动式的布局门路,另一种是零碎发现式的门路。
零碎布局式门路:符合于从上而下的视角以满足治理的指标,针对它做一些布局,而后对相应的资产进行诊断。进行资产诊断后,须要对发现的问题进行相应的推动执行。最初,须要统计和总结数据治理收益。这是一个被动布局的过程。
零碎发现式门路:该门路其实次要解决的是,我怎么可能在日常工作中,将资产或者数据治理问题继续进行上来,实现日常化治理,而不是静止式治理。为实现日常化治理,咱们须要基于平台内的一些全局规定来定义、通过零碎来订阅、定期在零碎里运行扫描,以发现资产的问题,并通过音讯推动将资产问题告知这些资产的责任人,进行根因和问题的注销、事变的复盘,以及一些总结和教训的共享等等;
第三层:工具能力层。这是为了满足视图层和计划层而在工具侧提供的一些能力,包含垂直的治理场景和品质、平安老本、稳定性、报警起夜、撑持工具建设的根底服务等。比方咱们会抽出一些音讯的核心、云数据的核心、规定引擎或者数据服务等等。
▌全链路解决方案
全链路是指咱们心愿治理可能达到一个闭环的状态。
在整个链路里,针对于不同的角色,存在不同的平台应用形式和运行形式。在全链路中,咱们会通过资产视图来察看资产内容,在此基础上制订治理指标和布局。比如说通过一些内部驱动、业务驱动、合规或政策类的指标等,来制订咱们治理的指标,并针对这些指标去做一些计划的制订。例如,如果要去做一些存储资产的升高,咱们要先通过一些规定圈选出问题资产局部。之后在推动这个治理的施行过程中,对于一些治理决策者或者一些团队的负责人而言,他们可能会去进行拉群的督办,或者是定时的订阅揭示等等。在推动治理计划过程中,还心愿资产的责任人,也就是治理的实施者,在咱们这个平台工具外面可能具体去施行治理的动作,如一些基于 SLA 的申报、参数的优化、存储规定的设置、规定的调优等等。进行了一系列治理之后,咱们必定要有一个验收环节,如对整体指标的验收,判断业务是否达标、指标是否正当,最初进行经验总结,这就是全链路的整个过程。全链路解决方案也包含了第一局部介绍的零碎式、扫描式的门路。这个也是通过一些规定的制订,在零碎外面去发动规定的定义和订阅。通过系统地扫描去发现一些问题。当问题通过一些治理施行动作后,它可能会再次反哺到咱们具体的规定制订,如对监控规定的进一步配置,来预防可能呈现的治理问题。
▌全规定解决方案
全规定指标是提供比拟齐备的治理规定能力,可能服务于方才所说的这种布局式资产组合与响应式资产扫描。出于对平台能力齐备性的考量,目前咱们提供了存储计算、品质报警等四个维度,数十个治理规定可供任意的圈选和组合。其中包含一些全局的规定和自定义的规定。
除此以外,还有一些统计类和开掘类内容。统计类就是基于数据建设对元数据的利用和加工。举个例子,比方近 90 天无拜访表,或者是数据歪斜工作的圈选。开掘类其实是在元数据的根底上进行一些更深层次的开掘,去找到一些数据的问题,比方类似的库表和工作等。一站式数据治理平台架构下面介绍了咱们应答数据治理的解决方案,包含全规定、全链路和一站式。接下来,介绍具体的平台架构。
▌整体架构
如上图所示,在整体架构局部中,灰色的局部是在平台透出,给到用户的产品能力,包含治理全景。治理全景对应一站式的视图层,可能通知用户资产的状况如何。治理的工作台局部次要针对治理的实施者,让其可能疾速定位或者跳跃到一些相干的治理计划和平台去进行数据治理,包含待办项和资产剖析等。数据诊断布局局部是服务于主动式布局门路的一个模块。它会对咱们所有的资产进行规定式地组合,出具最终诊断。除此之外还有一些资源的优化、报警与订阅、SLA 保障等几个垂直类的治理场景。最初,复盘治理局部是进行经验总结和积淀的模块,它以零碎的形式进行记录。两头的局部是基于全规定的思维,将存储规定、计算规定、品质规定和报警规定,出现在平台里,让用户来进行自在圈选,达到灵便、全面的目标。上面绿色层是零碎组件层面的一些形象服务,咱们会针对数据治理的典型场景,在底层的根底设计上做一些形象变动,达到灵便适应新的规定或者治理场景的目标。
▌元数据建设
元数据是数据治理的外围,数据治理须要元数据驱动。在咱们的治理工作外面,元数据建设治理次要有以下五个方面:
第一,元数据的采集。咱们会采集底层组件架构的一些数据,如 yarn 队列、Hive、Spark、Flink 等各种组件的数据,以及一些平台级的元数据采集,包含调度零碎、数据地图、血统、权限、工作、存储、数据利用等平台的一些元数据。在采集数据后,会对其进行一些系统化的加工。咱们遵循于数据仓的层级标准建设来晋升数据的应用性。同时,在加工的过程中也齐全遵循于数据治理理念保障数据的高质牢靠。
第二,元数据利用。在元数据利用局部咱们会以元数据仓库为根底,给上游的产品平台提供更多利用的能力反对。
第三,剖析局部。咱们会制订很多业务的外围指标和一些外部指标,通过一些治理场景中的用户行为剖析来挖掘一些潜在的数据问题。另外,咱们也会在各个维度建设各类剖析看板。
第四,开掘局部。这个是针对数据的更高层级的利用,咱们会推动一些开掘算法和机制,去发现一些可治理的问题,比方咱们可能会对于一些数据资产的相似性进行开掘,或基于历史数据对将来进行预测,如对一些数据表行数的不动值预测,和一些提效的举荐类开掘。最初,元数据的凋谢局部。咱们会和字节跳动外部各个数据团队单干共建按需凋谢,提供元数据能力。
▌产品模块
上面介绍平台侧的产品模块,同样也能够在火山引擎 DataLeap 产品中看到。
第一,治理全景。目前在平台上有一些大盘,包含数据的 SLA 大盘、存储大盘、计算大盘、报警大盘等等,这些大盘针对于不同的治理场景会有一些不同维度的展现,包含数据趋势、占比列表、聚合明细等数据。撑持治理全景的是咱们底层的元数据仓库以及上述数据利用的局部,它们会对数据进行一些加工。
第二,衰弱分。咱们心愿衰弱分可能掂量资产的衰弱度,让资产继续衰弱。在衰弱分的建设中,咱们遵循几个步骤。第一是在衰弱分的建设中,通过元数据仓库提供衰弱分各维度的剖析建设,包含成员排名等。第二是有了这些衰弱分之后,要提供更多的维度剖析、扣分项剖析、老本剖析,将衰弱分拆解成可治理的我的项目。取得可治理的我的项目之后,再具体关联到一些数据治理的操作和计划的设计。比方,咱们能够针对于一些衰弱分的扣分项,跳转到一些垂直治理的场景界面,进行一些操作设置或者是做一些布局式治理计划的关联。
在衰弱分的设计方面,咱们遵循了三层架构的思路。首先第一层是宏观的资产层。包含存储衰弱分、计算衰弱分、数据品质等。第二层是针对于这一类自办的聚合类指标,包含存储衰弱分中的有效数据、高效存储的问题、计算衰弱分中的有效工作和高效计算问题、数据品质方面的 SLA 或监控保障的问题等。最初一层是比拟具体的规定层,包含存储 TTL 设置,或是无查问的一些资产,如计算间断失败工作或是资源利用率较低的工作、数据品质中的 SLA 事变数或是一些监控的缺失、有效报警等。
在有了资产全景和看板之后,咱们能够进行一些治理操作,这些操作对应于一站式解决方案中的第二层治理操作。上文介绍到,布局类门路是从较高的视角去拆解治理的问题,而在以后门路中,咱们要实现目标明确、过程可拆解、收益可量化、后果可验收。
▌零碎设计
最初咱们来说一下零碎如何撑持布局式架构?
布局式架构
治理计划布局式架构底层的基础架构设计次要有以下模块。
首先,后端是主逻辑的操作局部,包含了上述的规定、治理规定、治理域、圈选能力、资产查问和收益统计、治理指标制订、治理后果查看、治理催办和具体的治理操作。
撑持后端逻辑的是几个形象的服务模块。第一个模块是数据查问服务,次要解决的问题是底层不同存储异构的适配。该模块将原数据通过一些下层利用的加工,放到不同利用的存储中以适应不同的查问类型,通过该服务进行一些解耦。该服务的数据起源就是事件的收集服务,对此咱们会做一些格局转换、音讯解决、底层组件关联、零碎回调、数据采集等。
除此以外,与该服务有关联的是数据治理具体实施的模块,它和零碎中对于治理的操作无关。比方在进行一些表的生命周期设置,或是删除表等操作时,这些操作都会以音讯的模式,经由执行模块去实现工作下发和底层组件调用。同时,通过一些状态把治理是否取得收益、音讯是否胜利等内容,也由方才的事件收集服务纳入查问服务中,造成收益可查问的数据。
最初,平台在治理规定和治理域局部,提供了全规定能力。这部分咱们提供了一些规定引擎的服务,包含对规定进行解析、查问转换、查问提交以及后果汇总,这是底层架构对于上述性能的一些反对。
响应式架构
接下来是响应式的流程,这个和主动式的流程十分像,包含音讯触发、问题剖析、推动治理、问题注销、总结复盘等流程。响应式流程的框架和布局其实也十分类似。
但它们有几大区别。第一是响应式流程左侧提供音讯服务。该门路是通过音讯触发的,因而咱们会买通与研发平台、品质平台、天然平台等多处发送音讯和报警的平台,将他们的音讯和报警对立收归到我方服务中进行下发。下发的渠道包含飞书、邮件、电话、短信等。这些音讯造成的数据也会经由数据的收集寄存到查问服务中,作为一些报警的展现。另外在音讯模块,咱们会和复盘模块进行强关联,对问题进行注销、核准、复盘。
最初是工作台,次要为了提效解决待治理项而设置。当呈现待治理的局部,通过工作台可能尽快发动治理行为,理解资产状况,这就是工作台的核心思想。
治理工作台治理场景次要有品质、数据 SLA、资源和报警局部。
资源优化场景的指标是提供自主剖析和低门槛优化能力。目前重心集中在存储和计算两大方面,并提供了很多垂直治理的能力。比方,能够在平台内间接设置温存、降正本、TTL 设置。在计算方面,能够间接跳转工作详情进行剖析、工作下线、参数调整倡议等。
一站式数据治理平台架构
最初谈谈咱们的将来工作瞻望。第一要继续加强工具闭环能力;第二要从通用数据治理的问题解决进步到更精细化的治理,包含自定义的指标、计划、以业务视角对待理论问题等;第三是建设增强型的数据治理,咱们心愿可能在数据侧通过一些统计类、开掘类,将平台回升为算法和智能型的平台。