MongoDB 通过灵活的数据集成、内置安全性和可扩展的金融服务为开放式金融提供支持。
使用案例: 应用程序驱动分析
行业: 金融服务
产品和工具: 聚合管道、MongoDB Atlas
解决方案概述
开放金融正在改变金融业,实现银行、金融科技公司和第三方提供商之间的无缝数据共享。然而,在整合各种金融数据的同时确保安全性、合规和可扩展性仍然是一个重大挑战。 MongoDB通过以下方式为开放金融奠定了基础:
灵活的文档模型
原生JSON支持
强大的聚合框架
这些功能使机构能够统一多个来源的数据,确保安全合规的数据管理,而无需传统关系数据库的复杂性。

图 1. 基于 MongoDB 的开放式金融应用程序
参考架构
该解决方案演示了一个允许用户安全连接外部银行账户的银行应用程序。
用户发起连接其外部银行账户的请求。此操作需要明确的用户同意,以确保安全性并合规PSD2 等法规。为了进行身份验证,该应用程序会模拟 OAuth 2.0 并生成令牌,以启用机构之间的安全通信。
获得授权后,应用程序会使用 API 与外部银行进行通信。这些银行通过其微服务公开账户、交易和余额等财务数据。响应采用JSON格式,确保兼容性和无缝数据交换。
然后,该应用程序将财务数据推送到MongoDB Atlas。通过文档模型, MongoDB可以处理来自不同银行的不同数据结构。然后,该应用程序可以使用聚合管道来分析和丰富数据,为用户提供整体财务视图,同时使银行能够提供个性化的财务见解。
图2.开放金融架构图
数据模型方法
在此解决方案中,数据模型模拟现实世界中的财务数据集成。这种方法利用文档模型的灵活性来处理来自不同金融实体的不同数据结构。
组件
Collection | 说明 | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 存储持有者令牌,应用程序使用这些令牌对外部存储体的API请求进行身份验证和授权。 | ||||||||||||||||||||
| 存储用户关联的外部银行账户信息。 | ||||||||||||||||||||
| 存储与用户关联的金融产品(例如贷款和抵押贷款)的信息。 |
在现实应用程序中,这些集合将涉及更复杂的安全机制和详细信息。每个金融实体都有自己的数据模型定义。
- 数据映射与关系
- 该应用程序稍后需要强大的数据映射和关系,以将来自不同金融实体的不同数据模型转换为统一格式。
- 安全性与合规性
- 应用程序必须确保数据安全并合规法规,例如一般数据保护法规 (GDPR)、PSD2 和其他当地金融法规。这包括加密、访问权限控制和Atlas 审核跟踪。
- 可扩展性和性能
- 应用程序需要一个可以有效处理大量数据的数据模型,同时考虑索引、分片和性能优化。
- 集成和互操作性
- 该应用程序实现的 API 和微服务可与各种外部系统集成,确保互操作性和实时数据交换。
借助文档模型的灵活性,该解决方案演示了金融机构如何统一和管理不同的数据源。生产级实施需要解决现实世界金融数据集成的复杂性和细微差别。
构建解决方案
此解决方案可通过两个 GitHub 存储库获取:
解决方案后端
有关解决方案后端的详细信息,请参阅后端 GitHub存储库。提供开放金融演示存储库。它展示了如何与第三方银行集成和安全数据交换。 MongoDB充当中央数据存储。
要构建解决方案,请完成以下步骤:
前端解决方案
GitHub 上的前端存储库提供了此解决方案的用户界面。这些组件被设计为微服务。用户界面存储库充当主中心,提供所有集成服务的概述。
关键要点
作者
Luis Pazmino Diaz, MongoDB
Ainhoa Mugica,MongoDB
Julian Boronat,MongoDB
Andrea Alaman Calderon, MongoDB