S3QL:一个用Python写成的在线存储系统

编辑:光环大数据 来源: 互联网 时间: 2017-10-20 10:45 阅读:

  S3QL:一个用Python写成的在线存储系统,S3QL是一个在线存储系统,使用诸如GoogleStorage、AmazonS3或OpenStack这样的服务存储数据。它提供了一个动态的、容量无限的硬盘,任何运行Linux、FreeBSD或OSX的计算机都可以通过互联网访问。

S3QL是一个符合标准的全功能Unix文件系统。它有一些额外的特性,使它特别适应于在线备份和归档。相比性能和功能而言,它更注重简洁与优雅。项目创建者NikolausRath一直致力于确保源代码的可读性和可维护性。以下是S3QL的特性:

透明性——从概念上讲,S3QL与本地文件系统很难区分,例如,它支持硬连接、符号连接、标准Unix权限等;

动态大小——S3QL文件系统的大小可以根据需求动态增长和缩小;

压缩——所有数据在存储之前都可以使用LZMA、bzip2或Deflate(gzip)算法压缩;

加密——在压缩之后上传之前,所有数据都可以使用一个256位的密钥进行AES加密,它还使用SHA256HMAC校验和保护数据不被篡改;

数据去重——如果多个文件有相同的内容,那么冗余数据只存储一次;

不可变树——目录树可以设置为不可变的,这一特性有利于确保备份不会被修改;

写入时复制\快照——S3QL可以复制整个目录树,而不使用任何额外的存储空间,只有当其中一个副本被修改了时,被修改的数据会占用额外的空间;

高性能——所有不读写文件内容的操作都非常快,因为S3QL将整个文件和目录结构存储在一个数据库中,而后者会在本地缓存,且远程副本为异步更新;

支持低带宽连接——S3QL将文件内容分成多个小块并缓存在本地。

近日,该项目在HackerNews上引发了激烈的讨论,并登上了HN的首页。不过,虽然讨论的内容很多,但关于S3QL的内容相对较少,大多数讨论是围绕类似的解决方案,比如Duplicity、Attic、Tarsnap、ObjectiveFS等。网友indiv0根据S3QL的文档断定,S3QL使用的加密算法为MAC-then-encrypt算法。他认为这种算法不好。也有其他网友持类似观点,其中dlitz就认为这种算法太老。但网友JoachimSchipper并不认为S3QL采用了MAC-then-encrypt算法。另外,网友witten使用过S3QL和Tarsnap,他认为:

S3QL使用了远程加载文件系统,从根本上讲,这不适合无人值守的备份。在许多情况下,S3QL加载的文件系统会在备份过程中因为网络问题中断……

另外,S3QL会周期性地发布不支持旧版本文件格式的新版本,或者仅仅向前支持一定的版本数量。因此,如果你升级不够经常,那么你会发现自己用了一个拒绝读取现有的GB级数据的版本。

关于第二点,S3QL开源页面也提到了:

S3QL已经稳定,可以用于生产环境。不过从一个小版本升级到下一个可能会改变公共接口,或者需要升级文件系统结构。因此,强烈建议在升级前阅读变更日志。

按照该页的说法,如果用户系统支持Python3.3及以上版本,则建议下载最新的2.x版本。但maint-1.x分支也可以用于生产环境,只是不再进行积极的开发,只会修复影响较大的Bug。

  Python培训,就选光环大数据Python培训机构python学习地址:http://hadoop.aura.cn/python/


大数据培训、人工智能培训、Python培训、大数据培训机构、大数据培训班、数据分析培训、大数据可视化培训,就选光环大数据!光环大数据,聘请专业的大数据领域知名讲师,确保教学的整体质量与教学水准。讲师团及时掌握时代潮流技术,将前沿技能融入教学中,确保学生所学知识顺应时代所需。通过深入浅出、通俗易懂的教学方式,指导学生更快的掌握技能知识,成就上万个高薪就业学子。 更多问题咨询,欢迎点击------>>>>在线客服

你可能也喜欢这些

在线客服咨询

领取资料

X
立即免费领取

请准确填写您的信息

点击领取
#第三方统计代码(模版变量) '); })();
'); })();