Shared Nothing、Shared Everthting、Shared Disk
数据库构架设计中主要有Shared Everthting、Shared Nothing、和Shared Disk:
1.Shared Everything:一般是针对单个主机,完全透明共享CPU/MEMORY/IO,并行处理能力是最差的,典型的代表SQLServer以及一些用了单节点oracle、mysql等库的系统。以小微型,不需要考虑大并发业务的系统采用的居多。
2.Shared Nothing和Shared Disk是目前常见的分布式数据库典型模型。
先讲Shared Disk,每个结点有自己的CPU和内存,但是共享同一个存储(一般都是FC链路高端存储,现在采用IB交换机模式的也越来越流行了),目前主流如ORACLE的RAC集群和DB2 PureScale集群,这类业务多用于并发比较多的OLTP业务,随着并发量的不断增大,性能也会降低,需要不断的扩充节点数量,以满足需求,当然建设更复杂、维护成本也相当高。
最新Shared Nothing架构下,每个结点都有自己的CPU、内存、存储。跨结点的数据访问通过结点之间的网络通讯来完成。目前有DB2 DPF、Hadoop、带分库分表的Mysql Cluster也是一种,各节点相互独立,各自处理自己的数据,处理后的结果可能向上层汇总或在节点间流转。一些特定时间段内超大并发业务可以通过横向扩张资源做为系统的节点,满足需求,比如说春运火车抢票了,12306系统压力比平时大很多;又比如,最近的明星微博一个动态,立刻引发热搜,导致服务器吃不消,这些都可以在热点时间段租用云服务器资源部署自己的节点,等热点时间过后再收缩节点即可,还有就是11.11这个热点时间淘宝购物狂欢,也一定是需要Shared Nothing架构下的解决方案的。
Shared Nothing 架构,未来的场景会越来越多,越来越流行,因为数据是当前社会的一个重要资源,数据量几何级爆炸增长,数据的清洗、分析、挖掘等等一系列大数据应用,必然会选择成本适当,技术实用的Shared Nothing。这也越来越需要运维人员懂得业务开发,懂得架构设计,能够按照业务需求,设计出一个合理的或水平切分、或垂直切分甚至矩阵分布的数据库架构,来满足未来场景挑战。
---------------------
作者:他乡觅知音
来源:CSDN
原文:https://blog.csdn.net/louisjh/article/details/84291339
版权声明:本文为博主原创文章,转载请附上博文链接!
Shared Nothing、Shared Everthting、Shared Disk的更多相关文章
- sqlplus: error while loading shared libraries: libsqlplus.so: cannot open shared object file
sqlplus: error while loading shared libraries: libsqlplus.so: cannot open shared object file 1. 权限问题 ...
- 磁盘、分区及Linux文件系统 [Disk, Partition, Linux File System]
1.磁盘基础知识 1.1 物理结构 硬盘的物理结构一般由磁头与碟片.电动机.主控芯片与排线等部件组成:当主电动机带动碟片旋转时,副电动机带动一组(磁头)到相对应的碟片上并确定读取正面还是反面的碟面,磁 ...
- 运行编译后的程序报错 error while loading shared libraries: lib*.so: cannot open shared object file: No such file or directory
运行编译后的程序报错 error while loading shared libraries: lib*.so: cannot open shared object file: No such f ...
- ggsci: error while loading shared libraries: libnnz11.so: cannot open shared object file
完整的错误信息如下: ggsci: error while loading shared libraries: libnnz11.so: cannot open shared object file: ...
- 数据库构架设计中的Shared Everthting、Shared Nothing、和Shared Disk
Shared Everthting:一般是针对单个主机,完全透明共享CPU/MEMORY/IO,并行处理能力是最差的,典型的代表SQLServer Shared Disk:各个处理单元使用自己的私有 ...
- PostgreSQL高可用性、负载均衡、复制与集群方案介绍
目录[-] 一.高可用性.负载均衡.复制的几个方案比较: 二.多节点集群方案比较 9.3官方文档(中文):http://58.58.27.50:8079/doc/html/9.3.1_zh/high- ...
- Python学习笔记——基础篇2【第三周】——计数器、有序字典、元组、单(双)向队列、深浅拷贝、函数、装饰器
目录 1.Python计数器Counter 2.Python有序字典OrderredDict 3.Python默认字典default 4.python可命名元组namedtuple 5.Python双 ...
- oracle 数据库、实例、服务名、SID
参考:http://www.zhetao.com/content240 在实际的开发应用中,关于Oracle数据库,经常听见有人说建立一个数据库,建立一个Instance,启动一个Instance之类 ...
- Hive、Spark SQL、Impala比较
Hive.Spark SQL.Impala比较 Hive.Spark SQL和Impala三种分布式SQL查询引擎都是SQL-on-Hadoop解决方案,但又各有特点.前面已经讨论了Hi ...
随机推荐
- python 之 并发编程(进程池与线程池、同步异步阻塞非阻塞、线程queue)
9.11 进程池与线程池 池子使用来限制并发的任务数目,限制我们的计算机在一个自己可承受的范围内去并发地执行任务 池子内什么时候装进程:并发的任务属于计算密集型 池子内什么时候装线程:并发的任务属于I ...
- TZOJ5703: C++实验:学生成绩类的实现
#include<iostream> #include<string> #include<stdio.h> using namespace std; class s ...
- go语言实现链式栈
haa哈哈== import "errors" var ( // ErrEmpty 栈为空 ErrEmpty = errors.New("stack is empty&q ...
- javascript之防抖与节流
防抖 你是否在日常开发中遇到一个问题,在滚动事件中需要做个复杂计算或者实现一个按钮的防二次点击操作. 这些需求都可以通过函数防抖动来实现.尤其是第一个需求,如果在频繁的事件回调中做复杂计算,很有可能导 ...
- Java开发Hbase示例
Java开发Hbase示例 使用Hbase操作数据 package com.sunteng.clickidc.test; import java.io.IOException; import java ...
- js的for循环中出现异步函数,回调引用的循环值总是最后一步的值?
这几天跟着视频学习node.js,碰到很多的异步函数的问题,现在将for循环中出现的异步函数回调值的问题总结如下: 具体问题是关于遍历文件夹中的子文件夹的,for循环包裹异步函数的代码: for (v ...
- C# 阿拉伯数字转换为中文数字/中文数字转换为阿拉伯数字
项目中经常会格式化数据,转换数字的使用情况比较多,记录一下数字转换的方法! 如果需要转换为繁体中文,将数组里的汉字换成繁体中文即可. 1.阿拉伯数字转换为中文数字 /// <summary> ...
- 基于【 bug解决】一 || mysql的ONLY_FULL_GROUP_BY导致的sql语句错误
一.Mysql错误: In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated ...
- iOS - SceneKit 3D引擎初探
最近到处搜集资料研究3D最后还是决定锁定OC框架,找到的学习资料随后慢慢整理 SceneKit 是一个OC 框架,开始之前,先熟悉一下SceneKit 的三维坐标系: 很清楚的看到,SceneKit ...
- TortoiseSVN-1.7.12.24070-x64-svn-1.7.9安装包和汉化包
链接:https://pan.baidu.com/s/1NbrQW44N_kTh7VN0Fz0zVA 提取码:nhd9 先安装TortoiseSVN-1.7.12.24070-x64-svn-1.7. ...