精华内容
下载资源
问答
  • 数据中台功能架构和技术选型

    千次阅读 2021-03-04 08:53:24
    数据中台的典型功能架构: 广义的讲数据中台是直接服务于业务系统的数据服务工厂,狭义上讲,数据中台就是可复用的数据API。 站在企业架构的角度,从广义上来讲,数据中台(包含数据平台,数据仓库)应该提供的服务...

    数据中台的典型功能架构:

    广义的讲数据中台是直接服务于业务系统的数据服务工厂,狭义上讲,数据中台就是可复用的数据API。

    站在企业架构的角度,从广义上来讲,数据中台(包含数据平台,数据仓库)应该提供的服务如下图所示:

    1.数据资产的规划和治理

    做中台之前,首先需要知道业务价值是什么,从业务角度去思考企业的数据资产是什么。数据资产不等同于数据,数据资产是唯一的,能为业务产生价值的数据。对于同一堆数据,不同业务部门所关注的数据指标可能完全不同,怎么让各个跨域的业务变成统一的标准,就需要规划企业的数据全景图,将所有有可能用上的、所有对企业有可能有价值的数据都规划出来,最终梳理出企业的数据资产目录。

    在这个时候不需要考虑有没有系统、有没有数据,只需要关注哪些数据是对企业业务有价值的。这一层不建议做得太细,太细就难以形成标准,不能适用于多个场景了。

    数据治理是数据中台很重要的一个领域,ThoughtWorks认为在现在业务边界消失、需求快速变化的情况下,企业需要具备精益数据治理的能力 — — Lean Data Governance。传统的中心化、事前控制式的数据治理方式,要改变为去中心化、事后服务式的治理方式。

    2.数据资产的获取和存储

    从广义上来讲,数据中台要为企业提供强大的数据资产的获取和存储的能力。但是这个能力不是数据中台的核心功能,很多企业可以基于原来的数据平台,数据仓库等已有的工具来提供数据采集和存储的能力。

    3.数据的共享和协作

    企业的数据中台一定是跨域的,需要让所有的人都知道数据资产目录在哪里。不能因为数据安全,就不让大家知道企业有什么数据。没有共享和开放,数据没有办法流动起来,没有流动的话数据的价值产生的速度就会非常慢。

    所以在数据安全的基础上,企业的数据资产目录要对利益相关者、价值创造者开放,要让业务人员能够做到“Self-Service”。

    数据资产目录是数据中台很核心的一个基础能力,但是往往目前很多的企业都尚未建立这个能力,这也是导致数据在企业内部不开放,不共享,不被利用的很重要的一个原因。

    4.业务价值的探索和分析

    数据中台不仅要建立到源数据的通路,还需要提供分析数据的工具和能力,帮助业务人员去探索和发现数据的业务价值。一个好的数据中台解决方案中需要针对不同业务岗位的用户提供个性化的数据探索和分析的工具,并且在此基础上一键生成数据API,以多样化的方式提供给前台系统。

    5.数据服务的构建和治理

    数据中台需要保证数据服务的性能和稳定性,以及数据质量和准确性,还需要具备强大的服务治理能力。数据服务要在一开始就有整体的顶层设计,从而能够将数据服务做分类,打标签,能够更方便的被搜索被调用,让好的服务浮现出来,让质量不高的服务自动的退市被销毁。

    数据中台是一个生态平台,在数据中台上面会不断生长各种数据服务,所以从一开始就构建好数据服务的治理结构是非常重要的,就想经营一个市场一样。

    6.数据服务的度量和运营

    如果数据中台最终只是做到把数据给到业务人员,那它就只是一个搬运工的角色,数据中台的核心是为业务应用提供有业务价值的数据服务。所以度量和运营数据服务的能力是数据中台的业务能力。

    数据中台应该能够对提供的数据服务及相关行为做持续跟踪和记录,包括哪些数据服务被哪个部门使用、用了多少次等,通过这些去度量每一个数据服务的业务价值。

    数据中台是一个需要用互联网思维去经营的利润中心平台,数据中台的经营分析人员需要分析,了解为什么今天上午这个财务部门的人用了数据中台、调用了十次,下午他不用了,原因是什么,调用了这些数据服务的人通常还会调用哪些其他的数据服务。

    这些都需要相应地做记录、做日志、做分析,要把数据当做像电商平台一样去经营,然后实时地根据这些业务行为数据去提醒数据服务提供方,调整、改变、优化数据服务,这才是可经营的数据中台,也只有这样业务部门才能得到最快的支持和响应。

    一个数据中台的典型逻辑功能架构单初步定义:

    企业数据中台的团队如何构建:

    数据中台是距离业务更近的能力平台,数据中台是一个需要持续运营的数据服务业务平台,所以数据中台的团队不仅仅是一个技术团队,应该将数据中台当做一个产品团队来构建,整体的结构如下:

    数据中台提供两类服务:

    一类是数据资产目录,数据探索,数据分析等服务,让业务和应用部门的人员能够在数据中台上协作的玩数据。

    一类是数据服务,让各个业务系统能够调用这些服务,包括决策分析类的非实时服务和实时的嵌入式交易规则服务。

    对应到这两类服务,数据中台的团队应该包括以下三组:

    中台运营团队:

    将整个数据中台的服务和功能作为产品来运营,对应的绩效是用户满意度,用户存留,这些用户相关的指标。

    中台开发团队:

    负责数据中台的功能层开发,包括平中台本身的架构,中台上的应用(客户服务,业务监控等)功能的开发,对应的绩效是功能的稳定性和客户的满意度。

    数据服务开发团队:

    负责数据中台之上的数据服务的开发,包括数据处理链的开发,服务的开发等,对应的绩效是数据服务的稳定性, 性能和客户的满意度等。

    参考这样的三个团队组成, 分别应该包括如下角色:

    数据中台架构师:进行整体数据中台的技术架构设计,保证数据中台架构的可持续性,稳定性和扩容弹性。

    DataOps工程师:从基础能力上保障数据中台的运行的稳定性和持续演进。

    数据工程师:数据处理工程师,负责数据的获取,处理,建立数据处理链。

    数据服务产品团队:数据服务的产品团队,包括产品经理(PO),业务分析师,体验设计师,还有算法工程师,和数据工程师和数据运营分析师一起协作,创新、设计、生产数据服务。

    数据运营分析师:将数据服务作为产品来运营的数据运营分析师,通过对数据服务上线后被调用的情况的分析来运营数据服务,像经营一个互联网产品一样来经营数据服务。

    数据中台某种角度上,上是一个数据服务的创新、生产、交易的数据服务市场,那么企

    业对于数据中台整体的绩效评价方法也就出来了,那就是:

    企业评价数据中台的标准:数据中台服务的客户,也就是业务系统的满意度。

    数据中台支撑技术:

    建设数据中台一般需要一整套如下典型的支撑技术:

    指标管理系统:指标是中台与前台之间最关键的接口,也是建设数据中台的牛鼻子,因为它是最核心的业务语言,且指标不一致、数据常出错是建设数据中台最常见的出发点。如果指标体系没有统一的方法论,进行统一建设,那么就很难说是数据中台。指标管理系统一般要实现一套一致的方法论(如原子 / 派生 / 复合指标、维度、修饰词等),做好指标的业务和技术口径管理,还需要支持指标的审批管理。数据中台的指标无法交给各前台业务自助式的建设。

    数据服务系统:类似于在线业务中台需要通过API网关提供标准化的服务,数据中台也需要一个标准化的服务方式,通常称为数据服务系统,也可以说是数据网关或数据门户。类似于别的网关类产品,数据服务系统需要提供鉴权、日志审计、流控、协议转换(如SQL Dialect之间的转换)等功能,也应该发展多引擎融合查询、逻辑模型等扩展功能以提高服务接口的稳定性和实现的灵活性。

    元数据管理系统:元数据管理是整个数据中台的基础和中心,所有的其他系统都依赖元数据管理。元数据管理首先要做好的当然是数据模式或目录(catalog)的管理,至少要知道中台里都有什么数据。对复杂的数据中台来说,数据血缘也很重要。没有血缘信息,不知道数据间的依赖关系,数据质量肯定管不好,因为不知道一个数据的质量问题怎么来,又进而会影响什么。

    同样的,如果没有血缘,数据资产也肯定管不好,因为不知道什么数据有价值什么没价值,这就像如果你不知道一个函数被谁调用,你就不知道它是不是死代码一样。元数据管理系统往往也需要提供一个基础的访问界面,通常称之为数据地图。

    数据仓库开发与管理系统:除了指标管理,数据仓库的开发是将一大堆初始数据建设梳理成一个漂亮的数据中台的核心过程。一般来讲数据中台更适合用Kimball的维度建模方法而非数据仓库之父Bill Inmon所提倡的方法,这是因为Inmon强调顶层设计,而Kimball强调至下而上。

    如果要建设数据中台,肯定是因为前台业务复杂多变,这时强调顶层设计会导致中台建设缓慢、僵化。因为中台虽然应该是由组织高层决策,但目的却是为了支持前台业务,而不是为了控制。*支持而不是控制*,这一点绝不能本末倒置。

    数据质量管理系统:所有复杂的系统都需要专业的质量管理,在线业务系统有一系列的弹力设计和APM等监控运维工具,数据中台也需要专业的质量管理。数据质量管理系统通常设计为支持丰富的稽核 / 校验 / 比对规则,监控数据是否准确、实时、一致,还要做到及时的报警,分析影响面,提供快速修复的手段等。

    但这些手段只能发现和补救问题,不能预防问题,要预防问题,还要通过测试工具减少代码bug、通过资源弹性应对性能波动、通过优先级调度优先满足重要业务需求等。

    相对来说,当前数据中台领域的质量管理没有在线业务领域的成熟,如在线业务领域的测试手段远比数据领域的精细,在线业务领域很常见的熔断、限流、服务降级等模式在数据领域都没有成熟的实践方法(优先级调度可以说是实现了部分的服务降级功能),随着数据中台越来越广泛和重要,这些技术应该也需要持续发展,但技术上的挑战不小。

    数据安全管理系统:数据中台因为汇集了组织所有有价值的数据资产,因此良好的安全管理是必须的。细粒度的权限和审计是基础,一般的还需要隐私 / 敏感数据的脱敏处理、数据加密(特别是将数据托管在第三方平台之上时)、数据泄漏防护(比方说一种常见的方法是限制将数据下载到本地的数据量)等技术。发展到高级阶段甚至可能还需要联邦学习、数据沙盒等技术。

    数据资产管理系统:在数据质量和安全单列的情况下,数据资产管理主要负责的是数据的生命周期管理、成本的统计分析与优化等工作。

    同时,数据中台还需要强大的大数据计算引擎、数据集成 / 同步 / 交换引擎,还往往需要一套敏捷BI系统:

    大数据计算引擎:数据中台要管理的数据规模和复杂度往往都很高(否则搞中台属于为赋新词强说愁),所以传统的数据库和数据仓库基本上支撑不了。当前的技术环境下,基于Hadoop MapReduce或Spark几乎是唯二的选择,当然这也包括了这两者之上的Hive和Spark SQL。能有SQL就用SQL,易于维护,也易于数据血缘的收集。除此之外,流处理可能还需要Flink,交互式查询可能要引入Impala或GreenPlum。

    数据集成 / 同步 / 交换引擎:一方面数据中台需要强大的数据集成和同步能力才能吸纳各方数据。集成和同步的概念相近,同步更强调实时性。另一方面,数据中台往往由多种数据计算引擎构成,就需要同步或交换引擎实现不同引擎见的数据交换。

    敏捷BI系统:建设数据中台通常最重要的目的是为了支持业务运营和决策,为此需要基于数据中台进一步开发数据产品。敏捷BI系统是开发数据产品快速、轻型的手段,能够尽快尽早的发挥数据中台的价值。

    此外,对于互联网业务,统一的埋点引擎往往也是数据中台所需要的。如果埋点的逻辑都不统一的话,建数据中台的时候会发现数据的源头就是乱的,后续也都没法做。其他行业业务,数据采集也属于基础工作,也是要先做好的。

    数据中台技术选型参考:

    在搭建数据中台方面,基于开源技术的选型,尤其是Hadoop生态圈有非常多的选择,从数据整体流向来看各大层级的选型。

    数据抽取层:sqoop和flume是两大主流工具,其中sqoop作为结构化数据(关系型数据库)离线抽取,flume作为非结构化日志接入;

    数据存储层:Hadoop文件系统Hdfs大家都比较了解,而kafka作为流式数据总线应用也非常广泛;

    计算与调度层,包括:

    离线计算:离线计算主要是hive,spark,也有部分选用tez

    实时计算:前些年storm,spark比较流行,最近几年大家纷纷往Flink转型

    数据调度:除了像Airflow Azkaban Oozie等,易观开源的Dolphin-scheduler也非常活跃

    数据引擎层:也就是我们常说的OLAP层,我们看到这一层里的选择非常多,就不一一列举了,(业务需求带动技术进步的典型,选择丰富主要是可以适配不同的数据应用场景)。从概念上讲分为ROLAP、MOLAP以及两者混搭。MOLAP提前做一些预计算,以生成Cube的方式,达到空间换取查询效率;而ROLAP是即查即用,效率完全取决于查询引擎的性能,我个人认为从将来看,ROLAP的趋势会更加明显,因为没有中间的数据链路。但目前看来,没有一个统一的引擎足以支撑各类数据场景(这或许是将来的机会~);

    数据可视化层:比较主流的有Metabase、Superset、Redash,也可以选择阿里、百度的一些开源控件。

    在开源技术的选择里,我们看到各层里都有越来越多国内开源的工具(也充分体现了我们在大数据技术领域的进步)。除了以上列举的这些,整个Hadoop生态圈的技术选择非常多,可以结合自己的实际场景选择自己的架构,在选型层面可以参照的一些原则,比如:

    是否有鲜活的成功案例,优先找自己类似业务场景;

    接口的开放性,与其他组件的兼容性;

    社区活跃性度&发展趋势。

    展开全文
  • 我们在使用win10系统的过程,经常需要对win10系统提示“本次操作由于这计算机的限制而被取消”的情况,想必大家都遇到过win10系统提示“本次操作由于这计算机的限制而被取消”的情况吧,那么应该怎么处理win10...

    我们在使用win10系统的过程中,经常需要对win10系统提示“本次操作由于这台计算机的限制而被取消”的情况,想必大家都遇到过win10系统提示“本次操作由于这台计算机的限制而被取消”的情况吧,那么应该怎么处理win10系统提示“本次操作由于这台计算机的限制而被取消”呢?我们依照1、按WIN+R或右键点击开始,选择运行,然后输入gpedit.msc回车。2、打开组策略编辑器后,依次选择“管理模板”→“Windows组件”→“Windows资源管理器”并在右侧找到防止从“我的电脑”访问驱动器。这样的步骤就行了;下面小编带领大家看看win10系统提示“本次操作由于这台计算机的限制而被取消”的具体步骤:

    1529553X4-0.jpg

    解决方法:

    1、按WIN+R或右键点击开始,选择运行,然后输入gpedit.msc回车。

    2、打开组策略编辑器后,依次选择“管理模板”→“Windows组件”→“Windows资源管理器”并在右侧找到防止从“我的电脑”访问驱动器。

    3、紧接着右键选择“防止从“我的电脑”访问驱动器”属性。

    4、然后在设置中选择“已禁用”按“确定” (也可以设置为未配置)。

    Windows10提示“本次操作由于这台计算机的限制而被取消”的解决方法就分享到这里了。如果你在使用Win10系统时,也遇到这样的问题,那么不妨按照上面的方法试试看,也许能很快解决掉你的故障。

    以上就是关于Win10系统提示“本次操作由于这台计算机的限制而被取消”的解决方法,不会的小伙伴们来跟着小编一起学习吧!不会的朋友赶快来学习一下吧。

    展开全文
  • 2、中台的挑战:(1)创新的遏制:有说法说,一个业务靠拖中台的拉拽就能编排出来了, 这不是创新是什么?事实证明这种创新完全无用。没有任何一个投资人会把自己的钱投到一个可以被大公司拖拉拽出来的商业模式。...

    文章摘自与数据同行     作者:郭东白 

    个人读后总结了其中提到的主要观点,供大家参考:

    1、中台是个完全正确的方向;

    2、中台的挑战:(1)创新的遏制:有说法说,一个业务靠拖中台的拉拽就能编排出来了, 这不是创新是什么?事实证明这种创新完全无用。没有任何一个投资人会把自己的钱投到一个可以被大公司拖拉拽出来的商业模式。真正的创新不是现有能力的线性组合。(2)反人性:中台团队会通过强制收编前端能力来扩大自己的能力(3)过度设计:中台经常以最全的最复杂的实现来应对任何一个简单的应用场景。大量成熟行业和强监管环境下的需求被带入到了创新业务中,因为中台政治正确就要接收各种规矩的限制,没有人敢在模糊地带踩边界(4)丧失对客户心智的追求:中台团队的产品和研发的核心技能在于抽象和降本。前台业务的核心能力在于对商业机会的捕捉和新商业机会的创造。这是两种完全不同的技能,一个长期在多个业务中间找共性来降本的人是不会专注在最大化前台业务增长的

    3、中台适用的场景:中台的使用范围是有限的,仅仅限于技术演化相对慢且功能通用性高的场景中,中台不是万能的, 它仅仅合适在高确定性和高通用性场景下创造增量价值

    4、即使这样,为什么中台还是没有取得类似 Supercell 那样的效率?当前几乎所有的大厂都有同样的晋升和薪酬激励机制,就是一个人管理的研发越多, 层级越高, 收入也越高。这种机制有个巨大的弊端, 一个奖励组织膨胀的机制必然会带来组织膨胀。而组织膨胀最终因为康威定理的作用也必然导致膨胀的系统, 也就是前面提到的膨胀软件(Bloatware)。这个就是不断重复造轮子的充分条件。中台的建设要有与之匹配的组织文化机制

    5、合理组织机制应该提倡以下四点:(1)谁来做中台、谁的设计才是真正合理的中台设计,由市场决定(2)尊重原创,通过溯源和产权机制保护创新(3)自由准入, 不做独家专供(4)不强制推行, 设计统一是演化的结果, 而不是行政命令

    6、车好多中台的经验(1)中台变更复杂度 =(QPS*Count(BU)/ 变更频次)(2)中台充分条件:必须具备可隔离性、必须可以被局部替代、可以被第三方扩展和传播(3)设计原则:业务优先、反膨胀软件、扁平化微服务化设计、模块化开发(4)车好多的中台组织和孵化机制:逐步建设市场机制,考核指标上前台考核业务增长;中台则考核前台接入成本、前台新需求延迟、前台定制成本和接口高稳定性;建设自由准入能力,同时鼓励经营和创新;人才流转策略;保障业务连续性和人员稳定性。

    原文内容:

    中台的定义

    我们的讨论先从定义中台这个概念开始。

    定义中台我认为可以有两个角度, 一个是从中台本身的价值和出发点来:中台是在多个部门之间共享的开发资源所提供的业务能力、数据能力和计算能力的集合;另一个定义从中台的相对定位来:前台是面向终端用户的一组业务能力,业务中台是对前台应用的抽象,提供多个前台业务之间共享的业务逻辑、数据和计算能力。

    我想特别强调这个定义是相对中性的, 我们能够通过这个定义区分什么东西是中台,什么不是中台。有的中台定义严格来说不是定义, 比如说“中台是提升效率和加速业务增长的一种工具”、“中台是我们的战略目标”、“中台就是一个革命性的设计”,似乎不做中台就成了反革命一样,就是落后生产力的代表。

    其实中台本质上是一个对业务能力的抽象和共享的过程,一直存在,也谈不上革命。甚至业务中台这个概念也没有那么新:Oracle Fusion Middleware 早在 2006 年就发布了, 覆盖了包括企业智能、团队协作、内容等多个领域。

    我想特别强调中台和前台的定义差别。前台服务单个业务,目标是就是这个业务的增长;前台必须紧贴业务做好差异化;前台的定位要考虑到竞争环境、目标客群、业务成长阶段、运营人员能力、人才供给、监管环境等因素;前台要有自己的技术内容、定制流程、流程对接和个性化数据应用。中台服务整个集团,目标往往是降低成本、加强管控,或者是扩大规模优势;中台的定位在以集团利益最大化的前提下最大化服务前台业务的需求;中台有自己的技术实现、研发流程和数据标准。而后台是不具备任何业务语义的基础计算能力。下图就是对这种定位的一个示意:

    图片

    对待中台的两种极端态度

    当前对中台的看法主要有两种极端,一种是认为中台是一个完全错误的方向,要紧急刹车;另一种是认为中台就是技术终局,是业务增长的不二法门。我们先分别讨论一下这两种观点。

    我开始考虑 QCon 演讲话题的时候,中台只是多个备选话题之一, 但是当我意识到大家对待这个话题非常极端的时候, 我才觉得有必要把这个话题讲通讲透。最终选择以中台做为架构师独立思考的能力的一个案例。这是题外话。

    先说中台是否是个完全错误的方向?想思考清楚这个方向是否错误, 我们可以先看中台最初的动力来自哪里。不论是甲骨文还是后来的阿里, 其实本质动因是一个大公司内部的大业务呈军阀割据现象,导致多条业务线重复造轮子。由此而衍生出其他的问题, 比如说团队之间内耗严重;小业务无资源, 增长乏力;整个公司数字资产不统一, 损失机会成本;业务线也不能对核心系统做打磨,业务线不稳定。因为这些原因, 所以阿里的高管们就以美国海军陆战队和 Supercell 的组织形式为启发, 做了“大 (业务) 中台, 小 (业务) 前台”的策略。这里先不谈中台是否能解决这些问题, 或者是说战略启发是否正确, 但是毫无疑问的是, 中台想解决的问题既没有过时, 也依然正在不同的公司里发生, 所以这些问题还是必须解决。也就是说从问题定义角度来说, 中台是个完全正确的方向。

    那么中台是否是这些问题的完美解决方案?中台是不是万能药?我们已经知道答案是否定了。现在看来中台的解决方案至少有以下几个缺陷:

    1. 对创新的遏制:一个被完全中台化的业务导致集团内部过分分工, 任何前台业务都被认为是中台能力的线性组合。举个例子, 有的公司会有接近或超过千人的供应链中台、搜索广告中台、内容中台等等, 而多数业务前台少则几个人,多不过几十人。前台团队任何一个人哪怕是全职和一个中台域对接, 也无法理解该域的全貌或者跟上这个中台的演变。这意味着前台业务完全无法在这些中台相关的领域做创新。本来的创新业务变成无从创新, 当初的动力变成了中台最大的诅咒。有说法说,一个业务靠拖拉拽就能编排出来了, 这不是创新是什么?事实证明这种创新完全无用。没有任何一个投资人会把自己的钱投到一个可以被大公司拖拉拽出来的商业模式。真正的创新不是现有能力的线性组合。

    2. 反人性:中台自身的场景往往缺乏前瞻设计 ,是对现有场景的抽象。而当某个创新在一个前线业务线孵化出来之后,中台团队会通过强制收编该能力来扩大自己的能力, 同时强迫前台团队下线一个他们研发了很久的创新。这种行为往往造成精英人才的流失, 使得本来就受到遏制的前台创新变得更为匮乏。

    3. 过度设计:中台经常以最全的最复杂的实现来应对任何一个简单的应用场景。大量成熟行业和强监管环境下的需求被带入到了创新业务中。在带来大量运营复杂性的同时增加了用户(买家、卖家、本地运营)的学习难度。这就是我们常讲的膨胀软件(Bloatware):巨大、复杂、缓慢、低效。

    4. 丧失对客户心智的追求:中台团队的产品和研发的核心技能在于抽象和降本。前台业务的核心能力在于对商业机会的捕捉和新商业机会的创造。这是两种完全不同的技能,往往对应着完全不同类型的人才。一个长期在多个业务中间找共性来降本的人是不会专注在最大化前台业务增长的。

    之前做中台的公司往往被以上一个或者多个问题所困扰。也就是说中台事实上不是完美的。为什么呢?

    思考中台的本质

    我们先思考一下中台的本质。中台本质是把一些分散的重复的开发工作集中起来, 通过共享同一个研发团队来提升不同业务线之间的共性, 也就是通过抽象和统一来获取增量价值。具体的增量可以分成以下几类:

    1. 以零成本研发加速上线:对完全可以复用的标准化功能集中开发,未来以低研发成本上线,比如说一些无状态的计算能力,类似 SDK。

    2. 提升业务稳定性:对产品差异不大的领域,通过集中研发运维而获取更高的业务稳定性。这样一个团队开发的底层服务能够同时服务多个业务场景, 聚合所有的流量来加速积累。同时研发同学也通过更多的场景来加速打磨设计。常见的领域是会员、营销、交易、资金等服务。

    3. 加速技术和业务能力扩散:把整个集团的能力尽量跨 BU 复制。这包括两种类型,一种是类似 SaaS 服务的场景,比如说 Chatbot、直播、内容等领域;另一种是类似 ISV 的场景,由一个中央的团队同时提供研发,对内服务和运营,比如说安全、风控、财务、人力资源等。

    4. 统一数据资产:在集团内部统一数据标准,最大化数据复用, 把一个场景积累的数据优势应用到其他的业务场景中去,逐渐建设企业的数据壁垒。

    5. 集团层次的资源高效利用:把部分资源中央化,变成全集团资源, 比如说商品中台不但包括商品库,也包括商品质量控制体系、背后的货源、相关货源的价格以及服务竞争力。而商家中台,不仅仅是包含商家的信息,还包括商家的合作意愿和对集团品牌的信任,从而使得商家更愿意和一个新孵化的初创业务合作。集团真正想跨 BU 复用的是从一个大业务孵化而来的竞争力,而不是信息本身。

    从研发和管理难度来说从1到5逐渐变难,而带来的增量价值也依次变得更大。

    从这个本质来看, 那么中台似乎就是完美的, 那么之前提到的不完美又从哪里来的呢?我们有必要更深度的思考一下。

    中台的适用范围

    首先我们思考一下上面的要求, 我们把这些要求归类成六类, 其中第一种场景细分成低成本上线和加速上线两个类别,那么这些类别有以下共同特征:

    0.低成本上线:同一个功能模块在多个场景中被使用, 要求该能力的接口确定性高。

    1.加速上线:同一个基础能力不需修改或者简单修改即可上线, 也就是模块化支持,要求高 API 确定性和好的功能通用性。

    2.提升稳定性:同一个业务能力持续打磨, 要求需求同时具备高的接口稳定性和好的跨业务线通用性。

    3.加速能力扩散:基础业务能力可以跨业务线模式, 要求该能力具备比较好的通用性,可以在多个业务线之间共享。

    4.统一数据资产:数据模型可以在多个业务线之间统一, 对功能的通用性要求高, 且业务需求相对稳定。

    5.集团资源高效利用:业务能力共享, 不仅仅是技术资源, 其实是业务能力有高通用性且需求稳定。

    下图把这几个特征分别放在一个四象限图里面。这四个象限的横轴代表技术演化稳定性,竖轴代表功能的通用性。中台的优势领域在第三象限,这个象限技术具有高确定性,业务功能通用。第二象限属于比较稳定但是不通用的小众行业。第四象限属于普遍流行但是高速变化的领域,比如说内容和服饰或者端上的交互。而第一象限属于创新业务,不但定制化程度高且快速演化,比如说面向垂直行业或者初创技术。也就是说:中台的使用范围是有限的,仅仅限于技术演化相对慢且功能通用性高的场景中。这是我们得出的第一个结论。过往中台的失败案例也往往集中在把中台强推到创新业务中的情况。

    图片

    中台的组织机制

    那么为什么即便是在相对优势的领域,中台也没有取得类似 Supercell 那样的效率呢?他们不过是 100~200 人便撑起一个独角兽, 甚至是跨多个大洲的超级独角兽。值得一提的类似 Supercell 的中台并非个案, 仅仅百万人口的小国爱沙尼亚就有 4 个独角兽, 他们的中台团队也不过是百人左右。那么国内的中台为啥动辄就是成百上千人的研发团队呢?

    我有幸深度接触过芬兰和爱沙尼亚的几家独角兽, 我觉得导致这个巨大差异的根源在于研发文化和资源环境。这两个国家由于历史和文化传统,造就了崇尚简约、尊重原创和组织扁平的研发文化。而我们国家的高科技从业人口全球第一, 过去的十年间每年又有大量的新从业者。这些新从业者又普遍有大厂情节, 期望为一个技术品牌相对比较高且收入稳定的公司工作。也就是说大厂同时具备了孵化中台的条件且有源源不断的对成长没有太多诉求的劳动力。这其实是不断重复造轮子的必要条件。

    当前几乎所有的大厂都有同样的晋升和薪酬激励机制,就是一个人管理的研发越多, 层级越高, 收入也越高。这种机制有个巨大的弊端, 一个奖励组织膨胀的机制必然会带来组织膨胀。而组织膨胀最终因为康威定理的作用也必然导致膨胀的系统, 也就是前面提到的膨胀软件(Bloatware)。这个就是不断重复造轮子的充分条件。

    大量的劳动力供给和鼓励膨胀的机制合在一起, 结果就是团队上下不断加速重复造破轮子。下图就是对这个过程示意。某个研发经理从状态 1 开始, 带领一个小团队。这个时候他对应的层级是 2, 收入是 3。某一天, 他启动一个大项目, 给这个项目一个冠冕堂皇的名字, 比如说“拿破仑项目”。他的团队急速膨胀到 4。项目上线时间一到, 不论完成与否质量如何, 他立即对外发战报、做宣讲:我们取得了“滑铁卢大捷!”。紧接着他的上级内举不避亲, 把他从层级 2 提拔到 5, 收入也相应的从 3 调整到 6。然后周而复始, 他再启动“拿破仑二世项目”继续开发膨胀软件。很快他的“成功”也被疯狂复制。公司变得臃肿迟缓。

    图片

    这个现象当然不局限于中台, 整个公司都在膨胀。但是这种膨胀对中台而言却是灾难性的。一个膨胀的业务线伤害到自己, 但一个膨胀的中台放缓的是整个集团。

    所以我们有了第二条重要结论: 中台的建设要有与之匹配的组织文化机制。

    寻找中台的合理组织机制

    那么什么样的机制才是一个合理的组织文化机制呢?很遗憾我自己也不知道正确答案。但是我们或多或少可以从过去的失败中寻求教训,从历史中寻找启发。

    先来思考一下过去的失败。我归纳下来大致有这么几个根因:

    1. 对哪个团队做中台或者哪个人来设计中台的决策是个自顶而下的中央决策过程。做中台的人没有所必须的抽象能力和业务理解,类似过去封建王朝的分封的过程。受封的仅仅是生在帝王家, 有没有治理和决策能力不重要。

    2. 中台的推行机制往往是个掠夺的过程。对业务线的创新直接复制, 不尊重发明者的知识产权和劳动。中台所到处,寸草不生。

    3. 中台能力一旦发布, 独家专供, 哪怕功能不完善, 设计不合理也不允许业务团队复制或分支。

    4. 中台为了做规模强制向业务线推行,业务线被迫削足适履,消耗严重。每次中台升级,小的 BU 更是叫苦不迭,故障频发。

    其实这几个问题并非中台所独有。上面的四个问题其实和封建社会的分封机制类似,本来应该有市场选择、良性竞争和创新来完成的事情变成了强权。其实这个问题是有解决方案的。

    伴随工业革命带来的人类劳动力巨大释放(具体见 Berkley 大学 De Long 教授对人类文明史的人均 GDP 分析)背后也有完整的机制,这些机制就是我们可以借鉴的出路:

    1. 机会配置由市场决定。

    2. 尊重知识产权和创新, 保护参与者的创新意愿。

    3. 通过自由准入维持市场活力。

    4. 最终由规模效应形成统一的事实标准。

    虽然我还不能确定这是不是完整且合理的中台机制, 但是我们的思想实验至少给了我们避免过去的失败的一些希望:

    1. 谁来做中台、谁的设计才是真正合理的中台设计,由市场决定。

    2. 尊重原创,通过溯源和产权机制保护创新。

    3. 自由准入, 不做独家专供。

    4. 不强制推行, 设计统一是演化的结果, 而不是行政命令。

    中台的演进机制探索

    不过哪怕有这个机制, 我们还是要认识到中台天然的局限性。中台不是万能的, 它仅仅合适在高确定性和高通用性场景下创造增量价值。没有合理的期望设定,其实还会让迭代过程漫长而艰苦。在一个竞争环境下, 错误的目标设定不但会带来大量的资本和时间消耗,而且对员工士气打击也很大, 甚至会最终毁掉一家公司。

    从公司层面来看, 中台要降低成本, 但是抽象带来的增值是有天花板的。抽象的终局是个零和游戏, 不过就是把前台的事情交割给中台去做。没有价值创造,只有权力转移。另外,中台要加速业务迭代也有逐渐减少的边际收入。 一个健康的行业中需求是永远进化的,不存在超前的完美设计为未来不断创造价值。中台在业务起初产生最大的价值,其后逐渐衰减。

    从一个团队或者是 BU 角度来看,小 BU 期望通过中台带来业务增长,但事实上大 BU 的需求总是优先, 会占用几乎所有的中台资源。小 BU 的需求永远排在第二位,会饿死在等待的途中。另外中台靠合理的设计创造价值, 我们期望中台的设计是最优的, 但是真正有能力的架构师不一定在你所依赖的中台团队。你接触的中台边界不一定合理。如果中台很复杂, 跨团队的沟通也会变得更艰难。中台创造的增量价值就越小了。

    从个人来看,每个人都期望能力提升, 但是擅于发现机会也擅于抽象的人不一定在中台团队。每个人都期望职业高速发展, 但是高增长的团队往往是高风险的前台团队,而高稳定的中台团队往往变化缓慢。所以没有不论中台还是前台团队, 人才的配置不一定是最优的。

    知道了这些局限性, 我们才能对中台设定合理的期望。有了合理的期望, 我们还需要建设合理的迭代机制。这里我们还是可以借鉴其他领域的成功路径。我认为对中台机制探索应该向任何科学探索一样, 是个从假设到实验, 到结果分析, 到修正,最终到正确结论的过程。 我们从相对合理的中台诉求出发, 做合理的机制设计, 通过实施,到效果验证,然后对机制不断修正, 来最终得出逼近真理的一个机制。

    车好多的中台实践

    在分享车好多的中台实现机制之前, 我想先讲一下我为什么要分享车好多的机制。每一个机制的设计和迭代都是一个漫长的过程。虽然我们刚刚开始, 但是我把我们中台的机制完整的分享出来,也欢迎大家采用, 甚至是加入到我们的建设中来。我也想听到反馈, 尤其是你们已经发现机制漏洞的地方,那么我们就能够共同进步。

    为什么考虑在车好多做中台

    首先,考虑在车好多做中台的原因和之前提到的几个原因类似:加速技术能力和业务能力扩散,整合数据资产,最大化公司资源利用。

    那么具体什么时间启动有这么几个考虑,第一和下图有关, 就是中台启动之后的复杂度的变化情况。随着时间变化,首先中台服务的调用频次逐渐上升,甚至往往呈指数上涨, 其次是 BU 数目逐渐上升, 最后是变更频次逐渐变少。太早上线其实价值不大, 因为极端情况就是一两条业务线之间做复用, 中台带来的合力还抵不上增加的重构成本、沟通成本和人力开销。这一点上车好多有 8 条不同的业务线, 有了足够的场景复杂度和中台增值空间, 但是也不至于像某些公司有成百条业务线,建设难度非常大。 另外车好多的业务天生是低频业务, QPS 低于传统电商3~4个数量级, 所以做中台有绝对优势。最后车好多的主流业务和新兴业务都在不同层次的迭代当中,所以我们的变更频次比较高, 对做中台也是利好。

    图片

    以上三个因素,是决定中台的研发复杂度的核心指标,我们可以大致建模为:中台变更复杂度 =(QPS*Count(BU)/ 变更频次)。任何一个服务,QPS 越低,依赖这个服务的 BU 数越少,迭代的越频繁, 那么变更的难度越小, 变更带来的风险越小。

    如下图所示。在中台建设期间, 由于自动化测试能力还不够,接口设计不完善, 团队同学的运维和沟通能力也还在成长中, 那么风险上升就会相对比较快。等到中台建设相对完善了,风险的增长和迭代难度就相对变缓。

    车好多的优势是 QPS 增长不快,原因是汽车交易本来就是个低频事件, 全年全国不过是千万量级,和传统电商完全没办法比, 而车好多自生的业务迭代速度非常快, 变更频繁, BU 数增长很慢, 也就是车好多的中台变更复杂度随着时间的变化非常慢, 留给车好多的中台建设时间相对就比较充裕。另外车好多最大的两个板块新车和二手车有很大的相似性, 所以建设中台可以从这两个板块的最相似业务线出手来打造能力, 这也是优势。

    图片

    但是车好多的中台也有自己的挑战:首先三大板块新车、二手车和车后的差异大,而且业务所处的阶段不一样, 有的在做增长,有的在做转型,有的在做赛道探索。所以同样有前面第二节里提到的中台适用范围的挑战。另外整个产业互联网行业还不同于传统互联网,我们的产品技术还在从生产工具到核心生产力的过渡过程中。也就是说,技术的投入是有限的,技术带来的增量价值也待验证,所以研发投入不能过度超前。最后一个挑战是这几大板块对应着数万亿的线下市场,所以车好多的业务与线下高度结合, 流程往往以天计算, 因此变革要和行业的适配能力和期望相符。

    车好多的中台定位和组织文化保障

    在定位上,车好多中台要解决的问题集中在集团高确定性和高通用性领域的技术和数据共享,我们不对创新业务探索加速。车好多中台是技术产业链的规模化之后的分工, 它的核心是对研发成本的优化和某些计算和运营资源的集中化管控和共享。

    在组织保障层面上, 我们以加速业务迭代为目标, 通过市场机制加速中台的进化,通过内部开源且允许分支的方式加速进化和保障自由准入。我们鼓励原创,以物质、奖金、股票和晋升激励和固定人员投入来放大团队原创的动力。

    在文化保障上,技术上我们关注设计, 崇尚简约,鼓励创新。对中台保持一个客观的态度, 中台回报不一定为正,也要迭代进化甚至消亡。中台既不是管理方式,也不是价值观。我们尊重学术自由, 中台设计没有权威, 逻辑面前人人平等。

    下图是车好多的中台构成, 所有的业务线共享数据、计算、研发效能和企业效能中台, 业务线对业务中台形成部分依赖, 算法能力我们还没有中台化, 更多是个共享的组织, 而不是共享的技术能力, 所以用虚线表示。 每个中台域的研发范围如图所示。业务线则按需定制, 我们通过控制业务线的研发人数防止膨胀软件。

    图片

    对中台软件的要求

    以前各家公司开发中台, 很少对中台软件做出系统性要求。中台团队想交付什么就交付什么。这些软件的质量参差不齐, 往往是项目的时间节点一到, 中台团队就三呼完美,那时候就有什么算什么, 业务团队如果稍有抱怨, 未来的需求就免不了受打压。为了避免这种情况, 我们对中台的软件做了一个定性要求。这些定性要求又可以大致分成两类, 一类是必要条件, 一类是充分条件。

    先说必要条件:

    1. 中台软件必须具有可解释性, 也就是中台能力可以被分解成一组可以被完整描述的行为。这里特别要强调完整描述, 有些团队做中台, 先不说自己能做什么, 而是先占领一个关键词之后问你想要什么?你想要什么我们就可以做什么。 这个就是典型的圈地心态。对做什么功能,解决什么问题完全没有任何前瞻思考, 结果就是越做越无序, 前台团队跟着变得越来越低效。

    2. 中台必须具备可验证性,也就是说中台和计算的结果可以验证, 中台的交付的功能可以确定性的被证伪或者被证真。这是独立测试和边界稳定需求,很多中台是从业务线里划分出来的。因为需求繁忙, 往往对自己的边界也不做清晰定义, 也没有完备的自动化功能测试,更别说场景集成测试了。哪怕有边界,也经常变动, 没有兼容能力。这个要求就是对能力的验证和兼容性做限制, 避免中台堕入深不可测状态。

    再说充分条件:

    1. 中台软件必须具备可隔离性,中台能力应该由多个相对独立的模块构成, 每个模块对相关实体的状态改变必须隔离在模块内部。这个要求是确保前台对中台可以做到最小化。而且对中台的依赖可以局限在前台的个别业务模块中, 这样对某个中台的依赖不会带来整个系统的稳定性降低。这个要求可以防止中台过度侵入到前台,无序扩张。

    2. 中台的模块必须可以被局部替代,中台的各模块加载独立,且个别模块所封装能力可以被等价接口所替代而不影响剩余的模块功能。这个要求和前面可解释性 / 可验证性一起就可以允许业务线对中台形成部分依赖, 而不是只要依赖某个中台的一个功能, 就必须所有功能全依赖,永远全家桶。

    3. 中台能力可以被第三方扩展和传播。也就是说中台的某个模块可以被前台团队重写后发布给全集团使用。这样可以避免中台能力仅仅独家定制,创新被遏制在远离前台的后台团队。

    为什么说前面两个要求是必要条件呢?因为他们合在一起就是要解决中台提供能力的可封装性和可用性, 也就是说一个前台团队根据能力的描述可以决定是否使用一个中台功能。而后面三个是充分条件, 就是中台提供的能力前台业务线也可以选择不用, 或者部分使用那些有价值的模块。 这样中台既可用、亦可弃, 才满足了中台做为一个通用能力加速业务线迭代的充分必要条件。

    车好多中台的设计原则

    中台设计和使用上我们有如下原则:

    1. 业务优先。多数时候由业务线同学决定架构选型, 而不是中央决策。

    2. 反膨胀软件。对中台 API 稳定性和数据模型兼容性做强制要求, 避免中台膨胀过快。避免复杂依赖。

    3. 整个中台要求扁平化微服务化设计,降低依赖深度,加速功能发现。

    4. 模块化开发。各模块有明确边界,独立文档,可独立设计 / 发布 / 被替代 / 升级。 模块尽量以原子服务模式向往透出,模块间依赖主要是服务依赖。

    中台的具体边界和抽象深度是个非常有挑战的问题,往往是个平衡,没有对错。对此我们做了设计追求的建议,就是期望各中台团队在交付压力允许的情况下最大化的做到以下两点:

    1. 边界合理:寻找中台的正确边界,平衡研发成本和业务迭代速度。中台的边界应当使得 API 最简化。

    2. 中台对多个业务的抽象逼近最优, 模型在信息量最大的情况下能够保持相对稳定。

    下面两张图就是个具体的例子, 前一个模型简单, 相对稳定, 但是在这个模型下能够提供的服务粒度粗。第二个模型更复杂, 这个模型下能够提供相对更细粒度的服务。后者能够适用多个车好多业务线的现有模式, 且信息容量更大,所以在当前的业务矩阵之下是个更好的模型。

    图片

    图片

    车好多的中台组织和孵化机制

    车好多之前没有中台,怎么孵化出中台来也是个挑战。

    孵化中台有多个方式:

    1. 自由竞争制:个人或者团队自主入场, 自主投入。代码开源,去中心化研发, 通过统一发现机制对外露出。

    2. 中央授权制:由公司做顶层决策,不做团队调整, 做项目强制统一多个技术分支。

    3. 集中孵化制:由公司做顶层决策, 对团队先做整合, 之后由该团队孵化中台。

    4. 重点扶持制:不对称的做研发人员补贴,对特定领域做引导,加速该领域的中台建设。

    视情况不同, 我们这几种组织和孵化机制都有采用。

    中台的孵化具体有如下几个平行的方向:

    1. 逐步建设市场机制:由前台业务线研发做选型决策,保障业务优先。同时通过 HC 管理引导最优决策,靠市场和预算驱动最经济的决策, 防止中台和前台的膨胀软件。在考核指标上前台考核业务增长;中台则考核前台接入成本、前台新需求延迟、前台定制成本和接口高稳定性。

    2. 建设自由准入能力,同时鼓励经营和创新。除了前面提到的内部开源且允许分支,我们会逐步建设去中心化研发体系,加速分布式创新。同时为了鼓励中台经营, 通过控制业务线分支权利来说防止重复造轮子。

    3. 人才流转策略:中台和前台必须有统一的研发体系和统一的人才流转机制,保持双方的活力。对有基本的能力、偏好和专业度差异的研发人才做定向培养, 支持转岗。

    4. 保障业务连续性和人员稳定性:对中台我们会保留一定程度的顶层设计,避免大范围技术和组织重构。

    关于人才

    最后讲讲人才。不论设计多么完美的机制, 最终还是要靠人来实现。合理的机制仅仅能够避免引人误入歧途, 但是价值创造还是要靠优秀的人才。

    车好多对人才的画像可以总结成两句话:做学问要包容求真, 做人要有良知和勇气。 第一点是期望我们的人才能够保持开阔的视野, 对新事物和不同观点的包容,和不断探索寻求真正有价值洞察的欲望, 从而发现别人不能发现的机会。第二点是希望我们的人才能够为公司做正确的决策, 不断让正确的事情发生。同时他也要有勇气,愿意站出来阻止错误的事情发生。我们当下虽然有一些这样的人才,但也渴望更多的这样的人才加入。

    结       语

    中台不是万能的, 但是可以在高确定性和高通用性场景下能创造增量价值。中台应该有合理的应用场景和时间窗口, 需要用一些设计原则来约束, 也需要相应的组织机制支持。中台有自己的生命周期, 要做阶段性的重构和重定位。这就是我对中台的大致理解。

    展开全文
  • 引入数据中台可以打破数据与数据的界限、技术与业务的界限,为业务层的迭代提供更快的数据响应,真正做到业务数据化、数据资产化。 熵简科技在长期的实践过程总结出了一套适用于资管机构的数据中台架构方案。本文...

    导读:数据中台是熵简科技数据智能解决方案中的核心部分。引入数据中台可以打破数据与数据的界限、技术与业务的界限,为业务层的迭代提供更快的数据响应,真正做到业务数据化、数据资产化。
    熵简科技在长期的实践过程中总结出了一套适用于资管机构的数据中台架构方案。本文将从数据仓库建设、数据管理和开发和数据服务体系三个维度介绍数据中台在资管场景下的落地规范和方案。

    作者信息:熵简科技 Airworks 团队,团队致力于打造高性能、低代码的一体化大数据分析平台,为机构组织的数据团队及各业务部门人员提供“数据智能全链路”平台及解决方案,涵盖数据清洗、数据融合、数据建模、数据可视化、数据服务等多个维度,全面助力客户实现业务数智化。。

    本文的主要内容包括:

    1.数据中台整体架构
    2.数据仓库建设
    3.数据整理和开发平台
    4.数据服务体系
    5.结语

    01. 数据中台整体架构

    数据中台是资管机构数据智能解决方案中核心的一环。资管机构内部的数据源和数据量往往是异构且巨大的,在引入数据中台之前,这些数据存在各个竖井式的应用中、各业务部门或负责人的数据库中,数据之间相互隔离,无法快速进行融合和分析。

    而引入数据中台后将会带来如下几点优势:

    ●业务层数据往往聚合了若干异构数据源,数据中台可以支持海量数据源的高效治理、提供清晰的数据血缘追踪,对多源异构数据源进行高效的数据治理,通过交叉分析贡献业务价值。
    ●通过规范的数据分层,清晰定义每个数据层的作用域,能够极大减少重复计算;数据中台作为前台业务与后台系统之间的变速齿轮,为快速的功能迭代提供数据响应基础。

    熵简科技在长期的实践过程中总结出了一套适用于资管机构的数据中台架构方案。其功能架构分为数据源、数据开发运维、数据资产管理和数据服务四层。
    在这里插入图片描述
    数据源

    按照数据形式分为结构化数据、半结构化数据和非结构化数据。其中一方数据大多为结构化数据。三方数据既包括了财务数据、行情数据、指标数据等结构化数据,也包括了研报、图片、评论等半结构化/非结构化数据。

    数据开发运维

    数据开发包括离线开发、实时开发和算法开发三个部分。其中以 ETL 为核心的离线开发是数据仓库分层的重要手段。

    数据资产管理

    数据资产管理包括了数据资产管理、数据治理和数据安全三个部分。通过数据资产管理,机构内部所有数据在数据中台汇聚成了有机可复用的数据资产,为业务层的需求提供更快的响应,发掘更大的价值。

    数据服务

    数据服务包括了面向应用的 API 服务和面向探索分析的 BI 可视化功能。除此之外,数据中台可以扩展标签中心、智能推送等更多的数据智能服务。

    熵简数据中台的技术框架如下图所示。我们的数据仓库建立在以对象存储为基础的 Hive 表之上,数据计算分别基于 Spark 集群和 Flink 集群提供离线支持和流式支持,最上层通过 OLAP 引擎 ClickHouse 对外提供统一的数据分发服务。整个数据中台搭建在 Kubernetes 集群之上。
    在这里插入图片描述
    接下来我们将从数据仓库建设、数据管理和开发和数据服务体系三个维度介绍数据中台在资管机构落地的规范和方案。

    02数据仓库建设

    资管数据仓库本质上是一套面向资管业务场景的方法论,涉及从数据规范、指标定义、数据管理到数据开发和数据服务,并保证全流程的数据血缘清晰、可管理、高复用、可追溯。本小节将从核心需求、元数据模型、分层架构、数据管理规范和数仓评价体系这几个方面,对资管数仓的建设进行详细阐述。

    2.1 核心需求

    在传统的、没有进行统一数据仓库建设的资管机构中,对于数据的使用是“烟囱式”的,各数据源、中间表、数据应用之间相互独立,没有专门的数据开发人员负责统一建设。

    业务视角来看,业务分析场景用到的指标、维度不明确;频繁的需求变更和反复迭代,数据报表臃肿,数据参差不齐;用户分析具体业务问题找数据、核对确认数据成本较高。

    技术视角来看,指标定义和指标命名混乱,指标不唯一,指标维护口径不一致;指标生产重复建设;数据汇算成本较高;数据输出和服务的出口不统一,重复输出,输出口径不一致。

    为了解决以上痛点,我们需要建设一个统一的分层数据仓库做统一管理,为此我们要从定义元数据模型、搭建分层数据架构、指定数据管理规范和指标体系管理工具产品化四个层面做建设,在系统产品层面打通完整数据流。在业务上 统一数据出口、覆盖全域数据场景;在技术上统一指标和维度管理,统一数据计算口径。

    下面我们将着重介绍元数据模型定义、分层数据架构搭建和数据管理规范三个方面的建设内容。

    2.2 元数据模型

    元数据模型是构建数据仓库的基础,贯穿了数据仓库的整个生命周期。从一般性角度而言,元数据模型定义和规范了源数据到数仓的各层级流程、映射、变换的规则、工具、操作周期等各类关键信息。在此基础上,我们才有可能完成诸如数据血源查询、数据一致性校验、多实体多维度关联、多层级回溯等上层分析目标。

    由于篇幅限制,本小节重点聚焦在元数据模型在数据结构以及指标定义等方面的内容。对于资管数据仓库而言,构建元数据模型的设计目标是通过数据规范的定义和引入,来全面、准确地描述资管业务。

    接下来,我们以面向投研场景的元数据模型为例,详细介绍熵简数仓在元数据方面的设计思想和实践经验。对于面向投研需求的元数据模型,其最终设计目标是通过对多源异构数据源的统一规范,来准确、完备地描述投资标的,理论上满足投资分析所需的全部信息需求

    在实践中,我们的元数据模型是以 Kimball 提出的维度建模(DM)理论为基础,同时还参考了阿里的 Onedata 体系的设计理念,比如一个指标只有一个英文字段、一个中文字段以及一个计算定义。
    图片熵简元数据模型示意图
    上图展示了整体的数据模型架构,整个架构分成业务板块、元数据模型、分层设计三个部分:

    业务板块:业务层针对资管场景中常见的数据存储和使用需求,按照业务场景进行抽象和细分,如投研、交易、风控、营销等不同的业务场景。由于各个业务场景所用到的数据源和数据类型具有较大的差异性,一般而言,针对每一个业务场景都会设计专门的子元数据模型。各个子元数据模型的合集构成整个数仓的元数据模型,以提供完备的数据规范标准。

    元数据模型:对所属业务场景下所需的全部数据进行抽象,定义统一的数据模型、指标类型和管理规范。以投研场景为例,其元数据模型包括了行业数据、财务数据、宏观经济数据、行业数据、工商数据等各类投研所需数据的组织规范、命名规范、存放标准以及层次关系等。

    分层设计:在物理上,元数据模型中定义的物理表都会归属于某一个数据层。因此,这部分主要定义数仓模型的分层架构,明确各层任务、主要数据类型和关键性能指标,实现各层数据与应用的去耦合,以尽量避免“烟囱式”的数据开发现象,提高各个数据的复用率。这部分的细节将在2.3节中讨论。

    2.3 分层架构

    数据仓库的分层设计是一套行之有效的数据组织和管理方法。虽然分层架构并不能解决所有的数据问题,但分层架构可以帮助清晰数据结构、减少重复开发和统一数据口径。每一个数据分层都有它的作用域和职责,越靠近上层的数据层越便于应用和分析,越靠近底层的数据层越保留更多的原始数据信息。实际使用中,80% 的数据取用需求可以用最上层的20% 数据解决,只有少部分数据取用需求需要触及底层原始数据。

    数据分层的设计,在某种程度上也需要通过数据命名来体现,本节核心在于讲解数据分层的思想和方法,下一小节会介绍设计数据表的命名规范。

    具体来说我们将数据模型分为五层:数据接入层(ODS)、数据明细层(DWD)、数据汇总层(DWS)、数据集市层(DWM)和数据应用层(APP)。简单来讲 ODS 层存放的是接入的原始数据,DWD 层存放的是经过 ETL 清洗加工的高质量原始数据,DWS 层存放的是数据轻度聚合后的结果,DWM 存放的是面向业务的宽表,APP 层存放的是面向业务定制的应用数据。下面以熵简另类数据集中的电商数据为例详细介绍这几层的含义。
    图片数据仓库分层架构示意图
    2.4 数据管理规范

    2.4.1 模型设计规范
    模型设计规范是指在分层数据仓库架构中,如何去设计每一层的模型(数据表)以及其命令规范。

    我们根据两个原则去设计分层模型:

    ●分层架构的定义,解决数据需要放到哪里的问题。
    ●业务的数据需求和数据的业务属性,解决数据要存储成什么字段、什么格式的问题。

    此外,我们对每一层数据模型制定了一套统一规则去进行命名,其中的一类是按照“数据源-数据域-维度类别-更新周期-更新方式”的规则进行命名。例如:“熵简另类数据-电商数据-销售情况-月度汇总表”。

    通过规范的模型设计,打通了数据部分和业务部分的隔离,任何了解模型设计规范的人员都可以直接通过平台统一管控的模型了解到数据的含义,做到数据可管理、可追溯、可复用。

    2.4.2 维度管理规范
    维度管理规范是指制定一个统一的维度表模型,在模型基础上建立维度,对维度新增、修改、发布等生命周期进行统一管理。

    这里会对维度进行主题分类,例如时间类(date)、实体类(entity)、行为类(behavior)、来源类(source)、布尔类(boolean)等,维度编码按照”维度主题-维度标识-唯一编码“的形式编码。

    实践中,维度建模的过程会从资管机构的实际业务场景触发,选择具体的业务场景和数据源,确定汇总的粒度,进而确定维度。此外维度间还会定义层级关系,定义好维度层级后就可以在应用层面提供维度值的上卷下钻查询服务。

    2.4.3 指标定义规范
    我们将数据仓库中的指标分为三种类型:

    原子指标:含义是一个实体在一个行为场景下的具体度量,例如“商品销售额”。

    派生指标:含义是在具体修饰词下的原子指标或原子指标的汇总,例如“近半年月均销售额”。

    计算指标:含义是对原子指标进行统计加工后得到的指标,例如”月度销售额同比”。

    指标定义规范是指统一指标定义的规范,其通过制定原子指标的命名规则、派生指标的命名规则和指标计算规则来完成。一个完善的指标定义规范可以大大降低后续的使用成本和维护成本。

    用于资管机构的指标定义规范很大程度上依赖于我们的元数据模型,例如对金融实体对象的度量,通常包括财务指标、行情数据、经济指标、另类指标等类型。这些指标具有不可拆分性和通用性,对于资管数据仓库的建设具有直接指导意义。

    2.5 数据模型评价体系

    介绍完数据仓库的数据管理规范后,我们可以看一个数据模型设计的典型过程:

    确定业务过程:根据业务场景以及可用数据源确定数据可以从哪些角度刻画业务。

    声明粒度:根据应用场景,确定数据的汇总粒度。在应用场景多变的情况下,一般尽可能的用最细的粒度进行刻画,这样可以保证高维度和低维度数据都可以查询到。

    确定维度:根据声明的粒度,定义对应的实体维度。

    确定事实:确认业务需要将哪些数据归类到事实表中,维度表只做关联,不做维度数据的查询服务。

    当我们遵循上述过程设计出一个数据模型后,我们如何去评价其优劣呢?这里就极度依赖规范去评价每一个数据模型的效果,我们总结了一个好的数据模型应该具有的特点如下:

    分层架构清晰:ODS 层只存原始信息,不做修改;DW 层面向业务过程做指标计算;APP 层要面向应用做建设。

    指标定义可读:数据需要按照一定业务过程进行业务划分,明细层粒度明确、历史数据可获取,汇总层维度和指标同名同义,能量化不同的业务过程。

    模型相对稳定:数据模型分为两类,一类是伴随着创新业务的发展快速迭代的模型,另一类是相对固定的业务过程中用到的数据模型,此类数据模型需要尽快下沉到公共层,形成可复用的核心模型。

    高内聚低耦合:主题内数据模型高内聚,主题间数据模型低耦合,避免在一个模型中耦合其他业务的指标。

    持续建设:数据模型需要持续建设,保证数据能够适应不断变化的业务需求。

    了解以上评价规则,可以指导我们去解决实际数据仓库建设中遇到的各类问题。例如数仓建设中一个常见的问题是建立一个宽表还是多个维表?从规范化的角度来讲,建设多个维度表可以减少数据的冗余,而且也便于模型的扩展。从反规范化的角度来讲,业务需求方希望尽量少做表关联,因此宽表使用起来会更方便。我们在实践过程中,对于低层级、跨主题的数据一般是建立多个维度表,对于高层级、主题内的数据可以建立宽表方便使用。在部分情况下会同时存储两种方式,通过更多的空间占用换取时间响应的提高。

    03数据管理和开发平台

    3.1 一体化平台

    一个完善的资管数据中台,在功能架构上分为数据存储(数据源)、数据开发运维、数据资产管理和数据服务四层。在熵简数据中台体系化和工具化建设的初期,我们就针对功能架构提出了三点要求:

    一体化:集成数据智能全链路,用户可以在一体化平台上完成数据开发、运维、管理并对上层应用提供服务;

    模块化:一体化平台中的各模块相互解耦,用户既可以从零开始搭建数据中台,也可以兼容已有的、在脚本中沉淀的数据开发逻辑;

    可视化:数据开发、运维、管理可以通过可视化配置的方式完成,降低中台搭建成本。

    为此,熵简数据团队打造了 AirWorks 一体化数据平台。AirWorks 平台致力于打造一个具备可视化开发能力,包含数据挖掘、分析、建模、应用、管理全生命周期的大数据研发平台,拥有数据传输、数据计算、数据治理、数据分享的各类复杂组合场景的能力。它是一个低代码、可视化数据融合系统、科学建模系统,也是一个中心化的数据仓库 ,同时对外提供统一分发的数据服务。具体而言,AirWorks 平台提供了如下功能模块:

    数据集成:底层数据源之间的数据融合打通;

    数据开发:流批处理、机器学习等多引擎任务的可视化开发,封装了一些经典场景的模型算子,业务人员也可以独立完成数据开发任务或机器学习建模任务,构建复杂的任务调度;

    数据资产管理:统一管理整个平台的数据表、API 等各类数据资产,提供强大的数据搜索、数据类目、数据血缘等能力。

    数据服务:零代码快速生成 Serverless 化的 API;

    商业智能分析:通过拖拽方式对数据进行分析,可以快速形成图表、报告和大屏。
    图片一体化数据平台 Airworks 部分功能一览
    3.2 关键技术挑战

    用户透明的计算引擎混排
    数据中台的搭建往往需要用到不同的数据计算引擎,例如 Spark、Flink、Python、R、sql 等。传统的数据中台建设依托于工程师的代码能力,在不同的数据层级,针对不同的应用场景和数据特性去选择最合适的计算引擎。

    在 AirWorks 一体化平台中,我们希望能够提供用户透明的计算引擎混排,能够兼容市面上主流的计算引擎。每一个计算引擎背后的计算逻辑被封装成一个个“算子”,对于不同特性的计算任务,用户可以挑选合适的算子去完成,算子与算子之间的交互和数据流动不需要用户关心。当然,平台也需要提供各类自定义算子去帮助用户完成特定场景下的计算任务。

    存算分离架构
    在大数据量级下,数据中台里的很多计算任务是需要通过分布式计算完成的。在分布式计算和存算分离的架构下,平台必然要引入集中式的存储为之服务。熵简技术团队在多方对比之后,挑选了对象存储来满足存算分离的架构。对象存储既能很好的满足大数据计算的存储需求,又能够兼容公有云、私有云、混合云多种部署方式。在 AirWorks 平台中,对象存储同时承担了中心化数据仓库和算子中间结果的存储。

    异构数据量级的智能调度和均衡管理
    在资管数据中台的应用场景中,用户既会处理小数据量级数据,例如各种已经结构化的时序指标,也会处理海量数据,例如各种互联网公开的另类数据。一体化平台需要做到异构数据量级的智能调度和均衡管理,实现资源动态分配,屏蔽大数据难题,对于小数据和大数据做到统一均衡管理。

    数据模型的可视化建模和管理
    在本文的上篇中介绍了资管数据中台的数据模型规范。在平台中需要将这些数据模型规范落地,实现数据目录、数据血缘、数据治理、数据分层等功能。设计一个交互友好的数据资产管理模块是一体化平台的关键技术挑战。

    3.3 主要技术方案

    AirWorks 数据平台的整体技术架构如下图所示。平台以数据为基础,以数据管理系统、任务执行调度系统、工作流管理系统、权限管理系统为核心,提供数据开发(项目管理、工作台、运维调度)、数据中心(数据集市、数据同步、数据资产管理)、数据应用(API服务、BI服务)三大类功能,覆盖数据汇聚、研发、治理、服务等多种功能的应用。
    图片AirWorks 数据平台整体技术架构图
    数据集成

    一体化平台提供了异构数据存储的能力,提供丰富的数据源支持,涵盖主流数据源:

    ●Mysql / Oracle / MongoDB / SQLServer
    ●Oss/S3
    ●ElasticSearch
    ●CSV / Excel
    ●AirWorks数据中心

    针对Excel格式,平台根据金融企业的场景,兼容多种 Excel字段类型,多Sheet页批量导入。平台提供了增量/全量两种同步方式,对数据表支持追加,更新,覆盖操作。数据集成和工作流开发套件融合,完全复用工作流的各类调度、监控、运维能力。

    数据开发

    平台提供了可视化的无代码编程套件,可以低学习成本地完成数据开发任务,支持一系列 Scala 的函数,同时支持 Python、R 等多语言自定义算子。实践过程中,业务人员可以进行无代码开发,开发人员可以使用 R、Python、Scala 进行开发,兼容上述的混编工作流。用户可以从业务视角整体管理工作流,将同类工作流组织为项目。工作流的每次运行会保留节点中间结果,方便运行回滚操作。整个数据开发过程不需要关注底层优化点,AirWorks 平台已经对工作流的运行进行了优化,让数据开发人员更专注于业务本身
    图片Airworks 数据开发界面
    数据倾斜优化

    数据倾斜指的是并行处理的数据集中,某一部分(如 Spark 或 Kafka 的一个Partition)的数据显著多于其它部分,使该部分的处理速度成为整个数据集处理的瓶颈。平台处理数据时,先通过数据采样和样本分析了解数据分布情况来识别数据倾斜,拆分高度聚集的 Key 值来进行优化,为数据量特别大的 Key 增加随机前/后缀,原来 Key 相同的数据变为 Key 不相同的数据,使倾斜的数据集分散到不同的 Task 中,彻底解决数据倾斜问题。

    多租户管理

    多用户共同使用资源时,会出现单用户挤占过多的资源,使其他用户无法使用的情况。AirWorks 平台使用了多租户管理机制,分离调度任务和用户执行任务,用户资源优先满足,限制单算子最高资源使用量,保证多租户运行正常。

    为了尽量提高资源利用率,Spark 的执行器被调整为统一的1核1G配置。为了保证在这样的资源下可以正常执行任务,平台从输入算子开始就对数据进行了合理的分片,先采用数据采样的方式对数据源的数据行进行大小预估,再分片摄入数据,保证每一片的数据都在内存可控范围。

    多计算引擎无缝整合

    工作流设计的最小执行和配置粒度为算子。不同的算子可以使用不同的计算引擎。混编工作流进行数据开发工作。AirWorks 通过 Spark 对 Python、R、Scala 三种语言的支持,进行资源统一分配使用,完整发挥各语言优势。同时通过集成 Jupyter Notebook 实现算子交互式运行。当数据开发任务还处于原型开发阶段时,用户可以按独立单元的形式编写代码,这些单元是独立执行的。AirWorks 通过 Jupyter Hub 管理不同用户间的运行环境,只需要单击自定义算子,就可以简单的开启数据探索之旅。

    这套框架可以用来对于 Spark、Flink、Python、Sql 不同的计算集群进行高效率调度,实现 TB 级的离线和流式一体的计算能力,已经累计为数十家金融机构完成2.2PB 级的数据融合和分析服务。

    另外,加入了自研数据采样+智能调度,有效提升资源动态分配效率,屏蔽大数据难题,对于小数据和大数据做到统一均衡管理。相对多个现有的开源框架,资源利用率提升 50% 以上;
    在这里插入图片描述
    数据资产管理

    AirWorks 使用全程可视化操作,打通了数据资产流转的各个环节,快速解决不同的数据治理场景。平台使用关系型数据库作为元数据存储,通过在数据源、数据输出、数据开发任务内部进行信息打点,完成全面自动的元数据管理和直观清晰的数据资产管理。用户利用数据资产管理模块可以完成如下任务:

    ●管理表名、字段名,沉淀数据模型设计规范;
    ●数据模型的分层化管理和不同角色的目录化管理;
    ●通过分析数据资产之间的关系,统一数仓主数据;
    ●便捷地管理数据血缘,动态地了解数据怎么产生、在被谁使用、进行了什么操作,数据表中的字段来源于哪张表,又后续影响了哪些表;
    ●进行资产权限管理,保证了不同层级的用户可以查询不同的数据。对同一数据表,可以已划分字段级别权限给不同的用户,完成数据分级管理;
    ●平台提供对隐私数据的加密、模糊化处理,用于保证数据的安全性。
    图片

    04数据服务体系

    AirWorks 数据平台中内嵌了一个中心化数据仓库。在非对外服务的数据层中,平台适数据量大小使用关系型数据库和 Hive 来进行数据存储。但是在 APP 数据层,存放的是直接提供给数据产品和数据分析使用的数据,这层的数据一般都是大宽表,由于涉及到非联表的即席查询,需要使用 OLAP 引擎中供线上系统使用。

    AirWorks 数据平台当前提供了数据 API 服务和 BI 服务两种方式作为对外的数据出口。一方面业务人员可以利用 BI 服务实现交互性探索分析,另外一方面上层应用可以直接通过 API 的方式从数据集市层直接取数。

    BI 服务

    BI 模块不仅仅是图表的生成展示,同时也是数据分析的一部分。数据开发部分为数据的预处理打好了一定的基础,在上层就可以通过拖拽的方式完成构建图表的工作。AirWorks 的 BI 模块提供了很强的交互能力和多变的查询模式,页面拖拽的方式能够给业务人员展示不同的指标,贴合数据分析的场景。一方面业务人员可以通过 BI 服务直接探索业务数据,另外一方面应用开发人员可以通过 BI 服务了解上层数据的特性,为应用层接入数据中台做好前期准备工作。
    图片
    API 服务:亚秒下亿级别的数据服务能力

    数据 API 服务提供了统一的数据服务总线,可以让用户低成本、快速发布 API 服务。用户操作时只需要关注 API 本身的查询逻辑,无需关心运行环境等基础设施。数据服务会准备好计算资源,并支持弹性扩展,实现低运维成本。用户可以在平台上进行接口测试调用,在完成 API 上线后,平台还能自动生成 API 文档。平台通过埋点的方式提供了统计面板,可以监测各接口的状态和每月接口的使用情况。

    在这一层 OLAP 计算引擎的技术选型上,熵简技术团队也经历了从关系型数据库,换到 Druid,再到现在的 ClickHouse 渐进的过程。当前 AirWorks 数据平台使用 ClickHouse 作为 APP 层的查询引擎,支持了 API 服务和 BI 服务。ClickHouse 是一个列式数据库,它在大数据领域没有走 Hadoop 生态,而是采用 Local attached storage 作为存储,整个 IO 没有 Hadoop 生态的局限性。在生产环境中它可以应用到相当大的规模,因为它的线性扩展能力和可靠性保障能够原生支持 Shard + Replication 这种解决方案。

    基于此引擎,数据 API 层对于亿级别的数据量提供压秒级别的实时分析能力,向 RMS、PMS 等上层业务系统提供统一高实时的大数据总线服务。
    图片

    05结语

    熵简数据团队通过打造 AirWorks 这样一个一体化、可视化的数据平台,覆盖数据中台的全生命周期管理

    一体化平台提供了强大的数据基础能力,满足了数仓的所有基础需求,支持常见数据源的数据同步,支持历史数据的批量/增量同步,支持亿级别大数据量的ETL数据加工。业务人员可以快速掌握可视化开发,脱离工程师实现自助式数据分析。数据资产管理方面,平台可以实现以用户为单位进行统一的资源权限管控;对各种资源,数据表、数据分析工作流、数据连接、调度资源进行管理。在数据应用方面,平台支持低成本构建 API 服务,帮助技术人员告别接口开发、鉴权开发,快速完成 API 的生成。同时业务人员仅需要拖拽,就可以完成自定义的图表生成,帮助用户进行数据的可视化表达。

    目前,熵简科技以资管数据仓库为基础,以 AirWorks 系统为一体化管理平台,已经为多家金融资管机构构建起企业级的数据中台体系,实现了从数据存储、数据资产管理、数据开发运维到数据服务的全链路场景,助力机构实现数字化转型。
    在这里插入图片描述
    关于熵简

    熵简科技是为中国金融资管行业提供数字化基础设施的专家型科技公司,依托大数据、云计算、人工智能等先进技术,打造全资产、全流程的端到端智能资产管理平台,助力金融机构数字化转型。
    “熵”是热力学中描述系统混沌程度的度量,“熵简”寓意使用智能化的方式简化业务数据化、数据资产化的复杂程度。
    熵简拥有全“清华系”创始团队,技术人员占比超85%,核心技术与底层引擎均坚持自主研发。
    截至2020年末,熵简已深度服务全国超50多家大型金融机构,助力其数字化升级。

    了解更多,请扫描下方二维码关注公众号「熵简科技在这里插入图片描述

    展开全文
  • 摘要:通过这个系列,让大家对中台的价值、针对的问题痛点、中台规划的方法思路和技巧、一些中台业务实践有个基本的认识,让客户清楚的意识到企业中台的业务价值,进而通过企业中台规划牵引客户IT基础设施投资。...
  • 王俊杰|从数字化战略到中台落地

    千次阅读 2021-12-02 00:29:34
    中台”这两年在大数据圈里颇为盛行,讨论度居高不下。作为大数据的下一风口,各大头部企业等都很重视,如今也渗透到各个传统行业。那么,l什么是中台?l我们为什么倡导做中台?l中台什么时候...
  • 业务中台的困境、及可能的解

    千次阅读 2021-06-29 16:10:50
    有一个事情已经困扰我很久了——大中、小前台作为战略已经提出很久了,在业界也掀起了不小的波澜,可是反观阿里的业务中台,为什么总觉得旁边有朵小乌云,感觉哪里不对劲。 业务中台小乌云 建一所房子,你要挖坑打...
  • 我优先选择了用HTML5+bootstrap组合来实现页面的美观效果,前端其他的任务交给javascript解决(这里我是完全使用原生javascript代码,没有用到任何的框架,因为考虑到手机加载网页的速度本来就慢,而且框架很多用不...
  • java上传文件大小限制

    千次阅读 2021-03-08 22:06:26
    win系统下解决ASP上传文件大小限制200K_电脑基础知识_IT/计算机_专业资料。win系统下解决ASP上传文件大小限制200K 解决ASP 上传文件大小限制 200K win2003 系统下的 ......介绍 上传 // 新建一个 SmartUpload 对象 ...
  • 我们谈论数据中台之前,我们也听到过数据平台、数据仓库、数据湖的相关概念,它们都与数据有关系,但他们和数据中台有什么样的区别,下面我们将分别介绍数据平台数据仓库数据湖和数据中台。相关概念数...
  • 一文读懂增强现实(AR)技术

    千次阅读 2021-04-17 00:22:45
    随着信息技术的高速发展,虚拟现实、增强现实等逐渐火热。虚拟现实是一种完全建立虚拟环境,让人类脱离现有环境进入新的世界,它的广泛应用可能还要经过一段时间的积淀,目前虚拟现实主要在科研仿真、...
  • 数据中台之数据血缘的具体实现

    千次阅读 2021-06-26 18:36:35
    如果采集后的血缘存储在mysql等传统数据,随着采集sql的增多很快会出现性能瓶颈,而且不易查询。所以本文基于hive hook和图数据库neo4j来实现数据血缘。基本思路是在hive的执行引擎操作完成之后利用hook进行拦截,...
  • 的实时数据中台解决方案,能够高效地解决智慧校园实施的基础数据问题。 教育行业信息化工作已经实施多年,南京秦淮区教委在这方面走在前列,并进行了大量尝试。 2018年4月教育部颁布了《教育信息化2.0行动计划》...
  • java解决限制访问指定url

    千次阅读 2021-04-24 17:36:53
    针对这个问题,做一点技术实现方案的总结 方案1:使用过滤器 这种方式最简单,对大多数程序员来说,也最容易实现,只需要在一个自定义过滤器,针对所有请求后端服务的url做拦截,对后端所有的URL进行分类,不同的...
  • 当用户访问系统时,通过IPFilter检查limitedIpMap是否存在当前IP,如果存在说明该IP之前存在过恶意刷新访问,已经被限制,跳转到异常提示页面;如果limitedIpMap 不存在则检查ipMap是否存在当前IP,如果ipMap...
  • 点击上方“小白学视觉”,选择加"星标"或“置顶”重磅干货,第一时间送达 本文转自|新机器视觉虚拟现实用到的五种定位追踪技术虚拟现实在仿真环境当使用者进行位置移动时,计...
  • 关注【冰河技术】微信公众号,第一时间阅读技术干货!!
  • 系统管理员已经限制你可以使用的登录类型(网络或交互式),请与系统管理员或技术支持联系获得协助以下为错误提示的截图或我的电脑不能被任何机器通过mstsc进行远程,远程点连接就报"系统管理员已经限制你可以使用的...
  • 此前由于半导体工艺等多方面技术限制,3D 感测很难应用到体积非常有限、功耗要求低的手机上,因此iPhone X 的发布是结构光技术的重大突破,市场对结构光技术的热情重新点燃。主要结构光方案厂商还有美国的英特尔、...
  • 深入理解分布式技术 - 容器化技术

    千次阅读 2021-02-11 20:58:08
    相比传统虚拟化技术,容器技术是一种更加轻量级的操作系统隔离方案,可以将应用程序及其运行依赖环境打包到镜像,通过容器引擎进行调度,并且提供进程隔离和资源限制的运行环境。 虚拟化技术 虚拟化技术通过 ...
  • 设计背景 当企业发展到一定规模时候有了不同的业务线以及数据规模,因为业务的快速发展。这个时候一些数据问题就会出现。 问题点 1:数据脏乱差,各部门生产线数据重复冗余,还不可... 这个时候数据中台也就应运...
  • 本章在考试一般出现3个选择题。 考点1:路由器技术指标 考点2:网络系统分层设计(上下级之比、核心层设计) 考点3:交换机技术指标(总带宽计算方法) 考点4:网络服务器性能(系统高可用性) 二、基于网络...
  • 一文详解车道线检测技术分析

    千次阅读 2021-02-21 00:00:00
    而神经网络更适合提取图像层面的特征,直接回归方程参数有较多限制。所以,网络推理输出后需要相对复杂的后处理去解决真实坐标的问题。 2.神经网络推理到哪一步? 图像分割方案倾向于像素点的分类,该像素点是否属于...
  • 这次是技术终面,说实话,我面试向来都是裸面,没有提前准备,我觉得有真才实学,就没有必要准备,平时有做积累什么的基本都不会有太大问题,更多是面试经验,这个可以在不断的面试过程去熟悉。 自我介绍 这个没...
  • 巩固web阶段知识,完成后台管理系统的课程管理模块,该模块包含了添加课程、配置课程相关信息、管理课程章节等功能。 项目地址:课程管理模块 产品的原型图 课程管理 实现以下功能: 展示课程列表 根据课程名和...
  • 本文重点关注面向防疫的5G巡检机器人技术与应用,首先探讨自主定位导航、多模态感知融合、集群任务分配和移动边缘技术四类前沿研究工作;然后以科大智能5G巡检机器人为应用案例阐述防疫机器人的实际应用场景;最后对...
  • 5、限制cpu时间周期 5.1 方式1 5.2 方式2 6、设置容器的权重 7、限制容器使用的cpu(指定使用第2第4个) 8、CPU配额控制参数的混合使用 二、内存资源限制 三、磁盘 IO 配额控制 1、创建容器并限制写速度 2...
  • TMS320F283xD中文技术参考手册之ADC

    千次阅读 2021-01-07 10:00:23
    TMS320F283xD中文技术参考手册之ADC 11. TMS320F28377D的ADC特征 11.1 ADC介绍 ​ 这里介绍的ADC模块是逐次逼近型(SAR)ADC,具有可选的16位和12位分辨率。ADC由一个ADC核心和一个外围包装器组成。ADC核心由模拟电路...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 323,840
精华内容 129,536
关键字:

中台技术限制