谈现代数据治理系统的十大架构特征
最近一位老友找到我,咨询他的数据治理平台到底该不该换,背景是这样的:若干年前采购了一个市场主流的数据治理平台,功能大概就是数据治理三件套——标准、元数据和质量等经典数据治理的功能。现在企业要信创,该平台无法支持上云、新数据库等诉求,原厂也不再提供升级支持。这位朋友考虑到动迁成本以及多年累积的付出,犹豫是否再缝缝补补凑合一阵子。
这种情况在市面上还是比较普遍的,经常有某客户抛弃老平台,重新采购新系统的案例。(这点不得不说,相比于西方企业市场,我国企业的外购系统的生命周期明显偏短的,具体个中原因暂且不表)。如果您也是正在做类似平台的选型,除了关注功能,更要关注到基础架构层面,那才是工具长期可持续的保证。
作为一家专业的数据治理产品提供商,在最近发布的Datablau产品7x版本的研发中,我们也一直在探索,如何让产品在企业运营中可持续发展,如何保护客户的投资,如何让产品在客制化和标准化之间平衡,并保持持续的升级能力。这里结合我们的实践,谈一谈现代数据治理平台,具备的十大架构特性,供您参考。
基础架构特征(上)
现代应用程序架构的特征反映了当前技术的发展趋势和业务需求的变化。随着云计算、容器化、微服务、人工智能等技术的普及,应用程序的架构也变得更加复杂、灵活、可扩展和高效。以下是现代数据治理平台架构的一些主要特征:
1.微服务架构
微服务架构(Microservices Architecture)是一种将应用程序分解为一组小的、独立的服务架构模式。每个服务都围绕一个特定的业务功能构建,能够独立部署、扩展、开发和维护。
特征:
· 高度的模块化,每个服务独立运行,且可以使用不同的技术栈。
· 独立部署、扩展和更新。
· 服务之间通过API通信。
微服务是云化时代软件架构的基本特征,数据治理平台的早期版本功能是单一的,大多是个前后端一体的单体应用程序。随着企业数据量增加和数据管理活动的细化,已经演化为一个复杂的应用程序,它包含了多个数据治理功能域,如标准、元数据、质量、安全、资产等,与数据领域的生态系统,如数据开发、服务、BI、分析等都有了集成应用。所以现代数据治理系统已经是一个贯穿开发,投产,生产三个环节的,一个企业级的综合数据治理平台。
微服务架构让这个平台更容易云化,实现高可用,生态集成,在大数据量下提高负载能力和稳定性。当然微服务的粒度是个架构哲学问题,把握应用与分工的平衡性非常重要。在Datablau平台中共有20个左右的微服务,涵盖了原子的业务模块和公共的服务模块和基础设施模块等。
图1《Datablau平台微服务架构》
2.API驱动架构
开放API成为现代应用程序架构的核心。应用程序通过RESTful API、GraphQL或gRPC等接口进行服务交互和数据交换。这种架构使得系统能够与外部系统进行集成,并且提供灵活的通信方式。
特征:
·标准化的接口,简化服务间的通信。
·支持跨平台访问和异构系统的集成。
·API文档(如OpenAPI)成为接口规范的重要部分。
正如在《Datablau平台微服务架构》所述,早期的应用系统用JSP这种前后一体程序构建,虽然开发调试成本低,但是带来了耦合性和封闭性的弊端,所以现代软件平台必须是API驱动的前后分离的。
3.事件驱动架构(EDA)
事件驱动架构基于事件的触发和响应进行工作。应用程序中的事件(如用户行为、系统变化等)会引发一系列的操作和流程。这种架构适用于高并发、异步处理和实时响应的场景。
特征:
·异步处理和消息队列(如Kafka、RabbitMQ)用于事件的传播和处理。
·支持实时数据处理和流处理。
·提高系统的解耦性和可伸缩性。
Datablau产品中主要通过Kafka建立多服务的信息同步通道,记录跨服务的日志和对象状态同步,保证多服务间的事务最终一致性。参考上图《Datablau平台微服务架构》。
4.API网关和服务中心
API网关:用于处理和管理客户端请求,负责路由、负载均衡、认证、日志等功能。API网关通常作为所有微服务的入口点。
服务中心:服务中心是一个基础设施层,提供微服务之间的通信、监控、安全和管理功能,通常与容器化和Kubernetes集成。
特征:
·简化客户端与后端微服务的通信。
·提供流量控制、负载均衡、故障恢复、认证授权等功能。
·支持微服务之间的可靠通信和可观测性。
Datablau产品中主要通过Gateway建立API路由通道,管理微服务的入口点,进行多服务的系统集成和参数配置。参考上图《Datablau平台微服务架构》。
5.用户体验(UE)
现代应用程序对用户体验(UE,User Experience)的要求比以往任何时候都更为严格和复杂。随着互联网和移动应用的普及,过去工业化风格的UI已经无法被习惯好的UE体验的用户所容忍。作为一个数据管理应用,其用户也跨出了数据管理人员的范围,更多角色包括业务侧人员的加入,让好的UIUE已经成为衡量数据治理平台是否更容易推广的重要指标之一。
专业的UIUE是一个专业的领域,主要的内容包括简单直观的界面,减少学习成本、功能流畅等,现代的数据治理平台在此基础上更加强调:
智能化体验:随着人工智能和机器学习的普及,现代数据治理平台不仅仅是工具,还需要通过智能化功能提升用户体验和工作效率。例如:智能推荐、自动化建模等智能功能,可以大大提升用户的交互体验。
互动性体验:主动元数据治理(Active Metadata Management)是近年来流行的数据治理方法,数据治理平台需要有主动驱动的功能支持,在数据设计与加工过程中,通过通知、互动、联动等智能化方式,达到第一时间进行数据治理的目的,事半功倍。
图2《Datablau元数据平台界面》
小结
以上介绍了一个现代数据治理平台,应该具备的基础软件架构,它保证了应用程序的云化能力、开放性和易用性等核心的架构能力。那么作为数据领域的应用,还需要一些高级的架构特性,来应对大数据量,迭代迅速的数据工具生态、成本效益考量等核心问题。
下篇文章继续分享《数据新时代:如何选择现代数据治理平台(下)》,详细介绍现代数据治理平台的高级架构特征。