• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >云计算 > NOSQL(五)版本戳,nosql版本戳

NOSQL(五)版本戳,nosql版本戳

作者:网友 字体:[增加 减小] 来源:互联网

本文主要包含nosql,nosql数据库有哪些,nosql数据库入门,nosql数据库,nosql是什么等服务器相关知识,网友希望可以进行参考

NOSQL(五)版本戳,nosql版本戳


《NoSQL精粹》读书笔记,转载请注明出处《jiq?钦's technical Blog》

 

“事务”是一个有用的工具,可以保证数据的强一致性,对于NoSQL不支持事务这一点,很多NoSQL支持者并不担心,因为面向聚合的NoSQL数据库中以聚合为单位的数据更新操作是原子的。


1“事务”的局限性

“事务”也有其局限性,有些更新操作无法封装到一个事务中,因为那会导致事务的打开时间过长。考虑这样一个例子,用户浏览商品时,看中了一个很便宜的商品,然后选中加入购物车,填入信用卡信息,寄送地址信息等,然后再确认提交订单之前,可能去吃了顿饭,或者去找信用卡去了,在这期间如果商品价格被修改了,或者寄送地址运费计算规则被修改了,那么提交订单时计算出来的支付价格将是错误的。

这时通过“版本戳”就可以很好地应对。而且在从“单服务器分布模型”迁移到“多服务器”时同样如此。版本戳可以确保在数据的读取和写入期间,没有其他人更新过此数据。这个例子中需要确保在写入订单时,没有人更新过订单中的商品信息、运费信息等。所以在提交订单时,需要将读取数据时记录下来的版本戳信息和现在数据库中的版本戳信息进行对比,若检测到首次读取之后到现在一直没有变化,将正确计算出支付价格。

HTTP协议更新资源时也会用到这种机制。某些数据库也提供了类似“条件更新”的机制,确保不会再旧数据上执行更新操作,有时也称作compare-and-set。

 

2 版本戳构建方法

?  计数器

?  GUID

?  根据资源内容生产HASH码

?  时间戳

 

3 多服务器环境生成版本戳

在“单服务器”或者“主从复制”分布模型中,使用基本的版本戳生成方案就好,在这种情况下可以由主节点生成版本戳,而从节点必须使用主节点的版本戳。

在“对等复制”分布模型中则需要采用更为复杂的版本戳生成方式。

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • NOSQL(六)集群并发计算模型Map-Reduce,nosqlmap-reduce
  • NOSQL(五)版本戳,nosql版本戳
  • NOSQL(四)放宽一致性约束,nosql一致性
  • NOSQL(三)分布式数据模型,nosql模型
  • NOSQL(二)聚合数据模型,nosql聚合数据模型
  • NOSQL(一)为什么选用NoSQL?,选用nosql

相关文章

  • Openstack中为虚拟机使用CDROM光驱设备,openstackcdrom
  • 玩转OpenStack网络Neutron(1)--热身,openstackneutron
  • jsp中用EL读取了数据库里面的时间,怎么设置格式显示的格式,jspel
  • Hadoop学习---第四篇Mapreducer里的Partitioner,hadooppartitioner
  • HBase RegionServer详解(未完),hbaseregionserver
  • Neutron数据库同步错误 NotImplementedError: No support for ALTER of constraints in SQLite dialect,sqlitealtertable
  • 超级权限容器,权限容器
  • hadoop单机存储均衡和坏block处理,hadoop单机block
  • Hadoop2伪分布模式安装,hadoop2分布模式
  • 使用export/import导出和导入docker容器,exportdocker

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • 开源图计算框架GraphLab介绍,开源图框架graphlab
    • 在spark上运行独立程序(Self-Contained Applications),selfcontained
    • Win 10服务智能化有什么根据?,win智能化
    • SSH无密码登陆配置,ssh无密码登陆
    • HBase数据导入的几种操作,hbase数据导入几种
    • Ambari Metrics介绍,ambarimetrics介绍
    • 搭建私有 Docker 仓库服务器,docker仓库
    • 通过 JMX 获取Hadoop/HBase监控数据,jmxhadoop
    • MongoDB Query 的几个方法,mongodbquery
    • hadoop学习笔记(二)——hadoop思想简介,hadoop学习笔记

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有