汇丰银行从65个关系数据库迁移到一个全球MongoDB数据库 - diginomica


汇丰商业银行的数据设计师Narasimha Reddy本周在Live上发表讲话,解释了该组织如何通过从65个关系数据库迁移到MongoDB的一个全球实例中来简化其应用程序交付方法。
汇丰银行是全球知名度最高的银行和金融服务组织之一,业务遍及60多个国家,为4000万客户提供服务。但是,随着这种规模的发展,运营的复杂性将大大提高,尤其是在银行如何交付其应用程序和数据模型方面。
汇丰银行在世界上大多数运营国家/地区都运行相同的应用程序。但是不可能在所有国家/地区仅运行一个版本的应用程序。每个国家都有自己的定制,以履行其本地或区域职能和运营。当然还有法规要求。
这使得在关系数据库世界中无法维护一个应用程序版本和一个数据模型
因此,我们最终将拥有不同的代码库。众所周知,数据模型驱动着大多数系统设计。因此,在使用关系数据库时,我们最终在每个国家/地区都有一个相同的数据模型,但却不可能维护应用程序的统一版本。
现实中,HSBC确实具有一个应用程序核心程序环境,该环境具有应用程序的大部分核心功能。但是由于数据模型和数据库的差异,它无法在所有国家/地区都运行单一程序环境。
因此,必须将特定于国家/地区的程序环境置于应用程序的核心环境之上,才能满足每个国家/地区的特定应用程序需求。因此,当任何国家/地区的用户访问该应用程序时,它最终都会拥有自己的执行路径。然后,特定国家的计划环境和核心计划环境将一起访问特定国家的数据库并处理应用程序。
这是因为每个国家/地区都有自己的功能,字段,业务逻辑接口,数据规则,数据生命周期和数据访问控制。这样,如果对数据模型进行调整,则程序环境将与更改后的数据模型不兼容,因此必须建立新的程序环境。
汇丰银行现在有了新的体系结构。现在,它在全球范围内都有运营国使用相同的应用程序,但是资源的使用有所减少。现在,它已成为所有国家/地区的一个服务环境,一个数据库和一个执行路径。由于MongoDB的文档模型以及使用子文档将每个国家/地区的所有不同表要求映射到一个集合中的能力,因此使之成为可能。使用特定国家/地区的标识符将所有内容简化为一个集合。
应用程序将内置每个国家/地区的本地要求,但不再需要维护单独的数据模型或单独的数据库。可以使用MongoDB JSON模式模型轻松设计全局数据模型和数据库。这将来自所有运营国的数据整合到一个数据库中,该应用程序只能在一个数据库上运行。这大大减少了资源和维护成本。
另一个好处是使用相同的数据库进行全局数据分析和报告。我们不需要转换为另一个数据模型或另一个数据库来运行该特定数据的分析和报告。所有这些都大大节省了资源和​​成本。
使用MongoDB时,当数据库没有架构且提供强大的查询和索引功能时,我们将驱动数据模型设计,而不是依赖数据库本身存储过程等强大功能。

(banq注:将不同国家系统视为不同有界上下文,或可租赁空间)