所以我有一个大的c#对象,一个数据集合。我最初只是将它写入documentdb doc,但意识到它会超过单个文档的大小。所以不确定最好的方法是什么,我可以:
1)将其写成单独的文件,但随后会有10,000个小文件,我怀疑使用它会非常昂贵
2)找到一种更好的序列化方法但是我仍然会达到极限
3)找到一种方法将其分解为数据页
4)序列化为二进制并使用表存储或类似的
5)序列化为二进制并使用附件功能。
我不知道最好的方法是什么,我只是找到了CosmoDB的脚 - 所以任何指针都会非常有用。
有一个论点说这个数据应该是SQL样式的行和列数据库,但是现在我甚至都不知道这是否是一种现代方法......
欢呼声 保罗
答案 0 :(得分:1)
您可以按照选项#1中的说明拆分文档,也可以将文档存储为remote
个附件。我提到了远程,因为DocumentDB的内置附件存储仅限于2 GB。
要使用远程存储,您需要先存储文件然后获取链接并在DocumentDB中创建附件,然后使用Attachment的MediaLink
属性来设置二进制文件所在的位置。
以下是MediaLink
的{{3}}外观。
答案 1 :(得分:0)
详细了解。
我认为在documentdb和表存储之间分割我的数据更有意义 - 一些数据更适合表概念,可以使用documentdb中的核心数据结构分页和读入数十万行。 / p> 唯一美中不足的是,没有用于Cosmo Table服务和点网核心的NuGet库......无法相信。
所以我在亚马逊上看着DynamoDB看似是一个桌子/文件商店...
感谢 保罗