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

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 如何访问TDH中Inceptor 底层的元数据库TxSQL

1 Inceptor概述

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

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

  • Inceptor Server 对应 HIVE 的查询引擎 HS2;
  • Inceptor Metastore 对应HIVE的元数据引擎 HMS;
  • Inceptor Executor 对应 spark executor;


image.png


2 TxSql概述

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


image.png


查看星环官方文档可知,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;

image.png

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

image.png


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

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

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

image.png

3.2 获取 master 节点地址


image.png

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

image.png


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

image.png

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
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
存储 缓存 Go
Go语言开发者必读:内存缓存技巧
Go语言开发者必读:内存缓存技巧
317 0
|
机器学习/深度学习 人工智能 搜索推荐
协同过滤算法:个性化推荐的艺术与科学
协同过滤算法:个性化推荐的艺术与科学
协同过滤算法:个性化推荐的艺术与科学
|
SQL XML Oracle
数据库中间件DBLE学习(一) 基本介绍和快速搭建
dble基本架构简介 dble是基于mysql的高可用扩展性的分布式中间件。江湖人送外号MyCat Plus。开源地址 我们首先来看架构图,外部应用通过NIO/AIO进行连接操作。
4779 103
|
XML 自然语言处理 Android开发
🌐Android国际化与本地化全攻略!让你的App走遍全球无障碍!🌍
【7月更文挑战第28天】在全球化背景下,实现Android应用的国际化与本地化至关重要 for 用户基础扩展。本文通过旅游指南App案例,介绍全攻略。步骤包括资源文件拆分与命名、适配布局与方向、处理日期时间及货币格式、考虑文化习俗及进行详尽测试。采用Android Studio支持,创建如`res/values-en/strings.xml`等多语言资源文件夹,使用灵活布局解决文本长度差异问题,并通过用户反馈迭代优化。最终,打造一款能无缝融入全球各地文化的App。
592 3
|
SQL 存储 关系型数据库
|
人工智能 自然语言处理 物联网
LLM2CLIP:使用大语言模型提升CLIP的文本处理,提高长文本理解和跨语言能力
LLM2CLIP 为多模态学习提供了一种新的范式,通过整合 LLM 的强大功能来增强 CLIP 模型。
598 3
LLM2CLIP:使用大语言模型提升CLIP的文本处理,提高长文本理解和跨语言能力
|
11月前
|
人工智能 搜索推荐 算法
解决方案评测|主动式智能导购AI助手构建
阿里云的主动式智能导购AI助手是电商商家提升用户体验和销量的利器。它能实时分析用户行为,提供个性化推荐,支持多渠道无缝对接,并具备语音和文本交互功能。通过注册阿里云账号、开通服务、配置项目、设置推荐策略、集成到平台并测试优化,商家可以轻松部署这一工具。关键代码示例帮助理解API对接和数据处理。建议增强个性化推荐算法、优化交互体验并增加自定义选项,以进一步提升效果。
722 11
|
9月前
|
监控 机器人 数据挖掘
|
存储 关系型数据库 MySQL
在 Python 中获取输入
【8月更文挑战第23天】
1096 0
|
缓存 NoSQL 中间件
redis高并发缓存中间件总结!
本文档详细介绍了高并发缓存中间件Redis的原理、高级操作及其在电商架构中的应用。通过阿里云的角度,分析了Redis与架构的关系,并展示了无Redis和使用Redis缓存的架构图。文档还涵盖了Redis的基本特性、应用场景、安装部署步骤、配置文件详解、启动和关闭方法、systemctl管理脚本的生成以及日志警告处理等内容。适合初学者和有一定经验的技术人员参考学习。
783 7

热门文章

最新文章