Azure 中具有大字段的行的高效存储
Efficient Storage of rows with large fields in Azure
目前正在为将存储大量记录并且每条记录都有一个包含几千个字符的字段的应用程序构建基础 POC 体系结构。
例如
表格ID 整型
字段 1 nvarchar(50)
字段 2 nvarchar(50)
Field2 nvarchar(MAX)
这一切都托管在 Azure 中。我们有一个 webjob 负责获取数据并将其填充到数据存储中,然后另一个 webjob 定期访问并处理数据。
目前数据仅存储在 Azure SQL 数据库中。我只是担心一旦记录数变成数百万,以这种方式 store/process/retrieve 数据的效率将非常低。
需要有关将其存储在 Azure 中的最佳方法的建议。想要开始尝试这样一个事实,即我们将行保留在 Azure SQL 中,但是大字段的数据被推送到另一个存储库(例如数据湖、DocumentDB),并且有一个对 SQL 记录的引用,因此SQL 调用仍然很少,大数据存储在其他地方。这是一个干净的庄园,还是我完全错过了什么?
Azure Table 存储可以帮助解决这个问题——它是一个 NoSQL KeyValue 存储。每个实体的大小不得超过 1MB。您也可以使用单个 blob。有一个设计指南,其中包含如何设计 Table 扩展存储解决方案的完整说明 - 包括使用 Table 存储以及其他存储库的模式,请参阅 Table Design Guide
https://azure.microsoft.com/en-us/documentation/articles/storage-table-design-guide/
目前正在为将存储大量记录并且每条记录都有一个包含几千个字符的字段的应用程序构建基础 POC 体系结构。
例如 表格ID 整型 字段 1 nvarchar(50) 字段 2 nvarchar(50) Field2 nvarchar(MAX)
这一切都托管在 Azure 中。我们有一个 webjob 负责获取数据并将其填充到数据存储中,然后另一个 webjob 定期访问并处理数据。
目前数据仅存储在 Azure SQL 数据库中。我只是担心一旦记录数变成数百万,以这种方式 store/process/retrieve 数据的效率将非常低。
需要有关将其存储在 Azure 中的最佳方法的建议。想要开始尝试这样一个事实,即我们将行保留在 Azure SQL 中,但是大字段的数据被推送到另一个存储库(例如数据湖、DocumentDB),并且有一个对 SQL 记录的引用,因此SQL 调用仍然很少,大数据存储在其他地方。这是一个干净的庄园,还是我完全错过了什么?
Azure Table 存储可以帮助解决这个问题——它是一个 NoSQL KeyValue 存储。每个实体的大小不得超过 1MB。您也可以使用单个 blob。有一个设计指南,其中包含如何设计 Table 扩展存储解决方案的完整说明 - 包括使用 Table 存储以及其他存储库的模式,请参阅 Table Design Guide https://azure.microsoft.com/en-us/documentation/articles/storage-table-design-guide/