写点什么

如何访问 TDH 中 Inceptor 底层的元数据库 TxSQL

  • 2023-09-25
    湖北
  • 本文字数:1234 字

    阅读完需:约 4 分钟

1 Inceptor 概述

在大数据生态系统中,HIVE 是离线数据仓库事实上的标准,绝大多数的大数据分析型系统或数据仓库系统,都是基于 HIVE 来构建的。


在星环的大数据平台 TDH 中,在功能上对应开源 HIVE 的服务是 Inceptor,Inceptor 底层是基于开源的 HIVE 和 Spark 整合开发而来的,其中:


  • Inceptor Server 对应 HIVE 的查询引擎 HS2;

  • Inceptor Metastore 对应 HIVE 的元数据引擎 HMS;

  • Inceptor Executor 对应 spark executor;



2 TxSql 概述

  • HIVE 的元数据引擎 HMS 在底层依赖一个 RDBMS 元数据库进行元数据的存储查询和管理,该 RDBMS 常用的有 mysql/pg/oracle 等,在实践中我们一般使用 Mysql;

  • Inceptor 的元数据引擎 Inceptor Metastore 在底层同样依赖一个 RDBMS 元数据库进行元数据的存储查询和管理,TDH 中这个 RDBMS 使用的是 TxSQL:




查看星环官方文档可知,TxSQL 基于开源的 PhxSQL 项目开发,是一个强一致、高可用的分布式数据库系统,它建立在 MySQL 基础上,并对其传统的主从复制方案作出了改进,将传统的主从复制机制和 Paxos 协议结合起来,从而更好的实现了高可用。PhxSQL 官方网址是https://github.com/Tencent/phxsql,查看 PhxSQL 官方文档可知,PhxSQL is a high-availability and strong-consistency MySQL cluster built on Paxos and Percona,其架构图如下:PhxSQL 集群是三层架构,对于集群中的每一个节点,部署 3 个模块(PhxSQLProxy,MySQL,PhxBinlogSvr):


  • PhxSQLProxy 负责请求的透传;

  • 多个节点上的 PhxBinlogSvr 组成一个可靠的日志存储集群和可靠的 Master 信息存储集群,PhxBinlogSvr 同时承担 Agent 的责任;

  • Master 结点上的 PhxSync 负责将 MySQL 的 Binlog 发送到 PhxBinlogSvr;

  • 查看 TxSQL 的底层进程,可见其跟 PhxSQL 的三次架构是一致的:

3 如何访问 TDH 中 Inceptor 底层的元数据库 TxSQL

有时候我们需要对元数据库 TxSQL 做一些运维操作,比如备份和恢复,此时如何登录进而访问 TDH 中 Inceptor 底层的元数据库 TxSQL 呢?大体上来讲,由于 TDH 中 TxSQL 是以 Docker 容器的形式来运行和管理的,我们需要使用 k8s/docker 相关命令获取 TxSQL 的端口用户名和密码,并通过 TxSQL 的相关命令获取 master 节点地址,然后通过 mysql 命令登录该 master 节点进而通过 sql 查询和操作数据。

3.1 获取 TxSQL 的端口,用户名和密码

3.2 获取 master 节点地址


注:这里显示的端口好 17000,是 TxSQL 各个节点内部通信用的,通过客户端命令如 Mysql 等登录 TxSQL 时不能使用该端口,否则会报错“ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial communication packet', system error: 0”,如下图所示:


3.3 通过 mysql 命令登录该 master 节点进而通过 sql 查询和操作数据

4 相关命令汇总

kubectl get pods |grep -i txsql kubectl exec txsql-server-txsql1-86c458896b-9777m -it bash /usr/bin/txsql/tools/txsql.sh list grep -i port /etc/txsql1/conf/my.cnf  cat /etc/txsql1/conf/db.properties  mysql -h 10.20.159.114 -P 13306 -uroot -pxxx ss -anp|egrep '3316|13306|17000' ps -ef|egrep 5407|5523|5588
复制代码


发布于: 刚刚阅读数: 4
用户头像

Keep Striving! 2018-04-25 加入

明哥,十四年 IT经验,六年大数据经验; 做过大数据集群的搭建运维,大数据应用系统的开发优化,也做过大数据平台的技术选型以及架构咨询; 目前聚焦于泛大数据生态,包括数据仓库/数据湖,云计算和人工智能。

评论

发布
暂无评论
如何访问TDH中Inceptor 底层的元数据库TxSQL_大数据_明哥的IT随笔_InfoQ写作社区