数据湖存储的安全写入之道
原文中文,约14400字,阅读约需35分钟。发表于: 。数据湖的兴起,给数据存储带来了一轮新的革命。越来越多的公司选择将存储切换到云上对象存储。因为云上对象存储往往意味着大容量、低成本、易扩容。
数据湖的兴起给数据存储带来了新的革命,越来越多的公司选择将存储切换到云上对象存储。S3协议已成为对象存储的通用协议,但市面上的数据平台公司也会选择基于S3协议又兼顾Hadoop使用习惯的S3A Connector。S3AFileSystem在创建文件时会打开S3ABlockOutputStream,而S3ABlockOutputStream在处理write、flush等操作时会调用S3ADataBlock来执行。S3AFileSystem可以发现磁盘IO问题并抛出异常,但无法发现磁盘比特反转问题。阿里云EMR JindoSDK通过实现JindoOutputStream支持请求级别和文件块级别的校验,提供了更完善的错误检查和更优异的性能。数据湖存储的安全写入需要考虑内存、磁盘和网络的不可靠性,选择合适的校验算法,并全面考虑各种可能遇到的问题。