当前位置: 首页 > wzjs >正文

天津网站的优化宝安设计网站建设

天津网站的优化,宝安设计网站建设,pos机网站模板,外贸销售怎么找客户本节介绍 TDengine Enterprise 中提供的高阶集群维护手段,能够使 TDengine 集群长期运行得更健壮和高效。 节点管理 如何管理集群节点请参考 节点管理 数据重整 TDengine 面向多种写入场景,而很多写入场景下,TDengine 的存储会导致数据存…

在这里插入图片描述

本节介绍 TDengine Enterprise 中提供的高阶集群维护手段,能够使 TDengine 集群长期运行得更健壮和高效。

节点管理

如何管理集群节点请参考 节点管理

数据重整

TDengine 面向多种写入场景,而很多写入场景下,TDengine 的存储会导致数据存储的放大或数据文件的空洞等。这一方面影响数据的存储效率,另一方面也会影响查询效率。为了解决上述问题,TDengine 企业版提供了对数据的重整功能,即 data compact 功能,将存储的数据文件重新整理,删除文件空洞和无效数据,提高数据的组织度,从而提高存储和查询的效率。数据重整功能在 3.0.3.0 版本第一次发布,此后又经过了多次迭代优化,建议使用最新版本。

语法

compact DATABASE db_name [start with 'XXXX'] [end with 'YYYY'] [META_ONLY];
compact [db_name.]vgroups IN (vgroup_id1, vgroup_id2, ...) [start with 'XXXX'] [end with 'YYYY'] [META_ONLY];
show compacts;
show compact compact_id;
kill compact compact_id;

效果

  • 扫描并压缩指定的 DB 中所有 vgroup 中 vnode 的所有数据文件
  • 扫描并压缩 DB 中指定的 vgroup 列表中 vnode 的所有数据文件,若 db_name 为空,则默认为当前数据库
  • compact 会删除被删除数据以及被删除的表的数据
  • compact 会合并多个 STT 文件
  • 可通过 start with 关键字指定 compact 数据的起始时间
  • 可通过 end with 关键字指定 compact 数据的终止时间
  • 可通过 META_ONLY 关键字指定只 compact 元数据。元数据默认情况下不会 compact。元数据压缩会阻塞写入和查询,且被压缩数据库应该停止写入和查询
  • compact 命令会返回 compact 任务的 ID
  • compact 任务会在后台异步执行,可以通过 show compacts 命令查看 compact 任务的进度
  • show 命令会返回 compact 任务的 ID,可以通过 kill compact 命令终止 compact 任务

补充说明

  • compact 为异步,执行 compact 命令后不会等 compact 结束就会返回。如果上一个 compact 没有完成则再发起一个 compact 任务,则会等上一个任务完成后再返回。
  • compact 可能阻塞写入,尤其是在 stt_trigger = 1 的数据库中,但不阻塞查询。

vgroup leader 再平衡

当多副本集群中的一个或多个节点因为升级或其它原因而重启后,有可能出现集群中各个 dnode 负载不均衡的现象,极端情况下会出现所有 vgroup 的 leader 都位于同一个 dnode 的情况。为了解决这个问题,可以使用下面的命令,该命令在 3.0.4.0 版本中首次发布,建议尽可能使用最新版本。

balance vgroup leader; # 再平衡所有 vgroup 的 leader
balance vgroup leader on <vgroup_id>; # 再平衡一个 vgroup 的 leader
balance vgroup leader database <database_name>; # 再平衡一个 database 内所有 vgroup 的 leader

功能

尝试让一个或所有 vgroup 的 leader 在各自的 replica 节点上均匀分布。这个命令会让 vgroup 强制重新选举,通过重新选举,在选举的过程中,改变 vgroup 的 leader,通过这个方式,最终让 leader 均匀分布。

注意

vgroup 选举本身带有随机性,所以通过选举的重新分布产生的均匀分布也是带有一定的概率,不会完全的均匀。该命令的副作用是影响查询和写入,在 vgroup 重新选举时,从开始选举到选举出新的 leader 这段时间,这 个 vgroup 无法写入和查询。选举过程一般在秒级完成。所有的 vgroup 会依次逐个重新选举。

恢复数据节点

当集群中的某个数据节点(dnode)的数据全部丢失或被破坏,比如磁盘损坏或者目录被误删除,可以通过 restore dnode 命令来恢复该数据节点上的部分或全部逻辑节点,该功能依赖多副本中的其它副本进行数据复制,所以只在集群中 dnode 数量大于等于 3 且副本数为 3 的情况下能够工作。

restore dnode <dnode_id># 恢复dnode上的mnode,所有vnode和qnode
restore mnode on dnode <dnode_id># 恢复dnode上的mnode
restore vnode on dnode <dnode_id># 恢复dnode上的所有vnode
restore qnode on dnode <dnode_id># 恢复dnode上的qnode

限制

  • 该功能是基于已有的复制功能的恢复,不是灾难恢复或者备份恢复,所以对于要恢复的 mnode 和 vnode 来说,使用该命令的前提是还存在该 mnode 或 vnode 的其它两个副本仍然能够正常工作。
  • 该命令不能修复数据目录中的个别文件的损坏或者丢失。例如,如果某个 mnode 或者 vnode 中的个别文件或数据损坏,无法单独恢复损坏的某个文件或者某块数据。此时,可以选择将该 mnode/vnode 的数据全部清空再进行恢复。

分裂虚拟组

当一个 vgroup 因为子表数过多而导致 CPU 或 Disk 资源使用量负载过高时,增加 dnode 节点后,可通过 split vgroup 命令把该 vgroup 分裂为两个虚拟组。分裂完成后,新产生的两个 vgroup 承担原来由一个 vgroup 提供的读写服务。该命令在 3.0.6.0 版本第一次发布,建议尽可能使用最新版本。

split vgroup <vgroup_id>

注意

  • 单副本库虚拟组,在分裂完成后,历史时序数据总磁盘空间使用量,可能会翻倍。所以,在执行该操作之前,通过增加 dnode 节点方式,确保集群中有足够的 CPU 和磁盘资源,避免资源不足现象发生。
  • 该命令为 DB 级事务;执行过程,当前 DB 的其它管理事务将会被拒绝。集群中,其它 DB 不受影响。
  • 分裂任务执行过程中,可持续提供读写服务;期间,可能存在可感知的短暂的读写业务中断。
  • 在分裂过程中,不支持流和订阅。分裂结束后,历史 WAL 会清空。
  • 分裂过程中,可支持节点宕机重启容错;但不支持节点磁盘故障容错。

在线更新集群配置

从 3.1.1.0 版本开始,TDengine Enterprise 支持在线热更新 supportVnodes 这个很重要的 dnode 配置参数。这个参数的原始配置方式是在 taos.cfg 配置文件中,表示该 dnode 能够支持的最大的 vnode 数量。当创建一个数据库时需要分配新的 vnode,当删除一个数据库时其 vnode 都会被销毁。

如果通过在线更新或配置文件方式设置的 supportVnodes 小于 dnode 当前已经实际存在的 vnode 数量,已经存在的 vnode 不会受影响。但当尝试创建新的 database 时,是否能够创建成功则仍然受实际生效的 supportVnodes 参数决定。

双副本

双副本是一种特殊的数据库高可用配置,本节对它的使用和维护操作进行特别说明。该功能在 3.3.0.0 版本中第一次发布,建议尽可能使用最新版本。

查看 Vgroups 的状态

通过以下 SQL 命令参看双副本数据库中各 vgroup 的状态:

show arbgroups;select * from information_schema.ins_arbgroups;db_name             |  vgroup_id  | v1_dnode | v2_dnode | is_sync | assigned_dnode |         assigned_token         |
=================================================================================================================================db                             |           2 |        2 |        3 |       0 | NULL           | NULL                           |db                             |           3 |        1 |        2 |       0 |              1 | d1#g3#1714119404630#663        |db                             |           4 |        1 |        3 |       1 | NULL           | NULL                           |

is_sync 有以下两种取值:

  • 0: vgroup 数据未达成同步。在此状态下,如果 vgroup 中的某一 vnode 不可访问,另一个 vnode 无法被指定为 AssignedLeader role,该 vgroup 将无法提供服务。
  • 1: vgroup 数据达成同步。在此状态下,如果 vgroup 中的某一 vnode 不可访问,另一个 vnode 可以被指定为 AssignedLeader role,该 vgroup 可以继续提供服务。

assigned_dnode:

  • 标识被指定为 AssignedLeader 的 vnode 的 DnodeId
  • 未指定 AssignedLeader 时,该列显示 NULL

assigned_token:

  • 标识被指定为 AssignedLeader 的 vnode 的 Token
  • 未指定 AssignedLeader 时,该列显示 NULL

最佳实践

  1. 全新部署

双副本的主要价值在于节省存储成本的同时能够有一定的高可用和高可靠能力。在实践中,推荐配置为:

  • N 节点集群(其中 N>=3)
  • 其中 N-1 个 dnode 负责存储时序数据
  • 第 N 个 dnode 不参与时序数据的存储和读取,即其上不保存副本;可以通过 supportVnodes 这个参数为 0 来实现这个目标
  • 不存储数据副本的 dnode 对 CPU/Memory 资源的占用也较低,可以使用较低配置服务器
  1. 从单副本升级

假定已经有一个单副本集群,其结点数为 N (N>=1),欲将其升级为双副本集群,升级后需要保证 N>=3,且新加入的某个节点的 supportVnodes 参数配置为 0。在集群升级完成后使用 alter database replica 2 的命令修改某个特定数据库的副本数。

访问官网

更多内容欢迎访问 TDengine 官网

相关文章

  1. TDengine 中如何部署集群
  2. TDengine 集群中节点管理

文章转载自:

http://mu4Z2jrh.wnjwb.cn
http://DLEbqlNY.wnjwb.cn
http://pTkTI1ti.wnjwb.cn
http://dIi4oG3B.wnjwb.cn
http://3uqECuNL.wnjwb.cn
http://SuJ2hjei.wnjwb.cn
http://j4xAJJYs.wnjwb.cn
http://1pDm4oDU.wnjwb.cn
http://U9AKsnRJ.wnjwb.cn
http://mvvEUiQ5.wnjwb.cn
http://4Yx5TuSO.wnjwb.cn
http://ei1LzXtw.wnjwb.cn
http://qlRsjsw2.wnjwb.cn
http://O1h6Djfh.wnjwb.cn
http://PzxFkgUw.wnjwb.cn
http://1SCAssXG.wnjwb.cn
http://JkLd9HZs.wnjwb.cn
http://hQWI9WYh.wnjwb.cn
http://iQIFHB6u.wnjwb.cn
http://1pAPLRcx.wnjwb.cn
http://e7flEwQg.wnjwb.cn
http://bH8xvACR.wnjwb.cn
http://FqckyoxF.wnjwb.cn
http://n41AkaAd.wnjwb.cn
http://96jM8ZTx.wnjwb.cn
http://aKzEvmto.wnjwb.cn
http://7PiFNqvN.wnjwb.cn
http://7wTr6b4X.wnjwb.cn
http://ovSz4Lxt.wnjwb.cn
http://kNnDuhqg.wnjwb.cn
http://www.dtcms.com/wzjs/629052.html

相关文章:

  • 百度免费网站申请注册网站开发要学哪些知识
  • 做调查挣钱的网站自己建站流程
  • 深圳商业网站建设系统济宁苍南网站建设
  • 如何查询某个网站的设计公司网络营销出来做什么
  • asp access网站建设源代码如何网上开店卖东西
  • 中国专业做鞋子的网站如何把国外的网站在国内做镜像
  • 课外辅导东莞网站建设技术支持年会策划方案
  • 一个虚拟主机怎么做多个网站个人网站名称
  • wordpress写api接口网站优化的方式
  • 曲靖做网站公司郑州货拉拉
  • 代做毕业设计网站大学网站建设排名
  • 视频网站怎么做的反爬虫电商网站功能模块
  • 莱特币做空 网站南昌租房网
  • 找兼职做网站建设郑州高端网站定制公司
  • 昆山网站制作 微博png免费素材网站
  • 如何自己制作一个网站网站建设合作方案
  • 做特卖的网站网站底部菜单
  • 创建网站怎么赚钱的网页设计个人简介代码
  • 网站建设工作流程html阿里云 wordpress 权限
  • 百度统计 wordpress 插件如何做好seo
  • 专业建站开发通州优化公司
  • 如何在网站中做公示信息低价网站备案
  • wordpress 水果主题seo优化网站优化
  • 东阳便宜自适应网站建设优惠网站建设目标计划书
  • 乐山建设企业网站好的wordpress企业模板下载
  • 计算机网站开发要考什么证电脑网页打不开怎么回事
  • 网站建设合同副本红色主题网站模板
  • 官方网站建设方法绍兴网站建设技术外包
  • wordpress一年后续费自己怎么去做seo网站推广?
  • 中小学网站建站模板东莞商业网站建设常识