1、负载平衡监测
:
负责监控
数据库服务器的状态及
性能,调度依据。
数据处理 : 负责处理从数 据库返回的数据,按一定的方式将数据传送给AP。
数据库管理器 : 负责接收 客户请求队列中的客户请求,调用相应的驱动程序管理器,完成相应的数据库查询任务。
驱动程序管理器 : 负责调 度相应的数据库驱动程序,实现与相应的数据库的连接。
2、 我国分布式数据库系统标准草案中给定的抽象为四层的模式结构: 全局外层、全局概念层、局部概念层和局部内层 。模式与模式之间是映射关系。
3、模式结构
全局外模式(GES):全局外模式即全局用户视图,是分布式数据库的全局用户对分布式数据库的最高层抽象。全局用户使用视图时,不必关心数据的分片和具体的物理分配细节。
全局概念模式(GCS):全局概念模式即全局概念视图,是分布式数据库的整体抽象,包含了全部数据特性和逻辑结构。像集中式数据库中的概念模式一样,是对数据库全体的描述。全局概念模式再经过分片模式和分配模式映射到局部模式。
-
分片模式是描述全局数据的逻辑划分视图。即全局数据逻辑结构根据某种条件的划分为局部数据逻辑结构。每一个逻辑划分形成一个分片。在关系数据库中,一个关系中的一个子关系称该关系的一个片段。
-
分配模式是描述局部数据逻辑的局部物理结构,即划分后的分片的物理分配视图。
局部概念视图(LCS):局部概念模式为局部概念视图,是全局概念模式的子集,用于描述局部场地上的局部数据特征和逻辑结构。当全局数据模型与局部数据模型不同时,还涉及数据模型转换等内容。
局部内模式定义局部物理视图,是对物理数据库的描述,类似集中数据库的内层。
分布式数据库的四层结构及模式定义描述了分布式数据库是一组用网络联结的局部数据库的逻辑集合。它将数据库分为全局数据库和局部数据库。全局数据库到局部数据库由1:N的映射模式描述。全局数据库是虚拟的,由全局概念层描述。局部数据库是全局数据库的内层,由局部概念层和局部内层描述。全局用户只关心全局外层定义的数据库用户视图其内部数据模型的转换、场地分配等由系统自动实现。
4、组件结构
(1)应用处理器(AP)功能
用户接口:检查用户身份,接受用户命令,如:SQL命令。
语义数据控制器:视图管理、安全控制、语义完整性控制(全局概念模式)。这些约束定义在字典中。
全局查询处理器:将用户命令翻译成数据库命令;生成全局查询的分布执行计划;收集局部执行结果并返回给用户。
全局执行监控器(全局事务管理器):调度协调和监视AP和DP之间的分布执行;保证复制数据的一致性;保证全局事务的原子性。
(2)数据处理器DP功能
局部查询处理:实现全局命令到局部命令的转换;访问路径选择器,选择最好的路径执行。
局部恢复管理器:维护本地数据库一致性的故障恢复。
存储管理器:按调度命令访问数据库;控制数据库缓存管理器;返回局部执行结果:保证子事务执行的正确性。
局部事务管理器;以局部子事务为单位调度执行,保证子事务执行的正确性。
局部调度管理器:负责局部场地上的并发控制,按可串行化调度和执行数据操作。
5、DDB和数据库集成系统
对等型模型,又称 P2P 模型,是一种新型的体系结构模型, 面向大范围的多数据资源点的松散耦合。特点:
每个点均可贡献数据,系统资源具有丰富性、多样性:
可直接访问数据源中的数据资源,即时得到最新鲜的数据,不同于如数据仓库等集中的数据资源仓;
采用自组织原则,具有健壮性;每个点可随时加入和退出,系统具有分散性、可扩展性;
以Web上的资源为Peer点,系统部署简单,不需要复杂的框架部署实现。
6、分布式数据库系统分类
分布式数据库系统的分类方法很多。为全面、系统地 对分布式数据库系统进行分类,采用分布式数据库的三个特性( 分布性、异构性、自治性 )组成的三维空间图来描述分布式数据库的类型。三个基本特性:
分布性 是指系统的各组成单元是否位于同一场地上。 分布式数据库系统是物理上分散、逻辑上统一的系统,即具有分布性。而集中式数据库系统集中在一个场地上,所以不具有分布性。
异构性 是指系统的各组成单元是否相同,不同为异构, 相同为同构。异构主要:
✓ 数据异构性: 指数据在格式上、语法和语义上存在 不同。
✓ 数据系统异构性: 指各个场地上的局部数据库系统 是否相同。如:均采用ORACLE数据库系统的同构数据系统,或某些场地采用SYBASE数据库系统,某些场地采用INFORMIX数据库系统的异构系统。
✓ 平台异构性: 指计算机系统是否相同。如:均为微 机系统组成的平台同构系统或由VAX或ALPHA系统等
异构平台组成的系统。
自治性 是指每个场地的独立自主能力。自治性通常 由设计自治性、通讯自治性和执行自治性三方面来描述。根据系统的自治性,可分为 集中式系统、联邦式 系统( Federated DB ) 和 多数据库系统( Multi DB ) 。
✓ 集中式系统 即为传统的数据库系统。
✓ 联邦式系统 :实现需要交互的所有数据库对之 间的一对一连接。
✓ 多数据库系统 :是指若干相关数据库的集合。 各个数据库可以存在于同一场地,也可分布在多个场地。对多数据库系统进行管理的软件称多数据库管理系统,多数据库管理系统是对一组自治的数据库进行管理,并提供透明访问。
7、元数据的管理
数据库系统中采用数据字典存储数据库定义、管理等信息。数据库系统中字典信息分全局字典和局部字典其组织分两种方式:集中式字典和分布式字典。
集中式字典是系统中的字典信息集中存储在一个场地上,进行统一管理。集中式字典维护方便,但会成为系统性能的瓶颈。
分布式字典是将字典中的信息分布在多个场地上存放分布式字典又分复制式分布和非复制式分布。复制式分布是局部字典在多个场地上存在副本。非复制式分布是指全局字典被分散存储在多个场地上,但每个局部字典必保存仅保存在一个场地上。
8、分布式大数据库管理系统
-
GFS 遵从主从式架构,定义了三种角色: client, master,chunkserver。
-
master 维护所有的元数据(metadata),master定期通过心跳 ( HeartBeat ) 消息与 每一个 chunkserver 通信, 给 chunkserver 传 递指令并收集 chunkserver 的当前状态
-
客户与 master的交互只限于对元数据的操作,所有数据方面的通 信都直接和chunkserver联系。
-
HDFS 采取 Master-Slave 架构,包括 一个NameNode和众多的DataNode
-
NameNode 节点管理整个 HDFS 的命 名空间和客户端对集群数据的访问,保证集群中的DataNode正常运行和故障恢复等;
-
DataNode 负责数据的存储和维护, 还负责响应来自 NameNode 的创建、删除和复制数据块的命令;
-
NameNode 依赖于每个 DataNode 的定期心跳(HeartBeat)消息验证和更新元数据。如果NameNode没有收到某个 DataNode 的心跳消息 ,NameNode 将采取修复措施,重新复制在该节点上丢失的块。
-
新加入集群的 DataNode 需要及时与 NameNode保持心跳联系,报告自己的状态和资源使用情况。
-
Bigtable 是在 Google 的三个云 计算组件GFS、WorkQueue、Chubby的基础之上构建的;
-
采用 Master-Slave 体系结构;
-
GFS 用于存储日志文件和数据 文件;
-
WorkQueue 用于处理分布式 系统的任务调度、系统监控和故障处理;
-
Chubby 是一个高可用、序列 化的分布式锁管理器,用于副本管理、服务器管理和子表(Tablet)定位;
-
Cassandra 是由一堆数据库节点共 同构成的一个分布式网络服务。是一种P2P模式的分布式结构化数据存储方案。
-
对一个节点的写操作,会被复制到其 他节点上;对于读操作,会被路由到某个节点上面读取。
-
Facebook 于 2008 将 Cassandra 开源,成为Apache的一个顶级项目。
01 方法实践
02 观点分析
> 国家数据局正式亮相,详解三个关键问题
03 概念解读
> 大数据是什么 | What's the Big Data?
04 职业成长
更多优质内容,持续输出中~
听说你也是做数据的? 👇