【问题标题】:What is the correct Microsoft Azure technology for storing and searching "dynamic" data?存储和搜索“动态”数据的正确 Microsoft Azure 技术是什么?
【发布时间】:2014-05-14 07:02:12
【问题描述】:

背景

我正在为特定行业利基构建一个多租户(大约 100 个付费客户)客户关系管理应用程序。 CRM 将存储有关我的客户的潜在客户和客户(或者更确切地说,联系人)的数据。将存储的数据将是已知/标准数据(ID、姓名、地址、电话等)和每个客户端定义的可配置/动态数据的组合。换句话说,将有一个“表单构建器”允许我的客户添加有关每个联系人的更多数据。此外,他们需要能够从遗留系统中导入标准数据和动态数据。关键要求:除了搜索“标准”数据外,客户还应该能够搜索“动态”数据以找到与查询匹配的内容,甚至可以创建包含/汇总/按此动态数据分组的报告。

我更喜欢使用 Microsoft Azure,因为我是一名 C# 开发人员,并且对用户界面有些熟悉,即使我对 Azure 提供的所有工具都没有广泛的经验。

问题

我希望使用反射发射来创建代表具有标准和动态属性的联系人的动态类实例,然后将这些实例序列化为 JSON 和 Azure Blob。但是,我通过几个 Stack Exchange 线程阅读了这些线程,您无法搜索存储在 Blob 中的 JSON 数据(至少效率不高)。

问题

存储和搜索动态数据的正确 Microsoft Azure 技术是什么?是否有现有的模式/方法可以让我存储这个“扩展”数据,让我可以搜索它,并让我可以毫不费力地将它反序列化回 POCO?

或者,除了对 C# 友好的 Microsoft Azure 之外,还有更好的工具来完成这项工作吗?

【问题讨论】:

    标签: json azure-blob-storage document-database


    【解决方案1】:

    查看以 JSON 格式存储数据的 Azure 文档数据库。

    http://azure.microsoft.com/en-us/services/documentdb/

    http://weblogs.asp.net/scottgu/azure-new-documentdb-nosql-service-new-search-service-new-sql-alwayson-vm-template-and-more

    如果这不起作用,您可以在 Linux VM 上启动 ElasticSearch 或 MongoDB 以将动态数据存储为 JSON。

    【讨论】:

      【解决方案2】:

      发布此问题一年后,答案现在很清楚。正确的技术是 DocumentDb。正如这篇 ScottGu 帖子所解释的,它可以与静态和动态类型一起使用:

      http://weblogs.asp.net/scottgu/azure-new-documentdb-nosql-service-new-search-service-new-sql-alwayson-vm-template-and-more

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-01-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-10-15
        • 2010-12-23
        • 2010-12-21
        相关资源
        最近更新 更多