如何使用MongoDB Atlas使你的CRM更有效率

106 阅读6分钟

如何使用MongoDB Atlas使你的CRM更有效率

作为数字化转型的一部分,许多公司希望优化其内部业务流程,对重要的业务指标获得更多的可见性,并创建新的自动化程序。数据始终是业务流程和指标的核心,而大多数关键业务数据往往位于一个或几个存储库中,如客户关系管理系统(CRM)。

历史上,商业用户一直依赖电子表格和企业数据仓库来汇集数据并做出决策。这些解决方案的范围可以从一组不连贯的仪表板到一个全能的中央控制台。但是,需要快速行动的企业需要快速迭代他们的数据和流程,如果在CRM中实施一个变化需要几个月,或者如果这些事情是在电子表格中手动完成的,他们就无法做到这一点。

本文介绍了MongoDB专业服务部门如何创建一个内部解决方案来解决这些问题。

我们的方法

在MongoDB专业服务部,我们也需要精简业务流程,摆脱电子表格的业务管理,特别是收入预测。随着组织的发展,与电子表格维护相关的手工劳动量变得难以维持,而且对数据的理解变得更加困难,特别是当数据可能不一致、陈旧,甚至不准确的时候。

通常情况下,一个好的CRM或专业服务自动化(PSA)系统可以帮助解决这个问题。例如,在MongoDB,我们使用Salesforce,它提供了体面的灵活性,但也需要大量的定制,并且有局限性。

我们也看到MongoDB的客户通过在MongoDB Atlas中建立ETL管道来解决这个问题,并利用MongoDB灵活的模式、查询语言和聚合框架以及Atlas搜索的优势。来自源系统的数据被原样摄取或重新映射以创建一个单一的视图。

然而,我们发现最好的方法是针对数据的消费方式来优化模式,文件的不同部分可能来自不同的源系统。Atlas App Services提供了一个无服务器抽象层,允许对模式进行精细但灵活的控制,以帮助你避免冲突并在不破坏兼容性的情况下进行迭代。

在考虑了其他方案后,我们创建了一个内部CRM/PSA增强系统,该系统建立在MongoDB Atlas平台之上,为我们提供了额外的能力和灵活性。这个解决方案允许专业服务部门迅速提供高级功能,如收入预测、自动化和对复杂业务指标的可见性。该解决方案还允许专业服务部解决业务系统的需求,并及时对变化做出反应,其功能超出了其他系统通常提供的功能。

MongoDB的内部解决方案,其核心是无服务器和以数据为中心,利用Atlas App Services功能和触发器来处理数据,并利用Atlas Search进行全文搜索。它使用Connector for BIAtlas GraphQL APIApp Services电线协议以及Atlas Functions来访问和操作其他组件的数据。它的组件包括一个基于React的控制台应用程序、Atlas图表、Tableau仪表盘、Google Sheets以及用于数据导入和整合的微服务。

Screenshot of Responsive React Application on MongoDB Atlas with Atlas full-text search

我们内部解决方案控制台的项目视图。

Screenshot of Responsive React Application on MongoDB Atlas with dynamic table UI

我们内部解决方案控制台中的收入预测模块:

Screenshot of a Custom dashboard using MongoDB Charts

MongoDB图表显示业务指标。

解决方案架构

我们内部解决方案的数据架构建立在单视图方法和数据集市概念之上。其主要思想是,从Salesforce和其他系统中摄取相关数据,充实它,并在此基础上快速构建,如下图所示。

Diagram of MongoDB tools working with external products such as salesforce and tableau to create a data architecture

我们遵循以下八个关键原则来帮助实现这一功能:

  1. 专注于以对业务最有意义的形式引入数据。并且,在使ETL简单化和为预见的应用案例进行优化之间找到适当的平衡。
  2. 在ETL过程中应用转换,使输入的数据变得直观,包括文档层次结构、字段名和数据类型。
  3. 以数据生产者和消费者的角度明确定义数据生命周期。数据生产者只能覆盖他们 "拥有 "的文档和字段--而且只能是这些。例如,来自源系统的ETL流程应该根据需要覆盖MongoDB文档中的数据,但它应该只修改那些真正来自管道的字段。
    1. 旨在对MongoDB文档进行结构化处理,使其明确哪些字段是由什么生产者拥有。
    2. Atlas应用服务模式和规则可以帮助确保最关键的文档和字段被正确访问和修改。
  4. 在应用程序和服务中使用Atlas函数App服务的线程协议,而不是直接连接到Atlas实例。
    1. 这使我们能够在控制台中使用谷歌SSO,当我们需要从应用程序中进行常规CRUD操作时,不需要任何复杂的安全机制。
  5. 对于复杂的数据逻辑和即时计算,使用App Functions
  6. 使用数据库触发器来传播变化和生成数据驱动的事件。使用计划触发器来生成聚合视图和定期工作。
  7. 使用外部服务与外部世界进行通信(例如,电子邮件发送者、ETL工作)。
    1. 外部服务通过监听来自各自命名空间(pub-sub模型)的变化流而被异步调用。
    2. 所有的外部服务都是相互独立工作的。
  8. 不要过度思考。MongoDB Atlas的开发者数据平台提供了很多灵活性,如果遵循这些原则,对一个工作系统进行修改和迭代就会出奇的容易。

重申最后一点,由于MongoDB中灵活的模式概念和外部组件的独立性,我们的内部解决方案很容易修改和扩展。用户可以通过现有的工具和集成来访问数据,开发人员可以更新系统的特定部分或引入新的部分而不拖延,这使得这个解决方案在成本和精力方面都很高效。

结论

通过这个内部解决方案的例子,我们证明了通过全力利用MongoDB Atlas,你可以在常规系统所能做到的基础上,以速度、效率和健壮性解决看似棘手的业务问题。无论你是在优化公司的业务流程,建立业务仪表盘,还是提高自动化程度,MongoDB Atlas开发者数据平台都可以帮助你更轻松地完成这个过程。