拥有许多小型 Azure 存储 Blob 容器(每个容器都包含一些 Blob)更好,还是拥有一个包含大量 Blob 的大型容器更好?

2023-12-29

所以场景如下:

我有一个 Web 服务的多个实例,用于将 blob 数据写入 Azure 存储。我需要能够根据收到的时间将 blob 分组到容器(或虚拟目录)中。偶尔(最坏的情况是每天)旧的 blob 会被处理然后删除。

我有两个选择:

Option 1

我制作一个名为“blob”的容器(例如),然后将所有博客存储到该容器中。每个 blob 将使用目录样式名称,目录名称为接收时间(例如“hr0min0/data.bin”、“hr0min0/data2.bin”、“hr0min30/data3.bin”、“hr1min45/data.bin” ", ... , "hr23min0/dataN.bin" 等 - 每隔一个新目录X分钟)。处理这些 blob 的事物将首先处理 hr0min0 blob,然后是 hr0minX,依此类推(处理时 blob 仍在写入)。

Option 2

我有许多容器,每个容器都有一个基于到达时间的名称(因此首先是一个名为 blobs_hr0min0 的容器,然后是 blobs_hr0minX 等),容器中的所有 blob 都是在指定时间到达的 blob。处理这些博客的东西一次只会处理一个容器。

所以我的问题是,哪个选项更好?选项 2 是否可以提供更好的并行化(因为容器可以位于不同的服务器中),或者选项 1 是否更好,因为许多容器可能会导致其他未知问题?


每个人都为您提供了有关直接访问 blob 的出色答案。但是,如果您需要列出容器中的 blob,您可能会发现多容器模型具有更好的性能。我刚刚与一家公司交谈过,该公司一直在单个容器中存储大量 blob。他们经常列出容器中的对象,然后针对这些 blob 的子集执行操作。他们发现性能受到了影响,因为检索完整列表的时间一直在增长。

这可能不适用于您的场景,但需要考虑......

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

拥有许多小型 Azure 存储 Blob 容器(每个容器都包含一些 Blob)更好,还是拥有一个包含大量 Blob 的大型容器更好? 的相关文章

随机推荐

  • gcc 编译器无法识别 -fno-plt 选项

    我正在尝试使用 Amazon Linux AMI 在 Amazon EC2 实例上编译 QuantLib Python SWIG 绑定 我已成功编译 QuantLib 本身 但是 当尝试编译 anaconda python swig 绑定时
  • 如何从java调用c++功能

    我有一个主要是 GUI 的 Java 程序 它显示从 C 命令行工具写入 xml 文件的数据 现在我想在java程序中添加一个按钮来刷新数据 这意味着我的程序必须调用 C 功能 通过系统调用从 java 调用程序的最佳方法是 c 程序将为
  • 使用 TRESTRequest 时客户端未指定证书

    使用 SSL URL 调用我们的内部服务器之一时 TRESTClient 和 TRESTRequest 给出错误 首先来自异常类 ENetHTTPCertificateException 然后来自 ERESTException 并显示消息
  • 可变高度的 CSS 浮动 Div [重复]

    这个问题在这里已经有答案了 我有无限数量的 100px 宽度的 div 可以放入 250px 宽度的父级中 无论高度如何 我都需要将 div 按行显示 如图所示 我已经尝试解决这个问题 但 div 高度似乎把它搞砸了 我非常感谢你的帮助 谢
  • 用元组定义函数

    如何定义一个接受所有元组 1 到 22 作为参数的函数 我有以下想法 def foo v Tuple foo 1 2 foo 1 2 3 EDIT 回答评论 我实际上正在尝试创建一个张量类 它是一组值和一组索引 索引可以是协变和 或逆变的
  • 使用 LINQ 合并 2 个列表并对多个属性求和

    我有一个包含以下属性的类 public class SomeClass public Int32 ObjectId1 get set public Int32 ObjectId2 get set public Int32 ActiveThi
  • 系统类加载器是否会加载类路径中的所有类,即使它们实际上并未使用?

    我正在使用 JDK 1 6 来运行一个小型应用程序 然而 我设置了一个非常庞大的类路径 其中包含很多类 当我运行应用程序时 类加载器中的所有类是否都会被加载 即使它们实际上并未在我的应用程序中使用 如果不是 如何强制类加载器这样做 如果是
  • 提交消息中的“CL”是什么意思?它代表什么?

    来自 Angular js 更改日志 在此 CL 之后 ng trim 不再影响 input type password 并且永远不会修剪密码值 这是来自其中一条提交消息 因此大概意味着补丁 它代表什么 更改日志 它的意思是更改列表 创建变
  • 使用 CloudKit 时出现“无法发送有效签名”错误

    任何人都知道可能导致此错误的原因 该错误在下面的查询块中返回
  • 如何使用argparse打开文件?

    我想使用打开文件进行阅读argparse 在 cmd 中它必须如下所示 my program py filepath 这是我的尝试 parser argparse ArgumentParser parser add argument fil
  • C# .net MVC,设置 Google 应用程序凭据 JSON 文件的路径

    我刚刚让这个 Google 示例项目在我的 VS2015 上运行 但是 当我发布到 IIS 并托管它后 当我打开链接时 网页不断显示此消息 如图所示 我将密钥添加到了 web config 中 但仍然不起作用 只是想知道以前是否有人这样做过
  • Facebook Graph API 读取关注者计数

    使用 Facebook Graph API 或其他方式 当前是否有可用的方法来获取用户的关注者数量 您可能认为这将是一个简单的可读度量字段user https developers facebook com docs graph api r
  • Grails ehcache 插件 - 同一 VM 中已存在另一个未命名的 CacheManager

    我使用 ehcache 作为二级缓存来运行 Grails 应用程序 并且它可以工作 我安装了ehcache插件 cache插件 然后就没有了 我尝试了互联网上几乎所有的解决方案 但没有找到我一直得到的解决方案Another unnamed
  • 如何将 Flutter 应用主题默认设置为深色?

    我在 flutter 中创建了一个简单的登录 UI 但我不知道如何使应用程序的整体主题变暗 我的意思是 将来 如果我向应用程序添加更多功能 它应该全部采用深色主题 有什么办法可以做到这一点吗 我使用了一个单独的 dart 文件 login
  • 在 Objective-C 中比较字符串和数组

    这是一个非常基本的问题 我相信您能够很快回答 请不要嘲笑我的无知 我有一个字符串 我想将其与字符串数组进行比较 仅当字符串不是数组的一部分时 我才想执行操作 我尝试了以下代码 但不起作用 我确实明白为什么 但我就是想不出正确的方法 请帮助我
  • 如何将 ILMerge 集成到 Visual Studio 构建过程中以合并程序集?

    我想将 VB NET 控制台应用程序项目引用的一个 NET DLL 程序集和一个 C 类库项目合并到一个命令行控制台可执行文件中 我可以从命令行使用 ILMerge 来完成此操作 但我想将参考程序集和项目的这种合并集成到 Visual St
  • form_for 的路由范围问题(部分)

    尝试路由 scope shortcut do resources text elems end 使用带有表单部分的基本脚手架 form html erb 问题是 当我打电话时edit动作 表单 html 显示为
  • UserDefaults 不使用 Swift 保存

    我正在尝试使用 UserDefaults 来持久保存布尔值 这是我的代码 public static var isOffline UserDefaults standard bool forKey isOffline didSet prin
  • 在 JExcelApi 中制作新颜色

    我正在使用 JExcelApi 生成 XLS 文件 从jxl format 颜色 http jexcelapi sourceforge net resources javadocs 2 6 10 docs jxl format Colour
  • 拥有许多小型 Azure 存储 Blob 容器(每个容器都包含一些 Blob)更好,还是拥有一个包含大量 Blob 的大型容器更好?

    所以场景如下 我有一个 Web 服务的多个实例 用于将 blob 数据写入 Azure 存储 我需要能够根据收到的时间将 blob 分组到容器 或虚拟目录 中 偶尔 最坏的情况是每天 旧的 blob 会被处理然后删除 我有两个选择 Opti