使用NVIDIA KVIKIO增强数据处理


Felix Pinkston
2025年2月27日10:52

NVIDIA的KVIKIO提供了高性能远程IO功能,使用S3和Azure Blob存储(如S3和Azure Blob存储)优化云工作负载的数据处理。




NVIDIA推出了Kvikio,该工具旨在优化使用对象存储服务的远程IO操作,例如Amazon S3,Google Cloud Storage和Azure Blob存储。 Nvidia表示,这项创新对于在云环境中运行的较重的数据应用程序特别有益,在云环境中,有效的数据访问对于防止瓶颈至关重要。

了解对象存储

对象存储服务旨在管理和提供大量数据。但是,利用这些服务有效地需要了解其行为,因为它们与传统的本地文件系统有很大差异。一个主要区别是与对象存储上的读写操作相关的较高和更可变的延迟。

优化数据传输

为了提高数据传输速度,NVIDIA建议将计算节点放置在靠近存储服务的位置,理想情况下,在同一云区域内。随着光速最终限制数据传输速度,此设置可最大程度地减少网络延迟并提高数据传输的可靠性。

文件格式和大小

使用云本地文件格式,例如Apache Parquet和Cloud优化的Geotiff,可以显着提高数据访问效率。这些格式允许选择性元数据阅读和数据下载,从而减少了不必要的数据传输。此外,优化文件尺寸(通常是数十个至数百个兆字节的范围),可以通过摊销HTTP请求的开销来进一步提高性能。

提高性能的并发

并发对于最大程度地提高远程存储服务的性能至关重要。通过提出多个并发请求,用户可以增加吞吐量,因为对象存储服务旨在同时处理许多请求。当使用Python的线池或异步进行并行处理时,这种方法特别有效。

Nvidia Kvikio的优势

Kvikio通过将大量请求自动分解为较小的请求并同时执行它们来脱颖而出。它还有助于有效阅读到主机或设备内存中,尤其是当启用GPU直接存储时。基准表明,与其他库相比,Kvikio在阅读S3的数据时就可以实现更高的吞吐量。

基准见解

性能基准表明,在阅读从S3到EC2实例的数据时,Kvikio可以实现令人印象深刻的吞吐量。例如,在g4dn.xlarge EC2实例上读取1 GB文件显示吞吐量增加,线程计数较高,直至最佳点。同样,任务尺寸的调整会影响最大吞吐量,当任务尺寸既不小也不太大时,都达到了最佳性能。

在涉及Dask Workes流程读取的360个镶木文件文件的方案中,Kvikio启用了将近20 Gbps吞吐量从S3到一个节点,从而展示了其在处理大规模数据操作方面的效率。

对于寻求减轻基于云的工作流程IO瓶颈的数据专业人员,Nvidia Kvikio提供了一种引人注目的解决方案。通过实施这些策略,用户可以显着提高数据处理速度和整体性能。

图像来源:Shutterstock


(tagstotranslate)AI(T)加密(T)区块链(T)新闻



关键词:

KVIKIO增强数据处理使用NVIDIA
Comments (0)
Add Comment