- 博客(597)
- 收藏
- 关注
原创 028、架构_高可用_主从原理
MySQL异步复制的过程并不会验证从库接收binlog是否完成,因此在故障场景下可能会出现从库没有接收到主库发送过来的binlog日志,导致主库从库数据不一致,甚至会出现数据丢失的可能。如果在等待过程中,等待时间已经超过了设置的超时时间,没有任何一个从节点通知当前事务,那么此时主库会自动转换为异步复制,当至少一个半同步从节点赶上来时,主库便会自动转换为半同步方式的复制。MySQL主从复制是一个异步的复制过程,主库发送更新事件到从库,从库读取更新记录,并执行更新记录,使得从库的内容与主库保持一致。
2024-09-02 20:51:42
291
原创 029、架构_高可用_水位和分组
GoldenDB 的高低水位是以 TEAM 作为基础的水位计数单位的。针对单个 TEAM 而言,如果TEAM 内备机的响应数满足 TEAM 内配置的响应数要求,那么这个 TEAM 可以被计为一个水位。针对单个分片而言,满足高水位则分片工作正常,不会产生告警。如果水位处于高低水位之间,分片仍能正常工作,但是会有水位处于高低水位之间的告警产生。如果分片处于低水位,那么该分片只读甚至不可用。
2024-09-02 20:50:03
433
原创 027、架构_资源_GTM
1. 新增 GTM 实例后,需手动新增 GTM team 且主 GTM 可用,状态不可用则无法绑定租户,且无法重绑定此 GTM 集群。3. 点 击 全新安装,选择是否执行系统参数模板、GTM 规格、GTM 个数,等待规划完毕,单击确定,进入 GTM 全新安装。新增GTM集群,与租户相绑定,可查看绑定租户与配置集群参数设置,租户可重绑定其他正常可用的GTM集群。系统级GTM:默认的GTM,当创建分片集群时,如果不创建实例级GTM,则会用系统级GTM。3. 单击待管理 GTM 节点,进入 Team 管理界面。
2024-09-02 10:23:50
290
原创 026、架构_资源_LoadServer
此页面展示 Loadserver 节点的 IP、RG、AZ、运行状态。此页面也可以新增 Loadserver 节点。1. 选择菜单[资源管理→集群管理→Loadserver],进入 Loadserver 列表界面。2. 点击新增,弹出扩容弹窗,填写基础配置,例如 RG , AZ 等。6. Loadserver 页面展示,安装成功后的详细信息。4. 点击下一步,展示扩容的进度,若过程失败,有重试按钮。3. 点击下一步,填写新增 loadserver 配置。安装新的 Loadserver 节点。
2024-09-02 10:18:28
128
原创 025、架构_资源_Manager
多个管理节点组成管理节点集群,实现管理节点高可用。管理节点集群中,RDB 节点都会启动,它们采用主从复制模式实现数据同步;当管理节点无法访问,将执行强制删除,若删除后,不继续使用该主机,则需要在“资源管理-主机管理-主机列表”页面,找到该主机,选择“更多-强制删除”移除该主机。4. 点击下一步,开始安装大数据组件及管理节点,失败则有错误信息及重试按钮。6. 点击下一步,展示接入流程,若过程失败,有重试按钮。选择菜单 [资源管理→集群管理],进入集群管理界面。安装新的管理节点,并加入管理节点集群。
2024-09-02 10:17:47
112
原创 024、架构_资源_主机
在勾选主机信息前的方框后,可以批量删除所有被勾选的主机。2. 输入需要查询的主机信息,包括主机名称、AZ、IP、状态、标签等信息,点击查询 按钮进行查询。说明:该界面支持批量添加主机,选中批量添加,可一次性添加多台主机,参数设置和单个添加方式相同。在主机管理界面,可查看 GoldenDB 使用的主机信息,可对主机执行新增、编辑、删除操作。2. 输入安装目录、数据目录、主机标签、规格标签等信息,点击 确定 按钮进行保存。1. 单击对应主机的 详情 按钮,切换到环境数据页签,即可查看主机环境数据。
2024-09-02 10:16:38
100
原创 023、架构_资源_AZ&RG
AZ 优先级全局有一个默认设置,在 AZ 管理中设置,它以 RG 为粒度设置该 RG 下的多个 AZ 之间的优先级。在 Insight 的资源管理菜单下,可对 AZ 进行管理,包括 AZ 的增加、修改、删除 操作。步骤 在 RG 列表中,单击左侧三角按钮,展开 RG ,可看到归属该 RG 的 AZ 列表。进入 RG&AZ列表 管理界面后,单击 新增RG 按钮,弹出新增 RG 窗口。在RG所在行,单击 新增AZ 按钮,弹出新增 AZ 窗口。在 AZ 列表中,可对 AZ 执行编辑或删除操作。
2024-09-02 10:15:52
114
原创 022、架构_配置文件_参数管理
点击任务结果后,可按条件查询参数比对详情,同时可以按照查询条件导出 excel 格式的参数比对结果。选择菜单[资源管理→参数管理→参数配置→参数可见性配置],切换到 参数可见性配置页签。点击任务详情后,可按条件查询参数比对详情,同时可以按照查询条件导出参数比对结果。选择菜单[资源管理→参数管理→参数配置→修改历史],切换到 修改历史 页签。选择菜单[资源管理→参数管理→参数配置→参数列表],进入 参数列表 界面。选择菜单[资源管理→参数管理→参数模板],进入参数模板界面。
2024-09-02 09:45:09
89
原创 009、架构_分布式事务
如果分布式事务涉及的数据节点提交部分成功部分失败,要如何保证一致性?计算节点触发自动补偿机制---已提交事务回滚,让已成功提交的数据节点回滚更新前的状态。隔离级别说明读UR(uncommitted read)未提交读,即中间件不做任何分布式事务控制,业务要么允许脏读,要么不存在读的时候同时写不需要查询活跃GTID列表不需要检查活跃事务写SW(single write)不存在多个事务同时写相同的数据,不需要分布式事务控制不需要select for update不需要查询活跃GTID列表。
2024-08-27 17:47:52
256
原创 008、架构_MDS
流程图MDS处理新增集群:流程图MDS处理集群组建:流程图新增CN计算节点:流程图MDS处理CN节点连接实例绑定:。
2024-08-27 17:06:52
311
原创 006、架构_数据节点
DN节点包含进程dbagent进程:主要提供数据节点高可用、数据导入导出、数据备份恢复、事务一致性、运维类功能、集群的扩缩容、卸数等功能;MySQL进程:主要提供数据一致性、分组管理、快同步复制、高低水位等;Loadserver进程:主要负责数据重分布当中DB上分发,包括数据文件拆分、分发、删除表、获取sql语句执行节点;ommAgent。
2024-08-27 16:37:12
254
原创 005、架构_计算节点
数据区为一条链路的相关信息包括链路上的事务信息、 语句信息等预留了空间。整个事务期间,后续SQL处理时,直接使用conn1、conn2,不必再向连接池重新获取链路;CN启动时会通过元数据管理线程从RDB获取元数据信息,存放在本地,对应内存区为元数据缓存区;例:G1链路为conn1,G2链路为conn2;收到执行线程请求,根据请求的事务号,找到对应链路conn1和conn2。在他CN执行DDL时,启动元数据变更,包含:数据字典、管理元数据;后端侦听线程组主要监听后端链路消息,也分为:监听线程与工作线程。
2024-08-27 10:14:13
238
原创 004、架构_详解(重点)
处理2表关联查询,且2表都有ID字段,希望查询两表中ID值相等的记录。假如ID为2,此时中间件可按照T1表的规则将ID为2的记录查询,再按照T2表的规则将ID为2的记录查询,得到两者数据后,再做数据合并处理。比如DB1发生异常,这时在DB1的备中寻找一个数据完全一致的,将其提升为新的主机,此后CN将向这个新的主DB发送请求,这样一组主备机被称为一个group。由于已提交事务回滚基于binlog,具体的实现方式是,在每张表中增加一个内部列,来保存GTID值,在事务执行时,将GTID列更新为本事务的GTID。
2024-08-27 06:20:32
378
原创 021、架构_配置文件_InsightServer
写入文件定时任务执行时间(默认每天2点33分执行)若0点-9点执行是写入前一天的数据,其他时间为当天数据。定时清理任务执行时间,遵循cron语法,这里默认是每天1点33分执行。指定合法写入文件的路径,不配置为空时默认是。首字母可以大写以及整个单词可以大写。指定合法文件名,不能包含非法字符。需要输出日志文件的时间段,格式。定时写入和清理任务开关,只能为。单次写入日志文件的数据量,最小。日志文件字段分隔符,默认竖线。分隔,有且只有一个时间段,默认值:0331**?默认值:0332**?写入文件单个文件大小。
2024-08-25 12:34:56
120
原创 020、架构_配置文件_LDS(loadserver.ini)
该配置文件中的参数在后台配置,两种生效方式:*所有参数重启生效。配置文件“loadserver.ini”用于配置LoadServer模块运行时参数。配置文件格式一,IP地址进行映射,服务端口不变,在非注释行第一行配置mapping_type=1792。配置文件格式二,IP地址进行和服务端口都映射,在非注释行第一行配置mapping_type=0。“os.ini”配置文件说明、生效方式/修改方式参见“os.ini”。配置错误,进程退出。配置错误,进程退出。配置错误,进程退出。配置错误,使用默认值。
2024-08-25 12:33:52
204
原创 019、架构_配置文件_os.ini
start配置为1时,请按配置参考配置,并确保配置的端口没有被其他进程使用;start配置为1时,请按配置参考配置,并确保配置的端口没有被其他进程使用;start配置为1时,请按配置参考配置,并确保配置的端口没有被其他进程使用;start配置为1时,请按配置参考配置,并确保配置的端口没有被其他进程使用;start配置为1时,请按配置参考配置,并确保配置的端口没有被其他进程使用;start配置为1时,请按配置参考配置,并确保配置的端口没有被其他进程使用;配置错误其他网元不能正确向CN建链,不能正常提供服务。
2024-08-25 12:31:58
173
原创 017、架构_配置文件_数据节点(dbagent.ini)
文件说明配置文件“dbagent.ini”配置DBAgent模块运行时参数,文件位于用户“~/etc”目录下,配置文件分为:*[dbagent]段,配置DBAgent运行时参数。*[redistribute]段,配置DBAgent运行时重分布参数*[log]段,配置DBAgent运行时日志级别参数*[alarm]段,配置DBAgent运行时告警参数*[monitor]段,配置DBAgent运行时监控参数*[statistic]段,配置DBAgent运行时统计项上报参数*[consistency_check]
2024-08-25 12:29:35
244
原创 016、架构_配置文件_管理节点(clustermanager.ini)
配置文件“clustermanager.ini”用于设置ClusterManager运行时需要的参数,所有参数都配置在clustermanager段中。该配置文件中的参数在后台配置,两种生效方式:*所有参数重启生效。配置为其它值,按时间从最旧的副本开始清理直至达到此空间占比。os.ini配置文件说明、生效方式/修改方式参见“os.ini”。,如果大于次数,则将失败的信息发送给数据库,否则不发送。强制从元数据服务器获取数据,失败后重试间隔时间。:启用冷备份主服务器和还原从服务器,闪回表副本清理超期时间。
2024-08-25 12:25:47
213
原创 015、架构_配置文件_管理节点(proxymanager.ini)
该配置文件中的参数在后台配置,两种生效方式:*所有参数重启生效。*部分参数可以使用工具dbtool动态生效。动态生效命令为:dbtool-pm-load-config。配置文件“proxymanager.ini”用于设置元数据管理模块的信息。文件路径为“~/etc”。配置文件“proxymanager.ini”是普通的文本文件。默认值proxymanager-alarmconfutf8.txt。配置错误或不配置,PM无法连接MDS,无法服务。获取元数据失败超时处理时间。异常时请求启动对等回滚。
2024-08-25 11:45:33
87
原创 014、架构_配置文件_管理节点(metadataserver.ini)
配置文件“metadataserver.ini”用于设置元数据管理模块的信息。,用户HOME目录为/home/manager,配置文件目录为/home/manager/etc/。配置错误或不配置MDS无法向zookeeper服务端读写数据。取值范围[0~1]。“os.ini”配置文件说明、生效方式/修改方式参见。metadataserver段配置项说明参见。metadataserver段配置项说明”。clustermanager段配置项说明”。proxymanager段配置项说明”。
2024-08-25 11:43:24
178
原创 013、架构_配置文件_GTM(gtm.ini)
配置文件“gtm.ini”用于设置GTM高可用、GTID持久化、GTID同步、sequence持久化、sequence同步和链路信息等参数。文件路径为“~/etc/gtm.ini”。该配置文件中的参数在后台配置,两种生效方式:*所有参数重启生效。GTM的默认安装用户为gtm,gtm用户HOME目录为/home/gtm,配置文件目录为/home/gtm/etc/。默认值:/home/zxgtm/lib/libzookeeper_mt.so.2.0.0。默认值:~/lib/librdkafka.so.1。
2024-08-25 08:41:24
103
原创 012、架构_配置文件_计算节点(dis_info_load.ini)
dis_info_load.ini配置文件中TABLE_*段(包括TABLE_0、TABLE_1、TABLE_2、TABLE_3、TABLE_4、TABLE_5、TABLE_6、TABLE_7、TABLE_8)下所有配置项的说明参见下表。dis_info_load.ini配置文件中多个TABLE配置段,各TABLE配置段种配置项相同。配置为BenchMark测试使用的表名,例:table_name=warehouse。配置为表所在的集群id即可,例:cluster_id=1。指定加载分发信息表的个数。
2024-08-25 08:39:22
82
原创 011、架构_配置文件_计算节点(proxy.ini)
值与标准 My SQL 的 sql_m ode 值范围相 同,为兼容性 ,新添加了如 下几个值:1. EMPTY_STRI NG_IS_NULL ,兼容 Oracl e,将空串转 换为 NULL 值。支持以下事件 ,多个事件配 置时按逗号分 隔事件:STA RTUP,CONNE CT,QUERY_D DL,QUERY_D ML_NO_SELE CT,CONFIGU RE,QUERY,Q UERY_DML,Q UERY_DCL。取 值 0 或 1,其 中,1:获取失 败后,持续请 求获取直至成 功。
2024-08-25 08:28:36
234
原创 003、架构_指标限制
选择组件类型,配置该组件分配的 CPU 逻辑核数、内存大小、内存超出控制策略以及磁盘空间大小,单击 确定 按钮。选择组件类型,配置该组件分配的 CPU 逻辑核数、内存大小、存储资源类型以及持久化目录,单击 确定 按钮。对实例安装过程中涉及到的计算节点、数据节点以及 GTM 组件规格进行新增或配置操作。对实例安装过程中涉及到的计算节点、数据节点以及 GTM 组件规格进行新增或配置操作。选择菜单[资源管理→组件规格配置],进入组件规格配置界面。选择菜单[资源管理→组件规格配置],进入组件规格配置界面。
2024-08-25 08:15:15
112
原创 002、架构_概览
计算节点(CN: Computer Node):负责用于接收应用发送过来的业务语句,对业务语句做语法 解析,对数据做分布式的优化,包括语句的改写,并行分发等等,最终生成分布式的执行计划,按 照执行计划将语句下发到数据节点集群中,计算节点还进行分布式事务的并发控制。GoldenDB 主要由管理节点、计算节点、数据节点、全局事务节点等模块组成,各个节点无需共享任何资源,均为独立自治的通用计算机节点,之间通过高速互联的 网络通讯,从而完成对应用数据请求的快速处理和响应。
2024-08-24 21:03:39
582
原创 031、客户端通信协议
几乎所有的主流编程语言都有Redis的客户端,原因有二。第 一,客户端与服务端之间的通信协议是在TCP协议之上构建的。第二, Redis制定了RESP(REdis Serialization Protocol,Redis序列化协议)实现客 户端与服务端的正常交互,这种协议简单高效,既能够被机器解析,又容易 被人类识别。这样Redis服务端能够按照RESP将其解析为set hello world命令,执行后 回复的格式如下:+OK。
2024-06-21 09:23:45
104
原创 030、发布订阅
Redis提供了基于“发布/订阅”模式的消息机制,此种模式下,消息发布 者和订阅者不进行直接通信,发布者客户端向指定的频道(channel)发布消 息,订阅该频道的每个客户端都可以收到该消息,如图所示。Redis提 供了若干命令支持该功能,在实际应用开发时,能够为此类问题提供实现方 法。
2024-06-21 09:20:09
179
原创 001、架构_术语
页大小 (page_size)、簇大小 (extent_size)、大小写敏感 (case_sensitive)、字符集 (charset) 、VARCHAR 类型以字符为单位 (LENGTH_IN_CHAR)、空格填充模式 (BLANK_PAD_MODE) 、页检查模式(PAGE CHECK) 等部分参数,一旦确定无法修改。注册服务脚本为 dm_service_installer.sh,用户可以使用注册服务脚本将服务脚本注册成为操作系统服务。自定义初始化实例的参数。
2024-06-19 10:43:16
567
原创 029、事务
事务表示一 组动作,要么全部执行,要么全部不执行。例如在社交网站上用户A关注了 用户B,那么需要在用户A的关注表中加入用户B,并且在用户B的粉丝表中 添加用户A,这两个行为要么全部执行,要么全部不执行,否则会出现数据 不一致的情况。Redis提供了简单的事务功能,将一组需要一起执行的命令放到multi和 exec两个命令之间。multi命令代表事务开始,exec命令代表事务结束,它们 之间的命令是原子顺序执行的,例如下面操作实现了上述用户关注问题。
2024-06-14 10:32:36
80
原创 028、工具_Pipeline
Pipeline虽然好用,但是每次Pipeline组装的命令个数不能没有节制,否 则一次组装Pipeline数据量过大,一方面会增加客户端的等待时间,另一方 面会造成一定的网络阻塞,可以将一次包含大量命令的Pipeline拆分成多次 较小的Pipeline来完成。Pipeline(它能将一组Redis命令进 行组装,通过一次RTT传输给Redis,再将这组Redis命令的执行结果按顺序返回给客户端,图3-5为没有使用Pipeline执行了n条命令,整个过程需要n次 RTT。
2024-06-13 16:08:27
316
原创 026、工具_redis-server
整个内存检测的时间比较长。通常无需每次开启Redis实例时都执行–test-memory选项,该功能更偏向 于调试和测试,例如,想快速占满机器内存做一些极端条件的测试,这个功 能是一个不错的选择。redis-server除了启动Redis外,还有一个 --test-memory选项。
2024-06-12 10:41:37
419
原创 024、工具_慢查
1)发送命令 2)命令排队 3)命令执行 4)返回结果需要注意,慢查询只统计步骤3)的时间,所以没有慢查询并不代表客 户端没有超时问题。
2024-06-06 17:11:10
278
原创 021、键管理_单个键
迁移键功能非常重要,因为有时候我们只想把部分数据由一个Redis迁移到另一个Redis(例如从生产环境迁移到测试环境),Redis发展历程中提供了move、dump+restore、migrate三组迁移键的方法,它们的实现方式以及使用的场景不太相同,下面分别介绍。·key|“”:在Redis3.0.6版本之前,migrate只支持迁移一个键,所以此处是要迁移的键,但Redis3.0.6版本之后支持迁移多个键,如果当前需要迁移多个键,此处为空字符串""。第三,目标Redis完成restore。
2024-06-05 10:58:09
62
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人