概念

协调节点为一种逻辑节点,其中并不保存任何用户数据信息。

协调节点作为数据请求部分的协调者,本身并不参与数据的匹配与读写操作,而仅仅是将请求分发到所需要处理的数据节点。

一般来说,协调节点的处理流程如下:

  • 得到请求
  • 解析请求
  • 本地缓存查询该请求对应集合的信息
  • 如果信息不存在则从编目节点获取
  • 将请求转发至相应的数据节点
  • 从数据节点得到结果
  • 把结果汇总或直接传递给客户端

协调节点与其它节点之间主要使用分区服务端口( SequoiaDB 的 --shardname 参数)进行通讯。

SequoiaDB 中有两类协调节点:

  1. 临时协调节点:通过资源管理节点 sdbcm 建立的协调节点。临时协调节点并不会注册到编目节点中,即该临时的协调节点不能被集群管理。临时协调节点仅用于初始创建 SequoiaDB 集群使用。
  2. 协调节点:通过正常的流程创建的协调节点组中的协调节点。该类协调节点会注册到编目节点中,并且可以被集群管理。

管理协调节点

创建临时协调节点

创建 SequoiaDB 集群时,用户可以在 Sdb Shell 中通过 sdbcm 创建临时协调节点。

  1. 连接到本地的集群管理服务进程 sdbcm

    > var oma = new Oma( "localhost", 11790 )
    
  2. 创建临时协调节点

    > oma.createCoord( 18800, "/opt/sequoiadb/database/coord/18800" )
    
  3. 启动临时协调节点

    oma.startNode( 18800 )
    

Note:

创建临时协调节点可参考 Oma.createCoord()

创建协调节点组

用户在 Sdb Shell 中可以通过临时协调节点可以创建协调节点组。

  1. 连接临时协调节点

    > var db = new Sdb( "localhost", 18800 )
    
  2. 创建协调节点组

    > db.createCoordRG()
    

Note:

  • 创建协调节点组应先在集群中创建有效的编目节点,可参考集群模式

新增协调节点

当集群规模扩大时,协调节点也需要随着规模的增加而进行增加。建议在每台物理机器上都配置一个协调节点。

在 Sdb Shell 中可以通过现有的协调节点组添加新的协调节点(假设有 sdbserver1 和 sdbserver2 两台处于同一个集群的服务器,sdbserver1 中已有协调节点(端口为 11810),现在向 sdbserver2 中添加新的协调节点):

  1. 连接 sdbserver1 的协调节点

    > var db = new Sdb( 'sdbserver1', 11810 )
    
  2. 获取协调节点组

    > var rg = db.getCoordRG()
    

    Note:

    获取协调节点组,可参考 Sdb.getRG()

  3. 在 sdbserver2 中新建协调节点

    > var node = rg.createNode( "sdbserver2", 11810, "/opt/sequoiadb/database/coord/11810" )
    
  4. 启动 sdbserver2 的协调节点

    > node.start()
    

查看协调节点

在 Sdb Shell 中查看协调节点的列表:

> db.getCoordRG().getDetail()

故障恢复

由于协调节点不存在用户数据,因此发生故障后可以直接重新启动,不参与任何额外的故障恢复步骤。

更多内容可点击巨杉数据库官网查看。

SequoiaDB巨杉数据库协调节点相关推荐

  1. SequoiaDB巨杉数据库编目节点

    概念 编目节点是一种逻辑节点,用于保存数据库的元数据信息,而不保存用户数据. 编目节点属于编目分区组(可参考 分区组). 编目节点中包含以下集合空间: SYSCAT: 系统编目集合空间,包含以下系统集 ...

  2. SequoiaDB巨杉数据库数据节点

    概念 数据节点为一种逻辑节点,其中保存用户数据信息. 数据节点中没有专门的编目信息集合,因此第一次访问集合前需要向编目节点请求该集合的元数据信息. 在独立模式中,数据节点为单独的服务提供者,直接与应用 ...

  3. 初步了解SequoiaDB巨杉数据库

    1.SequoiaDB 简介  2.整体架构 3.数据库存储引擎 4.核心特性 SequoiaDB 简介 SequoiaDB 巨杉数据库是一款金融级分布式数据库,主要面对高并发实时处理型场景提供高性能 ...

  4. SequoiaDB 巨杉数据库SDK驱动开发

    SequoiaDB 巨杉数据库为应用提供通过SDK驱动进行数据库操作和集群操作的接口.目前支持SDK驱动开发的语言如下: C 驱动 C++ 驱动 CSharp 驱动 JAVA 驱动 PHP 驱动 Py ...

  5. SequoiaDB 巨杉数据库-MongoDB协议兼容

    MongoDB 是一款开源的非关系型数据库,也是目前最流行的非关系型数据库之一. SequoiaDB 巨杉数据库兼容 MongoDB 的语法和协议,用户可以使用 MongoDB 的驱动访问 Sequo ...

  6. SequoiaDB 巨杉数据库

    如今,大型企业的应用平台正在向微服务架构进行转型.在微服务架构下,应用程序和数据库等底层平台的关系将会被重构,新一代分布式数据库必须支持弹性扩张.资源隔离.多租户.可配置一致性.多模式(支持各类 SQ ...

  7. SequoiaDB巨杉数据库S3实例安装部署

    本章介绍 SequoiaS3 的安装.配置与启动. 安装 SequoiaS3 集成于 SequoiaDB 巨杉数据库的安装包中.SequoiaDB 安装完成后,用户可到安装路径下的 tools/seq ...

  8. SequoiaDB 巨杉数据库 学习-高可用与容灾

    高可用是指数据库的持久性.冗余性和自动故障转移能力.容灾是指在相隔较远的异地,搭建一个完整的集群环境,当一个地方发生灾难停止工作时,可以切换到另一处,使得系统可以正常提供服务. 高可用 高可用是指通过 ...

  9. 【巨杉数据库SequoiaDB】SequoiaDB 巨杉数据库 v3.4 版本正式发布

    深秋时节,SequoiaDB 巨杉数据库在深秋给大家带来了"一把火". SequoiaDB v3.4 正式发布啦! 分布式交易场景性能大幅提升 SequoiaDB 巨杉数据库3.4 ...

最新文章

  1. HDU - 5637 Transform (思维、bfs预处理)
  2. Hibernate之HQL检索(查询)方式
  3. (四)Struts2 架构
  4. jQuery使用CDN加速
  5. Android Studio 之 NDK篇
  6. Keywords Search HDU - 2222(AC自动机模板)
  7. mysql 组合索引 or_Mysql_组合索引和单列索引
  8. 网络爬虫中的验证码识别
  9. 贪心法——最优装载问题
  10. php面试题之三——PHP网络编程(高级部分)
  11. Chrome浏览器上传文件卡死
  12. Springboot+netty实现Web聊天室
  13. 可调直流稳压电源的工作原理以及常见问题
  14. 【转】log4j.properties文件的配置
  15. Android面试题【高级工程师版】
  16. RGB、HSV和Lab颜色空间
  17. C#程序设计之windows应用程序设计基础
  18. Eclipse MyEclipse 代码提交时,让svn忽略classpath、target、.project
  19. js通过class获取元素
  20. 缺芯导致全球汽车减产超一千万辆

热门文章

  1. 科学计算机 标准差,用科学计算器计算方差和标准差
  2. java 腾讯面试题_java腾讯面试题分享,2020年最新java面试题
  3. [学习日记]重构简易RSSREADER的UML类图
  4. 大数据四大阵营之OLTP阵营(中)
  5. 获取TTF里面的字体名称
  6. Spark07:【案例】Transformation和Action
  7. git克隆代码报错remote: HTTP Basic: Access denied fatal: Authentication failed for的解决方案之一
  8. 2022年煤气考试练习题模拟考试平台操作
  9. html css is图片,isbackground
  10. c 汇编语言用标准函数代替,调用C标准库的exit函数