商丘做网站,商丘网站优化,商丘网络推广,商丘网络公司
当前位置:首页 > 新闻资讯 > 建站经验 >

后台架构设计—数据存储层

发表日期:2018-01-19 21:46聚圣源浏览次数: 本文关键词:后台,架构,设计,—,数据,存储,层,数据,存储,

 

  数据存储重要性:

  数据是企业最重要的财产;

  数据可靠性是企业的命根,一定要保证。

  单机存储原理:

  存储引擎:存储系统的发动机,它决定存储系统的功能和性能;

  引擎类型:哈希存储引擎、B树存储引擎、LSM存储引擎

  哈希存储引擎:基于哈希表结构 :数组+链表;支持CreateUpdateDelete随机Read

  B树存储引擎:基于B Tree实现,支持单条记录的CURD,支持顺序查找。RDBMS使用较多。

  LSM树存储引擎:对数据的修改增量保存在内存,达到一定条件再批量更新到磁盘;优势在于批量写入;劣势在于读取需合并磁盘和内存;

  避免内存数据丢失:修改操作写入到CommitLog日志。

  

后台架构设计—数据存储层

 

  数据模型:

  文件:以目录树组织,如linux,mac,windows;

  关系型:每个关系是一个表格,多行组成,每行多列;

  键值(Key-Value):Memcached, Tokey, Redis;

  列存储型:Casadra, Hbase;

  图形数据库:Neo4J, InfoGrid, Infinite Graph

  文档型:MongoDB, CouchDB

  事务与并发控制:

  事务4个基本属性:ACID 原子性、一致性、隔离性、持久性

  并发控制:

  锁粒度:Process->DB->Table->Row

  提供Read并发,Read不加锁:写时复制、MVCC

  数据恢复:通过操作日志

  多机存储原理:

  单机存储原理在多机存储仍然可用;多级存储基于单机存储;

  数据分布:

  分布在多个节点,节点间负载均衡;

  分布方式:

  静态:取模、uid%32;

  动态:一致性hash,数据飘移问题(A节点更新前出现故障,更新迁移到B节点后A节点又恢复);

  复制:

  分布式存储多个副本;保证高可靠和高可用;Commit Log。

  故障检测:

  心跳机制、数据迁移、故障恢复;

  FLP定理与设计:

  FLP Impossiblity(FLP不可能性):

  在异步消息通信场景,即使只有一个进程失败,没有任何方法能保证非失败进程达到一致性。

  CAP定理与设计:

  CAP:一致性(Consistency)、可用性(Availabilty)、分区容忍性(Tolerance of network Partition)。

  一致性和可用性需要折中权衡

  分布式存储系统需要能够自动容错,也就是说分区容忍性需要保证。

  2PC(Two Phase Commit)协议与设计:

  用于分布式事务;

  两类节点组成:

  协调者(1个);

  事务参与者(多个);

  分两阶段:

  请求阶段:协调者通知参与者准备提交或取消事务,所有参与者都需要表决同意或者不同意。

  提交阶段:

  收到参与者所有决策后,协调者进行决策(提交或取消);

  通知参与者执行操作,所有参与者都同意就提交,否则取消;

  参与者收到协调者的通知后执行操作。

  2PC协议是阻塞式:

  事务参与者可能发生故障

  --设置超时时间;

  协议者可能发生故障

  --日志记录、备用协调者

  应用:交易订单 等;

  Paxos协议与设计:

  作用:

  解决节点间的一致性问题;

  主节点宕掉,则选择新节点;

  主节点常以操作日志的形式同步备节点。

  分两种角色:提议者(Prpposer)、接受者(Acceptor);

  执行步骤:

  批准:Proposer发送accept消息给Accepter要求接受某个提议者;

  确认:超一半的Accepter接受,则提议值生效,Proposer发送acknowledge消息通知所有的Accepter提议生效。

  与2PC比较::

  2PC协议保证多个数据分片上操作的原子性;洛阳

  Paxos协议保证一个数据分片多个副本之间的数据一致性;

  Paxos协议用法:

  实现全局的锁服务或者命名和配置服务;

  ---Apache Zookeeper

  将用户数据复制到多个数据中心;

  ---Google Megastore

  数据存储层冗余:

  多个副本,实现访问的高可用性。

  如何实现:

  数据复制:

  基于日志;

  Master-Slave:mysqlMongoDB

  Replic Set:MongoDB

  双写:

  存储层多主对等结构;比较灵活,但数据模块层成本较高;

  数据备份:

  冷备份:

  定期将数据复制到某个存储介质,是传统的数据保护手段;

  优点:简单、廉价,技术难度低;

  缺点:定期存在数据不一致;恢复数据时间长;

  热备份:

  online备份;提供更好的高可用性;

  异步热备份:

  从主存储写入即返回给应用端,由存储系统异步写入其他副本;

  同步热备份:

  多份数据副本写入同步完成,无主从之分;

  为提高性能,应用程序并发写入;

  响应延迟是最慢的那台服务器;

  数据存储层失效转移机制:

  失效确认:是否宕机、心跳;

  访问转移:访问路由到非宕机机器;存储数据完全一致;

  数据恢复:主从、日志;

如没特殊注明,文章均来自网络! 转载请注明来自:http://www.jushengyuan.com.cn/news/jzjy/9871.html

网站设计案例推荐

热门文章

站长工具综合查询里面SSL证书不...

SSL证书不安全是怎么回事?但是点进去这个提示后,显示的是别人的tdk是不是被劫持或者被黑了?...

日期:2018-03-27 浏览次数:1932

简洁而实用的版权信息可增色网...

打开网站,人们自然会从上往下浏览,首先映入眼帘的一定是BANNER主视觉,然后是网站主体内容部分。相比较而言,注意到网站底部版权信息的浏览者确实不多,但这并说明网站版权信...

日期:2018-09-20 浏览次数:1889

网站设计需要注意的3点问题...

对于网站设计来讲会受到很多因素的影响,而且不同类型的网站,在设计时需要体现的元素也不一样,比如说对于一个企业网站更想体现出品牌以及产品的特点,主要是对产品、企业信...

日期:2018-02-12 浏览次数:1809

企业网站为什么要改版 改版选择...

网站改版,是每个建站企业必须面临的工作。相信也有不少站长问,已经做好的企业网站,为何还要大费周章重新进行改版设计呢?下面小编就来给大家说说,企业究竟为什么要改变,并...

日期:2018-03-26 浏览次数:1345

永城网站制作:模板建站不可不...

随着互联网建站尤其是自助建站热潮不断高涨,建站行业涌现出越来越多的自助建站平台,这些平台普遍都提供网站模板可选。...

日期:2018-04-30 浏览次数:940

相关文章

struts2架构网站漏洞修复详情与利...

struts2从开辟出来到如今,许多互联网企业,公司,平台都在利用apache struts2体系来开辟网站,以及应用体系,这几年来由于利用较多,被打击者发掘出来的struts2毛病也越来越,从最一开...

日期:2018-12-04 浏览次数:68

企业网站建设 设计一个直击用户...

打开一个网站,假如毫无亮点,不外是如出一辙的形貌,布局简朴的结构,用户会毫无感觉,乃至生出一份厌倦的感情,这个时间,我们不得不为用户是否计划留在这个网站上担心,由...

日期:2018-11-20 浏览次数:72

网站验收新标准:所有颜色均可...

在大部门用户的观点中,定制网站比起米拓尺度化模板建站要高峻上,但阅读完本文后,大概你会熟悉到这是一种不太科学的熟悉!为什么?叨教你的网站上线后本身可以在可视化编辑界...

日期:2018-11-07 浏览次数:76

分析建站公司的类型和团队架构...

建站行业因其进入门槛低、投入少、技能要求低而早已成为了红海市场,每个都会都有肯定数目的建站办事提供商,据不完全统计,米拓建站地点的长沙市就有200-300家可以提供建站办事...

日期:2018-10-27 浏览次数:85

“流量不限量时代” 移动网站为...

移动流量越来越自制了,在大街小巷,随时都能看到低头族刷着抖音,由于轻微走近,就能听到抖音抓心的音乐,另有那难听逆耳的笑声,用户云云绝不控制的刷抖音,无拘无束的看小...

日期:2018-10-23 浏览次数:79

随机推荐

如何选择优质论坛虚拟主机...

江湖外卖O2O系统积分商城华丽变...

多年的网站优化知识白学了 这样...

美容O2O解决方案,总有一款适合...

大话西游之建站宝盒:利用“互...

百度VIP大讲堂上海站干货大放送...