为了账号安全,请及时绑定邮箱和手机立即绑定

从技术上讲,s3n,s3a和s3有什么区别?

从技术上讲,s3n,s3a和s3有什么区别?

湖上湖 2019-12-12 13:48:59
我知道存在https://wiki.apache.org/hadoop/AmazonS3和以下字词:S3本机文件系统(URI方案:s3n)用于在S3上读写常规文件的本机文件系统。该文件系统的优点是您可以访问S3上用其他工具编写的文件。相反,其他工具可以访问使用Hadoop编写的文件。缺点是S3施加的文件大小限制为5GB。S3A(URI方案:s3a)S3a:系统是S3本机s3n fs的后继产品,它使用Amazon的库与S3进行交互。这使S3a支持更大的文件(没有更多的5GB限制),更高性能的操作等等。该文件系统旨在替代S3本机/替代S3本机:从s3n:// URL访问的所有对象也应该仅通过替换URL架构就可以从s3a访问。S3块文件系统(URI方案:s3)由S3支持的基于块的文件系统。文件存储为块,就像它们在HDFS中一样。这样可以有效地执行重命名。此文件系统要求您为文件系统专用存储桶-您不应使用包含文件的现有存储桶,也不应将其他文件写入同一存储桶。该文件系统存储的文件可以大于5GB,但不能与其他S3工具互操作。为什么URI上的字母更改会产生这种变化?例如val data = sc.textFile("s3n://bucket-name/key")至val data = sc.textFile("s3a://bucket-name/key")此更改的技术差异是什么?有什么好的文章可以阅读吗?
查看完整描述

2 回答

?
侃侃无极

TA贡献2051条经验 获得超10个赞

URI方案上的字母更改有很大的不同,因为它导致使用不同的软件来连接到S3。有点像http和https之间的区别-只是一个字母的更改,但它会触发行为上的很大区别。


s3和s3n / s3a之间的区别在于s3是Amazon S3之上的基于块的覆盖,而s3n / s3a不是(它们是基于对象的)。


s3n和s3a之间的区别在于s3n支持最大5GB的对象,而s3a支持最大5TB的对象并具有更高的性能(这都是因为它使用分段上传)。s3a是s3n的后继者。


如果您在这里是因为想要了解应该与Amazon EMR一起使用哪个S3文件系统,请从Amazon 阅读本文(仅在Wayback机器上可用)。网络是:使用s3://,因为s3://和s3n://在EMR的上下文中在功能上是可互换的,而s3a://与EMR不兼容。


查看完整回答
反对 回复 2019-12-12
  • 2 回答
  • 0 关注
  • 1278 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信