Shared Everthting、Shared Nothing、和Shared Disk

2024-06-07 07:38
文章标签 shared disk nothing everthting

本文主要是介绍Shared Everthting、Shared Nothing、和Shared Disk,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

数据库构架设计中主要有Shared Everthting、Shared Nothing、和Shared Disk:

 

Shared Everthting:一般是针对单个主机,完全透明共享CPU/MEMORY/IO,并行处理能力是最差的,典型的代表SQLServer

 

Shared Disk:各个处理单元使用自己的私有 CPU和Memory,共享磁盘系统。典型的代表Oracle Rac, 它是数据共享,可通过增加节点来提高并行处理的能力,扩展能力较好。其类似于SMP(对称多处理)模式,但是当存储器接口达到饱和的时候,增加节点并不能获得更高的性能 。

 

Shared Nothing:各个处理单元都有自己私有的CPU/内存/硬盘等,不存在共享资源,类似于MPP(大规模并行处理)模式,各处理单元之间通过协议通信,并行处理和扩展能力更好。典型代表greenplum和hadoop ,各节点相互独立,各自处理自己的数据,处理后的结果可能向上层汇总或在节点间流转。

我们常说的 Sharding 其实就是Share Nothing架构,它是把某个表从物理存储上被水平分割,并分配给多台服务器(或多个实例),每台服务器可以独立工作,具备共同的schema,比如MySQL ProxyGoogle的各种架构,只需增加服务器数就可以增加处理能力和容量。

 

这篇关于Shared Everthting、Shared Nothing、和Shared Disk的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1038553

相关文章

Failed to load the JNI shared library D:\Program Files\Java\jdk1.5.0_08\bin\..\jre\bin\client\jvm.d

原因是 (外形类型向日葵) eclips要求jdk最低的版本为1.7以上

error while loading shared libraries: xxx.so.x错误的原因和解决办法----笛风读书笔记系列

读书笔记系列之:error while loading shared libraries: xxx.so.x"错误的原因和解决办法

libcudart.so.9.0: cannot open shared object file: No such file or directory

使用torch 或者 torchvision的时候,报错:libcudart.so.9.0: cannot open shared object file: No such file or directory 经过gg一下,发现这个错误是 没有正确安装 英伟达的 CUDA 9 工具包。 但我一想 不对!我是服务器上根本没有GPU 根本不需要安装cuda啊! 后来torch官网发现,必须专门指

[28期] Nothing 的项目感想(success and fail )

项目感想 从开始的设计来说吧,自己的问题主要出现在设计阶段,开始设计的时候对这个项目还不熟悉,因为很少用商城,对商城的具体流程不清楚,就看了很多开源的商城,还有网上大型的商城,但是在数据库设计过程中还是出现了几个问题。 后台设计 1. 订单模块是自己需求设计中最失败的地方,当时想的是把用户购买的商品用一个字符串存储起来,n件商品就需要一个字符串,一条记录就能搞定,不用想常规方法用几条记录

shared_ptr 智能指针 极简火速入门

综述:     new的方式,众所皆知,申请的空间在堆区,需要自己释放,而智能指针,通过系统维护,虽然也在堆区申请可空间,但是无需自己释放,从而完全避免了因忘记释放而造成的内存泄露,故墙裂建议用new的地方全部换成shared_ptr。 注:shared_ptr主要用于对象,以下示例代码用int和string是为了方便。 #include <tr1/memory>

SQLITE写入大量大数据时,报错ERR 11:database disk image is malformed

初始目的:往SQLITE数据库中,加入2K条人员的数据,人员数据包括:人员信息、人员图片、人员其他图片信息 准备工作:   把sqlite3.exe,sqlite3.dll,test.db,insert.bat放在同一个目录下,由于虚拟机操作,我放在了C盘根目录下 尝试方法: 1-由于SQLITE不支持循环操作,使用批处理文件,循环加入数据   批处理文件为: @ECHO OFF

memory动态内存管理学习之shared_ptr

此头文件是动态内存管理库的一部分。std::shared_ptr 是一种通过指针保持对象共享所有权的智能指针。多个 shared_ptr 对象可持有同一对象。下列情况之一出现时销毁对象并解分配其内存: 最后剩下的持有对象的 shared_ptr 被销毁;最后剩下的持有对象的 shared_ptr 被通过 operator= 或 reset() 赋值为另一指针。 成员函数 (构造函数) 构造

ubnutu server下openssl源码的编译与安装(CVE-2021-3712,libssl.so.3: cannot open shared object file)

测试服务器ubuntu server 20LTS openssl ubuntu原版本号 OpenSSL 1.1.1f 31 Mar 2020 拉源码,耗时两分钟(测试环境) git clone git://git.openssl.org/openssl.git 预编译,耗时十几秒 ./Configure 编译,耗时五分钟 make 测试 Result: PASS 编译,耗时三

java程序监控linux服务器硬件,cpu、mem、disk等

实现 使用Oshi和Hutool工具包1、pom依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>com.github.oshi</groupId>

boost 智能指针auto_ptr scoped_ptr shared_ptr scoped_array shared_array 总结

shared_ptr<T> 内部维护一个引用计数器来判断此指针是不是需要被释放。是boost中最常用的智能指针了。 scoped_ptr<t> 当这个指针的作用域消失之后自动释放 intrusive_ptr<T> 也维护一个引用计数器,比shared_ptr有更好的性能。但是要求T自己提供这个计数器。 weak_ptr<T> 弱指针,要和share