Amazon S3数据一致性模型
左右Amazon S3有两种类型的数据的一致性模型的:
最后,一致性和读一致性。
有下面几种行为:
1 写一个新的object,然后開始读它。直到全部的变化都传播完(副本),你才干读到它,否则就是key does not exist。
2 写一个新的object,然后listkeys,直到全部的变化都传播完。你才干看到它。
3 覆盖一个已有的object,然后開始读它,直到全部的变化都传播完,你才干拿到最新的object,否则就是老的。
4 删除一个object,直到全部的变化都传播完,你读它。才会产生key does not exist。否则读到已删除的object。
5 删除一个object,直到全部的变化都传播完,你listkeys,才没有这个object。否则还会有它。
这里须要注意的是不同的region提供的数据一致性模型是不一样的,US Standard Region比較特殊,它提供的是终于一致性模型(eventual consistency)。其他的region提供的是对于put一个新的object,提供的是read after write consistency. 对于覆盖object和删除object,提供的也是终于一致性。
终于一致性可能导致脏读。可是latency会比較小,所以吞吐量会比較高。读写一致性不会出现脏读,可是latency可能会比較大,所以吞吐量会比較低。
还须要注意的是。S3并不提供锁,假设你同一时候对同一个key进行操作,那么后一个操作会覆盖前一个操作的结果。
原文:http://blog.csdn.net/hongchangfirst/article/details/36015151
作者:hongchangfirst
hongchangfirst的主页:http://blog.csdn.net/hongchangfirst
版权声明:本文博主原创文章。博客,未经同意不得转载。
Amazon S3数据一致性模型的更多相关文章
- Amazon S3 API
一.概述 Amazon s3,全称为Amazon Simple Storage Service.EC2和S3是Amazon最早推出的两项云服务. REST,这也是比较火的一种Web服务架构.简单来说 ...
- 使用Apache Hudi + Amazon S3 + Amazon EMR + AWS DMS构建数据湖
1. 引入 数据湖使组织能够在更短的时间内利用多个源的数据,而不同角色用户可以以不同的方式协作和分析数据,从而实现更好.更快的决策.Amazon Simple Storage Service(amaz ...
- cosbench read异常解决办法。 Unable to verify integrity of data download. Client calculated content hash didn't match hash calculated by Amazon S3. The data may be corrupt.
问题:cosbench read测试failed 报错如下 Cosbench v0.4.2.c4 against Ceph (Hammer) / radosgw / HAproxy's HTTP en ...
- [AWS S3] Hosting a Static Website on Amazon S3
In this lesson, you will learn how to host a static website on Amazon S3. I will show you how to cre ...
- [Ting's笔记Day7]活用套件carrierwave gem:(2)利用Amazon S3架设图片服务器
来到第7篇了!培养写作习惯真是不容易:) 在我的上一篇文章活用套件carrierwave gem:(1)在Rails实现图片上传功能,上传图片功能已经完成啦!但是目前图片仅能上传在自己的本地文件夹内孤 ...
- 实现多线程异步自动上传本地文件到 Amazon S3
最近抽空做个小工具,使用AWSSDK 对本地文件目录监控,并自动同步上传文件到S3 的过程,使用的是多线程异步上传,针对大文件进行了分块 参考文献: https://www.codeproject.c ...
- Amazon S3 功能介绍
一 .Amazon S3介绍 Amazon Simple Storage Service (Amazon S3) 是一种对象存储,它具有简单的 Web 服务接口,可用于在 Web 上的任何位置存储和检 ...
- Hive中导入Amazon S3中的分区表数据的操作
Hive中创建S3的外部表 数据在S3存放的数据是按时间纬度存放的,每天的数据存放在各自的目录下,目录结构如下截图: 每个目录下面的数据是CSV文件,现在将其导入到Hive中进行查询,通过创建对应的表 ...
- 详解Amazon S3上传/下载数据
AWS简单储存服务(Amazon S3)是非常坚牢的存储服务,拥有99.999999999%的耐久性(记住11个9的耐久性). 使用CloudBerry Explorer,从Amazon S3下载数据 ...
随机推荐
- Qt 中文乱码解决大全
源地址:http://blog.csdn.net/xcy2011sky/article/details/7168376 解决中文乱码,最好知道乱码是什么格式比如说:utf-8. 解决方案: 1.让整个 ...
- 实现长按删除QListWidget的Item
原地址:http://blog.sina.com.cn/s/blog_5c70dfc80100r99u.html 要想长按删除QListWidget的Item,必须重写鼠标事件,所以需要继承QList ...
- checkbox之checked的方法(attr和prop)区别
1. $('#checkbox').click(function(){ if($('#checkbox').is(':checked')) { $(".sendmailhui"). ...
- iOS学习——ViewController(六)
ViewController是iOS应用程序中重要的部分,是应用程序数据和视图之间的重要桥梁,ViewController管理应用中的众多视图. iOS的SDK中提供很多原生ViewControlle ...
- Java面试宝典2014版
一. Java基础部分......................................................................................... ...
- 能够返回运行结果的system函数加强版本号
/********************************************************************* * Author : Samson * Date ...
- 【Android】 -- 使用UncaughtExceptionHandler捕捉全局异常
在综合统计SDK(欧盟统计局的朋友,百度统计)之后.有一个非常有利的功能测试:错误分析.此功能可以在程序的执行中遇到崩溃(runtimeException)反馈给server,帮助开发者提高产品.多功 ...
- C++学习之路—多态性与虚函数(二)纯虚函数与抽象类
(根据<C++程序设计>(谭浩强)整理,整理者:华科小涛,@http://www.cnblogs.com/hust-ghtao转载请注明) 1 纯虚函数 在前面的博客中已经提到:有时 ...
- 【OpenMesh】Some basic operations: Flipping and collapsing edges
这一节中你将学到一些OpenMesh中早已提供的基础操作. 内容包括三角形网格边的翻转以及通过连接邻接的顶点边缘折叠. 三角形网格的翻转(Flipping edges) 考虑到两个邻接面的三角形网格中 ...
- xPool - 基于mysqlclient的mysql的c++连接池 - xnhcx的个人空间 - 开源中国社区
xPool - 基于mysqlclient的mysql的c++连接池 - xnhcx的个人空间 - 开源中国社区 xPool - 基于mysqlclient的mysql的c++连接池