品牌名称
毕马威
企业规模
10000人以上

毕马威法国通过新的MongoDB数据湖进入云时代

171次阅读

不管你喜欢它还是讨厌它,“大数据”这个词在每个行业中都继续获得知名度和采用。不再只是互联网公司的专利,传统企业正在以几年前难以想象的方式通过“大数据”应用进行创新。

 

这方面的一个很好的例子是毕马威法国部署了一个基于 MongoDB 的数据湖来支持其名为Loop 的会计套件,并发布了其行业首创的财务基准服务——使毕马威法国的客户能够深入了解每个他们的业务确实表现出色。本着大数据的真正精神,该应用程序将真正超越传统数据管理技术的能力。我与毕马威法国技术服务部董事总经理 Christian Taltas 进行了交谈,以了解更多信息。

 

您能先介绍一下毕马威法国吗?

毕马威是全球最大的专业服务公司之一,在 155 个国家/地区以独立企业的形式运营,拥有 174,000 名员工。毕马威为企业、政府和非营利组织提供审计、税务和咨询服务。

 

毕马威法国为 65,000 名客户提供会计服务。我是毕马威法国的一家软件公司子公司毕马威技术服务公司 (KTS) 的董事总经理。KTS 开发了 Loop,一种完整的协作会计解决方案,供毕马威法国的注册会计师 (CPA) 及其客户使用。

 

请描述您如何使用 MongoDB。

MongoDB 是支持 Loop 会计套件的数据库,KPMG 的 4,800 名 CPA 使用它。该套件目前还与大约 2,000 名毕马威客户合作使用。我们预计在未来 18 个月内将有超过 20,000 名客户采用 Loop 的协作会计。

 

MongoDB 为会计套件提供哪些服务?

它为套件提供多种功能:

数据湖:来自我们客户业务系统的所有原始会计数据,例如销售数据、发票、银行对帐单、现金交易、费用、工资单等,都从 Microsoft SQL Server 中提取到 MongoDB。然后,我们的 CPA 可以访问这些数据以生成客户的 KPI。我们为客户开发的一项独特功能是财务基准测试。我们可以使用 MongoDB 数据湖中的数据,让我们的客户能够将他们的财务业绩与在指定地理区域内的相同行业运营的竞争对手进行比较。他们可以比较工资水平、费用、利润、营销成本——实际上几乎所有的财务指标——以帮助确定他们与在相同行业、地区和市场运营的其他公司的整体市场竞争力。MongoDB 数据湖使我们能够管理大量结构化、半结构化和非结构化数据,我们可以针对这些数据运行支持高级分析和商业智能仪表板的临时和预定义查询。我们不断向数据湖加载新数据,同时支持数千个并发用户。

 

元数据管理:- 我们会计套件的另一个独特功能是能够根据他们想要跟踪的特定标准为每个客户定制报告。例如,与建筑公司相比,连锁餐厅对不同的指标感兴趣。我们通过为每个客户创建一个独特的架构来启用这种自定义,该架构继承自标准业务应用程序架构,然后写入 MongoDB。它存储每个客户的模式类,然后在生成帐户和报告时在运行时应用这些类。Loop 应用程序被设计为一个实时生成报告的业务框架,运行在 Node.js 之上。MongoDB 正在帮助我们管理整个应用程序代码库,以便根据每个用户的角色和配置文件为其提供正确的模式和应用程序业务模块,即:簿记员,注册会计师,销售主管。这是一个非常强大的功能,由 MongoDB 文档数据模型的灵活性支持,我们无法使用传统关系数据模型强加的约束来实现。

 

缓存层:用户体验至关重要,因此我们使用 MongoDB 作为高速层来管理用户身份验证和会话。

 

日志层:我们还使用 MongoDB 来存储所有 Loop 应用程序每天的数百万个客户端请求。这使我们能够在日志之上构建 Tableau 报告,以解决每个用户会话以及遍布法国的 220 个地区毕马威站点的生产性能问题。我们正在使用适用于BI的MongoDB 连接器在 Tableau 中生成这些报告。

 

你为什么选择MongoDB?

当我们在 2012 年开始开发时,我们知道我们需要模式灵活性来处理会计套件需要存储和处理的数据结构中的大量差异。这一要求使传统关系数据库无法处理缓存、元数据管理和 KPI 基准计算。当我们探索不同的 NoSQL 选项时,我们担心通过运行单独的缓存和数据库会使我们的架构过于复杂。然而,在性能测试中,MongoDB 提供了服务于这两种用例的灵活性和可扩展性。它优于我们测试的 NoSQL 数据库和专用缓存,因此我们决定围绕 MongoDB 构建我们的平台。

 

由于我们的会计套件是基于 JavaScript 构建的,JavaScript 应用程序和数据库之间的紧密集成也是帮助我们加快开发周期的重要优势。

 

去年我们在开发新的金融基准服务时,我们评估了 Microsoft 的 Azure Cosmos DB(注意,当时它被称为 DocumentDB),但 MongoDB 提供了更丰富的查询和索引功能。我们还考虑在 Hadoop 上构建基准分析,但 MongoDB 的架构加上聚合管道的强大功能为我们提供了一个更简单的解决方案,同时提供了我们需要的数据湖功能。MongoDB 3.2 中提供的聚合增强功能,尤其是$lookup 运算符的引入,是我们技术决策的关键。

 

您能描述一下您的 MongoDB 部署是什么样的吗?

缓存层和元数据管理都运行在专用的三节点副本集上。这为会计套件提供了容错能力,以确保始终可用。元数据主要是只读的,而缓存层提供混合读/写工作负载。

 

数据湖部署为分片集群,处理来自客户业务系统的大量数据负载,同时提供复杂的分析查询并向 CPA 报告。

 

从我们自己的数据中心迁移后,我们正在 Microsoft Azure 云中的 Windows 实例上运行 MongoDB。我们需要确保我们能够满足应用程序的可扩展性需求,而云是一个更好的地方,而不是投资于我们自己的基础设施。

 

您如何支持和管理您的部署?

我们使用 MongoDB 的完全托管数据库MongoDB Atlas,并且可以从 MongoDB 工程师那里获得 24x7 的主动支持。我们最近还使用了来自MongoDB 咨询服务的 Production Readiness 包。

 

云数据库服务、专业服务和技术支持的结合证明是无价的:

  • MongoDB 顾问审查了我们的运营流程和 Azure 部署计划,他们能够从中提供指导和最佳实践,以在不中断业务的情况下执行迁移。他们还帮助我们制定了运营手册,以将未来的最佳实践制度化。

 

  • MongoDB Atlas将 MongoDB 实例的配置和供应自动化到 Azure,我们现在依靠它来处理持续的升级和维护。只需在 UI 中单击几下,我们就无需开发自己的配置管理脚本。

 

  • MongoDB Atlas 还提供有关 MongoDB 数据库运行状况的高分辨率遥测,使我们能够在任何问题影响 CPA 之前主动解决这些问题。

 

  • 数据完整性显然是我们业务的关键,因此 Atlas 在为我们的数据湖提供连续备份方面非常宝贵。我们自己评估了管理备份,但最终由 MongoDB 为我们管理它作为通过 Atlas 提供的完全托管备份服务的一部分更具成本效益。

 

作为迁移到 Azure 的一部分,您还迁移到了最新的 MongoDB 3.2 版本。你能分享一下升级的结果吗?

一个词——可扩展性。随着MongoDB 3.2现在使用 WiredTiger 作为其默认存储引擎,我们可以在更低的硬件占用空间上实现更高的吞吐量和可扩展性。

 

目前,会计套件支持近 7,000 名内部和外部客户,其中一半人每个工作日平均连接 5 小时。但我们计划在未来 18 个月内将其推广到 20,000 名客户。我们已经能够针对我们的开发集群对套件进行负载测试,并且 MongoDB 已经扩展到当前会话、分析和数据量的 5 倍,完全没有问题。WiredTiger的文档级并发控制和存储压缩是这些结果的关键。

 

您对 Loop 会计套件有什么未来计划?

我们希望自动化更多的基准测试,并支持进一步的数据探索,为我们的客户构建预测分析模型。这将使我们能够针对历史数据提供基准,并评估未来可能的业务成果。我们计划针对我们的 MongoDB 数据湖使用 Azure 机器学习框架。

 

您如何衡量 MongoDB 对您业务的影响?

我们估计,通过为会计套件选择 MongoDB,我们的上市时间至少比使用任何其他非关系数据库快 50%。与 JavaScript 的紧密集成、灵活的数据模型、开箱即用的性能和复杂的管理平台都是提高开发人员生产力和降低运营成本的关键。

 

会计套件的财务基准服务是一种高度创新的应用程序,它为毕马威法国提供了显着的竞争优势。我们可以访问大量客户信息,这些信息可以通过我们基于 MongoDB 构建的数据湖进行操作。它使我们能够以成本有效的方式存储数据,同时支持丰富的分析,以提供其他会计实践无法比拟的洞察力。