你好,游客 登录 注册 发布搜索
背景:
阅读新闻

Netflix开源S3一致性提升利器S3mper Fi

[日期:2014-01-14] 来源:Gigaom  作者: [字体: ]

虽然公司首席云架构师Adrian Cockcroft可能已经悄悄的跳槽了,但Netflix仍需要通过增强或改善现有的Amazon云服务来支撑他们的业务。

这一次,它的开源S3mper库已经经过优化和测试,这样可以确保在AWS巨大的S3存储服务里有更好的数据存储一致性。S3mper遵循Apache License 2.0

通常,在Netflix Tech Blog上,尽管我们讨论的Amazon服务非常棒,但它需要变得更好来满足Netflix的需求。Netflix高级软件工程师Daniel Weeks在他的博客上例举了S3的“99.999999999%的耐久性、99.99%的可用性、有效地无限存储、版本控制(数据恢复)、无处不在的访问”来说明它巨大的优势。

因为Netflix将S3作为所有数据仓库“真实的来源”,数据一致性是很重要的。它希望确保使用最新数据,但是因为S3存储太多数据——截止到去年四月已经有2万亿对象——其中大部分是变化的,一致性是一个问题。这对Netflix来说是真实存在的,但是对这些对S3用户(对数据一致性要求的不是那么严格)来说不见得是个问题。

需要更好的一致性可以采用二次索引“在S3上支持原始数据的同时编制文件元数据目录,” Weeks 写道。但他同时表示这可能有问题。他说,在小范围里,你可以通过使用“一致的、二次索引在S3上支持原始数据的同时为文件元数据编制目录”得到你需要的一致性。但随着规模增大,情况会变得越来越棘手。一般来说,只要二次索引能够处理所有的请求,它就会正常工作。不过,当你依赖两个独立系统时,数据丢失和性能冲击的风险会随之上升,他说。

这里有s3mper——它使用AWS DynamoDB作为二次索引,Weeks写道:

“S3mper是一个通过使用二次索引跟踪文件元数据的实验研究法,它提供一致性的读写操作。目的是判断当一个S3列表操作返回不一致的结果时,可以提供相应的响应。我们利用Hadoop File System接口实现了S3mper,同时利用DynamoDB作为二次索引跟踪文件元数据。我们选择DynamoDB的原因不仅由于它的功能类似于S3(例如高可用性、通过复制耐久性),而且还增加了一致性操作并提升性能。”

这是高科技产品,所以需要阅读整个文章来获得所有的细节,而我接触的几个AWS商家听到S3mper都非常激动。这对于利用S3来进行大量的批处理,以及对一致性要求很苛刻的金融或医疗领域会非常有用,一位工程师这样说到。

但是Server Density创始人兼首席执行官David Mytton却很迷惑:“在被我们的应用服务器弄崩溃之前,我们最初利用S3部署系统到群集来创建产品。由于我们看到它反复无常,我们切换到Softlayer Object Store,这样我们就能确保我们的服务器总是得到正确的代码,”Mytton通过Email说。

理论上,S3mper将有助于确保您得到期望的目标,而无需求助于“dumb”工作区,他说。数据处理以及数据一致性课题将影响未来的应用程序。

收藏 推荐 打印 | 录入:574107552 | 阅读:
相关新闻      
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款