【问题标题】:Windows Azure Application high volume of records insertionsWindows Azure 应用程序大量记录插入
【发布时间】:2013-11-18 15:27:26
【问题描述】:

我们打算开发一个基于Azure平台的基于Web的应用程序,虽然我有一些基本的了解,但仍有很多问题

我们要开发的应用程序会有大量的数据库交互,每天需要插入大量的记录。

这里与数据库交互的最佳方式是通过队列(即工作角色,然后工作角色读取队列并将数据保存在数据库中)或直接到 SQL 服务器?

它应该是多租户应用程序吗?

【问题讨论】:

    标签: windows azure azure-sql-database multi-tenant


    【解决方案1】:

    我已经玩了一段时间的 windows azure SQL 数据库,这是我写的关于插入大量数据的博客文章

    http://alexandrebrisebois.wordpress.com/2013/02/18/ingesting-massive-amounts-of-relational-data-with-windows-azure-sql-database-70-million-recordsday/

    我的方法如下:插入/更新数据我使用了以下数据流

    ◾将您的数据拆分为大小合理的数据表 ◾将数据表存储为 Windows Azure Blob 存储服务中的 Blob ◾使用 SqlBulkCopy 将数据插入写入表中 ◾一旦写入表中的记录达到合理数量,使用合理大小的批次将记录合并到读取表中。根据读取表上存在的复杂性和索引/触发器,批次应该在 100000 到 500000 之间。 ◾在合并每个批次之前,请务必通过仅保留最新记录来删除重复项。 ◾一旦一个批次被合并,从写表中删除数据。保持这个表相当小是非常重要的。 ◾一旦你的数据被合并,一定要检查你的索引碎片。

    ◾Rince & 重复

    【讨论】:

    • 您好,非常喜欢您的详细博客,可能会基于它进行 POC,想知道是否有其他方法可以做到这一点?
    • 到目前为止,这是我获得最佳结果的方式。如果您找到更好的方法,我很想知道它。我也愿意讨论,所以请直接在 twitter 上联系我,我很乐意提出意见。
    猜你喜欢
    • 2010-11-01
    • 2015-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-14
    • 2022-11-27
    • 1970-01-01
    • 2016-02-09
    相关资源
    最近更新 更多