soloxiao
发表于 2019-05-20 11:51
分布式数据中心,两个类型,一个存数据,一个跑业务。不管是存数据的还是跑业务的,都会有一个站出来,充当指挥官的能力。管理整个数据中心的硬件&软件基础信息,共享的数据信息,协调各个数据中心的资源分配,调度。然后就是数据的存储,备份,容灾,等等。具体哪个是看各自的安排。但是我看到的资料是一般存数据的充当管理的角色,跑业务的就单纯跑业务。从硬件配置和网络带宽分配来看,存数据的没有跑业务的需求高。跑业务的需要实时在线,并发高,缓存需求大,不像存储的备份可以后台,分时,处理。别的不知道
wengwb
发表于 2019-05-20 11:56
本帖最后由 wengwb 于 2019-05-20 12:17 编辑
分布式存储系统的设计与建设还应关注什么?如何实现?
分布式存储系统可以理解为多台单机存储系统的各司其职、协同合作,统一的对外提供存储的服务。所以无论是存储非结构化数据的分布式文件系统,存储结构化数据的分布式数据库,还是半结构化数据的分布式KV,在系统的设计上主要需要满足以下需求(但不仅限于):基本读写功能、性能、可扩展性、可靠性、可用性。
cynthia
发表于 2019-05-20 13:54
回复 23# zhmw
要记得回复问题哦
yesye
发表于 2019-05-20 14:30
为了使分布式存储系统获得更高性能,您会采用哪些措施?
承载量是分布式系统存在的原因
当一个互联网业务获得大众欢迎的时候,最显著碰到的技术问题,就是服务器非常繁忙。当每天有1000万个用户访问你的网站时,无论你使用什么样的服务器硬件,都不可能只用一台机器就承载的了。因此,在互联网程序员解决服务器端问题的时候,必须要考虑如何使用多台服务器,为同一种互联网应用提供服务,这就是所谓“分布式系统”的来源。
zuike2000
发表于 2019-05-20 15:08
容灾和备份到底是不是同一个概念?看过很多相关的文反而糊涂了,是不是高可用才是热备?
yifanwu
发表于 2019-05-20 15:30
针对海量非结构化数据场景,您认为分布式存储系统的设计与建设还应关注什么?如何实现?
为了保证系统能够对机房级别的故障进行容错,不会使系统不可用,这就需要在机房级别对系统进行冗余处理。而这就需要在架构上进行良好的设计。来面对多机房场景下的技术挑战。事实上,异地多活最大的挑战在于机房之间的物理距离更远,数据传输的延迟已经不能忽略。在网络普遍延迟的情况下,如何根据业务特性设计高可用的性能达标的分布式系统,将是最大的挑战。
ywbair
发表于 2019-05-20 15:50
数据存储服务如何同步?
liangyh
发表于 2019-05-20 15:57
回复 37# zuike2000
备份是手段,容灾是目的。
高可用是指服务的可用率,例如99.99%的高可用性,意思是此服务出现问题的机率极低。一般是指系统的稳定性
而热备可以提高可用性,例如由90%提高到99%,在服务出问题时尽快恢复。
同上,热备是手段,高可用性是目的。
TigerJin
发表于 2019-05-20 16:29
回复 39# ywbair
对于数据存储问题是网络延迟造成最大影响的地方。在常见的解决方案中有多机房单集群,和多机房多集群部署两种.数据的同步可以分为,数据库,缓存,消息队列,session等。在多机房单集群中如何部署? 及整个系统中存储服务是唯一的一个集群,只有一个master节点.做读写分离设计,所有机房上的服务只能向数据存储集群上的master节点提交写请求,而在读数据时向自己机房上的salve节点提交请求。数据的同步委托给基础组件完成,可以利用数据本身的数据同步方案,但通常无法结合业务特性进行优化提高性能,redis 本身的数据同步在master同步salve时会导致salve不可用,mysql自身的同步方案性能和稳定性都比较差。这时需要团队亲自制定化数据同步组件。来保证多个机房上的数据全量同步。还可以基于消息队列来实现数据同步,但这会导致额外的带宽占用,更可以搭建专用网络线路解决。无论任何的同步方式,在业务端需要对访问数据库的客户端进行重构使其能够支持读写分离。并且为了防止网络延迟,我们可以在客户端做很多事情,第一,双写:多个机房下允许出现多个Master,那么客户端进行封装在底层将写请求发送给多个Master上。第二:双读或回源读,当读取本机房数据没有读到时,去主机房读取或者根据用户请求解析出数据源在哪个机房然后去读取
post200
发表于 2019-05-20 16:44
分布式存储系统可靠性如何估算?
页:
1
2
3
[4]
5
6
7
8
9
10
11
12
13