S3基准:硬盘上的MinIO
高性能对象存储是当今企业中的热门话题之一。
一方面,对象存储已成为企业存储策略(公共或私有云)不可或缺的一部分-以TB或PB衡量时,承担了绝大多数企业负担。
另一方面,传统上,对象存储在企业中的作用相对较低,即数据归档,备份源和灾难的恢复点。这取决于遗留对象存储解决方案的性能特征。
这正在改变。对象存储的性能越来越高,带来了新的用例和更多的实用程序。
亚马逊提高了游戏质量,提供了优于设备供应商的服务,但是对于那些从对象存储中寻求“类似于Hadoop”性能的企业,您需要寻找旨在提供吞吐量的软件。
这就是MinIO的用武之地。当我们在4年前开始工作时,其想法是设计一个简单,安全,可扩展和快速的对象存储系统。非常非常快
那么什么是快的?
这是一个很好的问题,需要进行权衡。异国情调的硬件可以掩盖编写不良的软件,但是该解决方案有局限性,并会破坏性价比。
快速与软件有关。充分利用基础硬件的软件-无论是商品还是异国情调。但是请不要误会,快速需要在随时可用的商品硬件上工作。
我们最近发布了一系列性能基准测试中的第一个。我们从现成的硬件,容易获得的网络和标准计算实例开始。
为此基准,MinIO使用了具有本地硬盘驱动器和25 GbE网络的AWS裸机,存储优化实例。

MinIO选择了wasabi-tech的S3基准来执行我们的基准测试。该工具从单个客户端到单个端点进行基准测试。在我们评估期间,这个简单的工具在多次运行中产生了一致且可重复的结果。
结果是极好的。
使用上面列出的商品设置,MinIO能够实现10.81 GB /秒的读取性能和8.57 GB /秒的写入性能。实际上,这意味着MinIO Object Server受硬盘驱动器吞吐量的限制,而该吞吐量远低于网络的吞吐量。但是,由于25GbE网络尚未完全饱和,因此可以提供额外的性能。
鉴于在这些测试中完全利用了驱动器的带宽,如果可以使用其他驱动器,则可以期望更高的吞吐量。
但是,生产部署通常需要加密,这会带来一些开销。MinIO高度优化的实施加密算法利用SIMD-最大限度地减少了开销。实际上,在我们的测试中,差异可以忽略不计或“杂乱无章”-允许企业将加密作为默认设置运行。

当涉及到基准时,细节很重要,我们已经发表了一篇关于如何产生这些结果的论文,以便可以由第三方复制。
但是,对于企业来说,要点很明显。以这种吞吐量,全新的工作负载套件开始发挥作用。Spark,Presto,Tensorflow等。此外,分解后的体系结构为调整硬件提供了极大的灵活性。我们在这里有关于NVMe的类似论文。