参考IEEE规范,华为公司给出了数据服务的定义。数据服务是基于数据分发、发布的框架,将数据作为一种服务产品来提供,以满足客户的实时数据需求,它能复用并符合企业和工业标准,兼顾数据共享和安全。
数据服务和传统集成方式有很大区别,数据的使用方(不仅仅是IT系统人员,也可以是具体业务人员)不再需要点对点地寻找数据来源,再点对点地进行数据集成,从而形成错综复杂的集成关系,而是通过公共数据服务按需获取各类数据。
1. 数据服务给企业带来的价值
数据服务给企业带来了如图所示的价值。
![](https://i-blog.csdnimg.cn/blog_migrate/9157cf27d37080811428b7e851325be7.png)
1)保障“数出一孔”,提升数据的一致性。通过服务获取数据的
方式类似于“阅后即焚”,大部分情况下数据并不会在使用方的系统中落地,因此减少了数据“搬家”,而一旦数据的使用方并不拥有数据,就减少了向下游二次传递所造成的数据不一致问题。
2)数据消费者不用关注技术细节,可以满足不同类型的数据服务需求。对于数据消费者而言,不用再关心“我要的数据在哪里”,例如用户不需要知道这些数据来自哪个系统、哪个数据库、哪个物理表,只需要清楚自身的数据需求,就能找到对应的数据服务,进而获取数据。
3)提升数据敏捷响应能力。数据服务一旦建设完成,并不需要按使用者重复构建集成通道,而是通过“订阅”该数据服务快速获取数据。
4)满足用户灵活多样的消费诉求。数据服务的提供者并不需要关心用户怎么“消费”数据,避免了供应方持续开发却满足不了消费方灵活多变的数据使用诉求的问题。
5)兼顾数据安全。所有数据服务的使用都可管理,数据供应方能够准确、及时地了解“谁”使用了自己的数据,并且可以在数据服务建设中落实各种安全措施,确保数据使用的合规。
2. 数据服务建设策略
数据服务建设过程中,首先应该在企业层面制定统一的数据服务建设策略,如图6-6所示。这个策略不能只关注数据服务的设计,而应该覆盖全生命周期的各个环节。
1)要制定数据服务建设的方法,确保每个从事数据服务建设的人都明白数据一致性的要求,并且所提供的数据是可信的和清洁的。
2)要建立数据服务流程,以确保各个环节的有效协同,定义整个生命周期中每个角色的责任和有效输出。在企业中,应该有明确的部门负责数据服务流程的建设和看护,一方面要确保所制定的流程能够在实际工作中落地,另一方面随着技术的演进和企业业务环境的变化,持续对流程进行优化和完善。
3)要构建统一的数据服务能力中心,负责数据服务建设方法、规范、流程的落地,数据服务不同于传统集成方式,因此应该有统一的平台提供能力保障。
在数据服务建设中,应该为各个供应方树立统一的标准,并将这些标准以规范的形式进行固化,使所有数据服务建设都遵循同样的标准。
1)数据服务要满足可重用性、减少数据“搬家”。
数据服务在实际或者可预见的时间范围内会被多个需求方消费。数据服务面向场景进行消费时,无须重复落地。
2)服务提供方在规划服务时应明确服务的用户是谁,并针对用户的场景和需求进行服务设计,同时定义SLA服务水平承诺。
-
服务要有业务Owner,业务Owner负责组织业务和IT一体化团队,主动进行服务规划和设计。
-
服务规划和设计人员在规划和设计任何服务时,都应考虑到服务可能会被重用。
-
服务规划需考虑价值,并优先对高价值的服务进行投资。
-
服务消费方应对服务提出改进需求,促进服务能力的持续提升。
3)应用只能通过服务接口向其他应用开放其数据和功能,服务接口要稳定,应用间的通信也必须通过这些服务接口进行。需要说明的是,应用如果需要向其他应用开放其数据和功能,只能通过服务接口,服务接口应该易理解、易使用,达到服务市场准入标准。
4)所有的服务需在统一的服务管控平台中进行注册和发布。
需要说明的是,华为公司的IT服务(HIS)负责提供服务管控平台的注册和发布功能,通过HIS可查询到发布的所有服务。
5)应根据不同场景选择合适的服务化架构粒度。
需要说明的是,服务化要采用合适的架构粒度,不是越“微”越好,也不是越“灵活”越好。