S3多个小文件与更大的文件性能

问题描述 投票:0回答:1

我的应用程序从多个IoT设备接收大量日志数据。我有一项服务,可以接收那些日志文件(50-200 kb)并将其上传到ceph(S3协议)。性能不是很好,我被告知更大的文件会更好。

我可以理解,通过上传更大的文件,握手会更少,但是还有更大的文件(例如10mb)来提高性能的另一个原因吗?

将这些文件串联起来真是一团糟。而且无论如何,如果我使用相同的tcp连接(example),更大的文件是否仍然可以提高性能?

node.js performance amazon-s3 benchmarking
1个回答
0
投票

关于为什么大文件更好的几点:

  • API调用按对象收费,无论对象大小如何。上载1字节的费用与上载1 GB的费用相同。因此,通常较小的对象会导致API成本飙升。

  • 每个文件都有其自己的毫秒级开销,用于打开文件,读取元数据并关闭它。另外,许多文件意味着许多不连续的磁盘搜寻,这些对象存储未针对其优化。

而且,这是对象存储或称为小文件问题的分布式文件系统的常见问题。请参阅here以了解为什么使用大文件是解决方案。

© www.soinside.com 2019 - 2024. All rights reserved.