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

Hadoop 3.4.0+HBase2.5.8+ZooKeeper3.8.4+Hive+Sqoop 分布式高可用集群部署安装 大数据系列二

创建服务器,参考

虚拟机创建服务器

节点名字节点IP系统版本
master11192.168.50.11centos 8.5
slave12192.168.50.12centos 8.5
slave13192.168.50.13centos 8.5

1 下载组件

Hadoop:官网地址

Hbase:官网地址

ZooKeeper:官网下载

Hive:官网下载

Sqoop:官网下载

为方便同学们下载,特整理到网盘

2 通过xftp 上传软件到服务器,统一放到/data/soft/

3 配置ZooKeeper

tar zxvf apache-zookeeper-3.8.4-bin.tar.gz
mv apache-zookeeper-3.8.4-bin/ /data/zookeeper
#修改配置文件
cd /data/zookeeper/conf
cp zoo_sample.cfg zoo.cfg
#创建数据保存目录
mkdir  -p /data/zookeeper/zkdata
mkdir -p /data/zookeeper/logs
vim zoo.cfg
dataDir=/tmp/zookeeper-->dataDir=/data/zookeeper/zkdata
dataLogDir=/data/zookeeper/logs
server.1=master11:2888:3888
server.2=slave12:2888:3888
server.3=slave13:2888:3888#配置环境变量
vim /etc/profile
export ZooKeeper_HOME=/data/zookeeper
export PATH=$PATH:$ZooKeeper_HOME/bin
source  /etc/profile

#新建myid并且写入对应的myid

[root@master11 zkdata]# cat myid 
1
#对应修改
slave12
myid--2
slave13
myid--3

4  配置HBase

tar  zxvf  hbase-2.5.8-bin.tar.gz
mv  hbase-2.5.8/ /data/hbase
mkdir -p /data/hbase/logs
#vim /etc/profile
export HBASE_LOG_DIR=/data/hbase/logs
export HBASE_MANAGES_ZK=false
export HBASE_HOME=/data/hbase
export PATH=$PATH:$ZooKeeper_HOME/bin
#vim  /data/hbase/conf/regionservers
slave12
slave13
#新建backup-masters
vim  /data/hbase/conf/backup-masters
slave12
#vim  /data/hbase/conf/hbase-site.xml<property><name>hbase.cluster.distributed</name><value>true</value></property>
<!--HBase端口--> 
<property><name>hbase.master.info.port</name><value>16010</value>
</property>
<property><name>hbase.zookeeper.quorum</name><value>master11,slave12,slave13</value></property>
<property><name>hbase.rootdir</name><value>hdfs://master11:9000/hbase</value></property>
<property><name>hbase.wal.provider</name><value>filesystem</value>
</property>

 5 配置hadoop

tar zxvf hadoop-3.4.0.tar.gz
mv  hadoop-3.4.0/ /data/hadoop
#配置环境变量
vim /etc/profile
export HADOOP_HOME=/data/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$PATH:$HADOOP_HOME/sbin
source /etc/profile
#查看版本
[root@master11 soft]# hadoop version
Hadoop 3.4.0
Source code repository git@github.com:apache/hadoop.git -r bd8b77f398f626bb7791783192ee7a5dfaeec760
Compiled by root on 2024-03-04T06:35Z
Compiled on platform linux-x86_64
Compiled with protoc 3.21.12
From source with checksum f7fe694a3613358b38812ae9c31114e
This command was run using /data/hadoop/share/hadoop/common/hadoop-common-3.4.0.jar

6 修改hadoop配置文件

#core-site.xml

vim /data/hadoop/etc/hadoop/core-site.xml
#增加如下
<configuration>
<property><name>fs.defaultFS</name><value>hdfs://master11</value>
</property>
<!-- hadoop 本地数据存储目录 format 时自动生成 -->
<property><name>hadoop.tmp.dir</name><value>/data/hadoop/data/tmp</value>
</property>
<!-- 在 WebUI访问 HDFS 使用的用户名。-->
<property><name>hadoop.http.staticuser.user</name><value>root</value>
</property>
<property><name>hadoop.proxyuser.hadoop.hosts</name><value>*</value>
</property>
<property><name>hadoop.proxyuser.root.hosts</name><value>*</value>
</property>
<property><name>hadoop.proxyuser.root.groups</name><value>*</value>
</property>
<property><name>ha.zookeeper.quorum</name><value>master11:2181,slave12:2181,slave13:2181</value></property><property><name>ha.zookeeper.session-timeout.ms</name><value>10000</value></property>
</configuration>

#hdfs-site.xml

vim  /data/hadoop/etc/hadoop/hdfs-site.xml
<configuration><!-- 副本数dfs.replication默认值3,可不配置 --><property><name>dfs.replication</name><value>3</value></property><!-- 节点数据存储地址 --><property><name>dfs.namenode.name.dir</name><value>/data/hadoop/data/dfs/name</value></property><property><name>dfs.datanode.data.dir</name><value>/data/hadoop/data/dfs/data</value></property><!-- 主备配置 --><!-- 为namenode集群定义一个services name --><property><name>dfs.nameservices</name><value>mycluster</value></property><!-- 声明集群有几个namenode节点 --><property><name>dfs.ha.namenodes.mycluster</name><value>nn1,nn2</value></property><!-- 指定 RPC通信地址 的地址 --><property><name>dfs.namenode.rpc-address.mycluster.nn1</name><value>master11:8020</value></property><!-- 指定 RPC通信地址 的地址 --><property><name>dfs.namenode.rpc-address.mycluster.nn2</name><value>slave12:8020</value></property><!-- http通信地址 web端访问地址 --><property><name>dfs.namenode.http-address.mycluster.nn1</name><value>master11:50070</value></property><!-- http通信地址 web 端访问地址 --><property><name>dfs.namenode.http-address.mycluster.nn2</name><value>slave12:50070</value></property><!-- 声明journalnode集群服务器 --><property><name>dfs.namenode.shared.edits.dir</name><value>qjournal://master11:8485;slave12:8485;slave13:8485/mycluster</value></property><!-- 声明journalnode服务器数据存储目录 --><property><name>dfs.journalnode.edits.dir</name><value>/data/hadoop/data/dfs/jn</value></property><!-- 开启NameNode失败自动切换 --><property><name>dfs.ha.automatic-failover.enabled</name><value>true</value></property><!-- 隔离:同一时刻只能有一台服务器对外响应 --><property><name>dfs.ha.fencing.methods</name><value>sshfenceshell(/bin/true)</value></property><!-- 配置失败自动切换实现方式,通过ConfiguredFailoverProxyProvider这个类实现自动切换 --><property><name>dfs.client.failover.proxy.provider.mycluster</name><value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value></property><!-- 指定上述选项ssh通讯使用的密钥文件在系统中的位置。 --><property><name>dfs.ha.fencing.ssh.private-key-files</name><value>/root/.ssh/id_rsa</value></property><!-- 配置sshfence隔离机制超时时间(active异常,standby如果没有在30秒之内未连接上,那么standby将变成active) --><property><name>dfs.ha.fencing.ssh.connect-timeout</name><value>30000</value></property><property><name>dfs.ha.fencing.methods</name><value>sshfence</value></property>
<!-- 开启hdfs允许创建目录的权限,配置hdfs-site.xml --><property><name>dfs.permissions.enabled</name><value>false</value></property><!-- 使用host+hostName的配置方式 --><property><name>dfs.namenode.datanode.registration.ip-hostname-check</name><value>false</value></property>
<property><name>dfs.webhdfs.enabled</name><value>true</value>
</property>
<!-- 开启自动化: 启动zkfc -->
<property><name>dfs.ha.automatic-failover.enabled</name><value>true</value>
</property>
<property><name>ipc.client.connect.max.retries</name><value>100</value><description>Indicates the number of retries a client will make to establish a server connection.</description>
</property>
<property><name>ipc.client.connect.retry.interval</name><value>10000</value><description>Indicates the number of milliseconds a client will wait for before retrying to establish a server connection.</description>
</property></configuration>

 #yarn-site.xml

vi /data/hadoop/etc/hadoop/yarn-site.xml
<configuration><!-- 指定yarn占电脑资源,默认8核8g --><property><name>yarn.nodemanager.resource.cpu-vcores</name><value>2</value>
</property>
<property><name>yarn.nodemanager.resource.memory-mb</name><value>4096</value>
</property><property><name>yarn.log.server.url</name><value>http://node10:19888/jobhistory/logs</value>
</property><!-- 指定 MR 走 shuffle --><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><!-- 开启日志聚集功能 --><property><name>yarn.log-aggregation-enable</name><value>true</value></property><!-- 设置日志保留时间为 7 天 --><property><name>yarn.log-aggregation.retain-seconds</name><value>86400</value></property><!-- 主备配置 --><!-- 启用resourcemanager ha --><property><name>yarn.resourcemanager.ha.enabled</name><value>true</value></property><property><name>yarn.resourcemanager.cluster-id</name><value>my-yarn-cluster</value></property><!-- 声明两台resourcemanager的地址 --><property><name>yarn.resourcemanager.ha.rm-ids</name><value>rm1,rm2</value></property><property><name>yarn.resourcemanager.hostname.rm1</name><value>slave12</value></property><property><name>yarn.resourcemanager.hostname.rm2</name><value>slave13</value></property><property><name>yarn.resourcemanager.webapp.address.rm1</name><value>slave12:8088</value></property><property><name>yarn.resourcemanager.webapp.address.rm2</name><value>slave13:8088</value></property><!-- 指定zookeeper集群的地址 --><property><name>yarn.resourcemanager.zk-address</name><value>master11:2181,slave12:2181,slave13:2181</value></property><!-- 启用自动恢复 --><property><name>yarn.resourcemanager.recovery.enabled</name><value>true</value></property><!-- 指定resourcemanager的状态信息存储在zookeeper集群 --><property><name>yarn.resourcemanager.store.class</name><value>org.apache.hadoop.yarn.server.resourcemanager.recovery.ZKRMStateStore</value></property><property><name>yarn.scheduler.maximum-allocation-mb</name><value>2048</value></property><property><name>yarn.scheduler.minimum-allocation-mb</name><value>2048</value></property><property><name>yarn.nodemanager.vmem-pmem-ratio</name><value>2.1</value></property><property><name>mapred.child.java.opts</name><value>-Xmx1024m</value></property><property><name>yarn.resourcemanager.address.rm1</name><value>slave12:8032</value></property><property><name>yarn.resourcemanager.scheduler.address.rm1</name><value>slave12:8030</value></property><property><name>yarn.resourcemanager.resource-tracker.address.rm1</name><value>slave12:8031</value></property><property><name>yarn.resourcemanager.admin.address.rm1</name><value>slave12:8033</value></property><property><name>yarn.nodemanager.address.rm1</name><value>slave12:8041</value></property><property><name>yarn.resourcemanager.address.rm2</name><value>slave13:8032</value></property><property><name>yarn.resourcemanager.scheduler.address.rm2</name><value>slave13:8030</value></property><property><name>yarn.resourcemanager.resource-tracker.address.rm2</name><value>slave13:8031</value></property><property><name>yarn.resourcemanager.admin.address.rm2</name><value>slave13:8033</value></property><property><name>yarn.nodemanager.address.rm2</name><value>slave13:8041</value></property><property><name>yarn.nodemanager.localizer.address</name><value>0.0.0.0:8040</value></property><property><description>NM Webapp address.</description><name>yarn.nodemanager.webapp.address</name><value>0.0.0.0:8042</value></property>
<property><name>yarn.nodemanager.address</name><value>${yarn.resourcemanager.hostname}:8041</value>
</property>
<property><name>yarn.application.classpath</name><value>/data/hadoop/etc/hadoop:/data/hadoop/share/hadoop/common/lib/*:/data/hadoop/share/hadoop/common/*:/data/hadoop/share/hadoop/hdfs:/data/hadoop/share/hadoop/hdfs/lib/*:/data/hadoop/share/hadoop/hdfs/*:/data/hadoop/share/hadoop/mapreduce/lib/*:/data/hadoop/share/hadoop/mapreduce/*:/data/hadoop/share/hadoop/yarn:/data/hadoop/share/hadoop/yarn/lib/*
:/data/hadoop/share/hadoop/yarn/*</value>    </property>
</configuration>

#修改workers

vi /data/hadoop/etc/hadoop/workers
master11
slave12
slave13

7  分发文件和配置

#master11
cd /data/  
scp  -r   hadoop/  slave12:/data
scp  -r   hadoop/  slave13:/data
scp  -r  hbase/  slave13:/data
scp  -r  hbase/  slave12:/data
scp  -r   zookeeper/  slave12:/data
scp  -r   zookeeper/  slave13:/data
#3台服务器的/etc/profile 变量一致
export JAVA_HOME=/usr/local/jdk
export PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export CLASSPATHexport HADOOP_HOME=/data/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$PATH:$HADOOP_HOME/sbin
export ZooKeeper_HOME=/data/zookeeper
export PATH=$PATH:$ZooKeeper_HOME/bin
#
export HBASE_LOG_DIR=/data/hbase/logs
export HBASE_MANAGES_ZK=false
export HBASE_HOME=/data/hbase
export PATH=$PATH:$ZooKeeper_HOME/binexport HIVE_HOME=/data/hive
export PATH=$PATH:$HIVE_HOME/bin
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
export HDFS_ZKFC_USER=root
export HDFS_DATANODE_SECURE_USER=root
export HDFS_JOURNALNODE_USER=root

8 集群启动

#HA模式第一次或删除在格式化版本

#第一次需要格式化,master11上面
start-dfs.sh
hdfs  namenode -format
ll /data/hadoop/data/dfs/name/current/
total 16
-rw-r--r--. 1 root root 399 May 13 20:21 fsimage_0000000000000000000
-rw-r--r--. 1 root root  62 May 13 20:21 fsimage_0000000000000000000.md5
-rw-r--r--. 1 root root   2 May 13 20:21 seen_txid
-rw-r--r--. 1 root root 218 May 13 20:21 VERSION
#同步数据到slave12节点(其余namenode节点)
scp  -r  /data/hadoop/data/dfs/name/*  slave12:/data/hadoop/data/dfs/name/
#成功如图

#在任意一台 NameNode上初始化 ZooKeeper 中的 HA 状态
[root@master11 hadoop]# jps
2400 QuorumPeerMain
4897 Jps
3620 JournalNode
3383 DataNode
#
hdfs zkfc -formatZK
#如下图

 

#集群正常启动顺序

#zookeeper,3台服务器都执行
zkServer.sh start
#查看
[root@master11 ~]# zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /data/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: follower
[root@slave12 data]# zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /data/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: leader
[root@slave13 ~]# zkServer.sh  status
ZooKeeper JMX enabled by default
Using config: /data/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: follower
#master11 ,hadoop集群一键启动
start-all.sh start
#一键停止
stop-all.sh
#jps 查看如图

 

#查看集群状态

#NameNode
[root@master11 ~]# hdfs  haadmin  -getServiceState nn1
active
[root@master11 ~]# hdfs  haadmin  -getServiceState nn2
standby
[root@master11 ~]# hdfs haadmin -ns mycluster -getAllServiceState
master11:8020                                      active    
slave12:8020                                       standby
#yarn
[root@master11 ~]# yarn rmadmin -getServiceState rm1
standby
[root@master11 ~]# yarn rmadmin -getServiceState rm2
active

#查看HDFS web ui

 

#查看 yarn集群

9 hadoop 测试使用

#创建目录
hdfs dchaungfs  -mkdir  /testdata
#查看
[root@master11 ~]# hdfs dfs  -ls /
Found 2 items
drwxr-xr-x   - root supergroup          0 2024-05-14 17:00 /hbase
drwxr-xr-x   - root supergroup          0 2024-05-14 20:32 /testdata
#上传文件
hdfs dfs  -put  jdk-8u191-linux-x64.tar.gz   /testdata
#查看文件
[root@master11 soft]# hdfs dfs  -ls /testdata/
Found 1 items
-rw-r--r--   3 root supergroup  191753373 2024-05-14 20:40 /testdata/jdk-8u191-linux-x64.tar.gz

 

 

 

10 启动Hbase,hadoop的active节点

[root@master11 ~]# hdfs  haadmin  -getServiceState nn1
active
#启动
start-hbase.sh
#查看
[root@master11 ~]# jps
16401 NodeManager
15491 NameNode
21543 HMaster
15848 JournalNode
1435 QuorumPeerMain
16029 DFSZKFailoverController
21902 Jps
15631 DataNode

 11 安装Hive

#解压和配置环境变量

tar zxvf apache-hive-4.0.0-bin.tar.gz
mv  apache-hive-4.0.0-bin/  /data/hive
#环境变量
vi /etc/profile
export HIVE_HOME=/data/hive
export PATH=$PATH:$HIVE_HOME/bin
source /etc/profile

# 安装mysql ,可参考

mysql 8.3 二进制版本安装

#mysql驱动

mv mysql-connector-java-8.0.29.jar  /data/hive/lib/
schematool -dbType mysql -initSchema
#报错
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/data/hive/lib/log4j-slf4j-impl-2.18.0.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/data/hadoop/share/hadoop/common/lib/slf4j-reload4j-1.7.36.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]
Exception in thread "main" [com.ctc.wstx.exc.WstxLazyException] com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character '=' (code 61); expected a semi-colon after the reference for entity 'characterEncoding'at [row,col,system-id]: [5,86,"file:/data/hive/conf/hive-site.xml"]at com.ctc.wstx.exc.WstxLazyException.throwLazily(WstxLazyException.java:40)at com.ctc.wstx.sr.StreamScanner.throwLazyError(StreamScanner.java:737)at com.ctc.wstx.sr.BasicStreamReader.safeFinishToken(BasicStreamReader.java:3745)at com.ctc.wstx.sr.BasicStreamReader.getTextCharacters(BasicStreamReader.java:914)at org.apache.hadoop.conf.Configuration$Parser.parseNext(Configuration.java:3434)at org.apache.hadoop.conf.Configuration$Parser.parse(Configuration.java:3213)at org.apache.hadoop.conf.Configuration.loadResource(Configuration.java:3106)at org.apache.hadoop.conf.Configuration.loadResources(Configuration.java:3072)at org.apache.hadoop.conf.Configuration.loadProps(Configuration.java:2945)at org.apache.hadoop.conf.Configuration.getProps(Configuration.java:2927)at org.apache.hadoop.conf.Configuration.set(Configuration.java:1431)at org.apache.hadoop.conf.Configuration.set(Configuration.java:1403)at org.apache.hadoop.hive.metastore.conf.MetastoreConf.newMetastoreConf(MetastoreConf.java:2120)at org.apache.hadoop.hive.metastore.conf.MetastoreConf.newMetastoreConf(MetastoreConf.java:2072)at org.apache.hive.beeline.schematool.HiveSchemaTool.main(HiveSchemaTool.java:144)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at org.apache.hadoop.util.RunJar.run(RunJar.java:330)at org.apache.hadoop.util.RunJar.main(RunJar.java:245)
Caused by: com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character '=' (code 61); expected a semi-colon after the reference for entity 'characterEncoding'at [row,col,system-id]: [5,86,"file:/data/hive/conf/hive-site.xml"]at com.ctc.wstx.sr.StreamScanner.throwUnexpectedChar(StreamScanner.java:666)at com.ctc.wstx.sr.StreamScanner.parseEntityName(StreamScanner.java:2080)at com.ctc.wstx.sr.StreamScanner.fullyResolveEntity(StreamScanner.java:1538)at com.ctc.wstx.sr.BasicStreamReader.readTextSecondary(BasicStreamReader.java:4765)at com.ctc.wstx.sr.BasicStreamReader.finishToken(BasicStreamReader.java:3789)at com.ctc.wstx.sr.BasicStreamReader.safeFinishToken(BasicStreamReader.java:3743)... 18 more
#解决 vi /data/hive/conf/hive-site.xml
&字符 需要转义 改成 &amp;
#成功提示 Initialization script completed
数据库如下图

 

#启动,hive 在master11,mysql 安装在slave12 

cd /data/hive/
nohup hive --service metastore & (启动hive元数据服务)
nohup ./bin/hiveserver2 & (启动jdbc连接服务)
#直接hive,提示“No current connection”
hive
[root@master11 hive]# hive
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/data/hive/lib/log4j-slf4j-impl-2.18.0.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/data/hadoop/share/hadoop/common/lib/slf4j-reload4j-1.7.36.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/data/hive/lib/log4j-slf4j-impl-2.18.0.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/data/hadoop/share/hadoop/common/lib/slf4j-reload4j-1.7.36.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]
Beeline version 4.0.0 by Apache Hive
beeline> show  databases;
No current connection
beeline> 
#在提示符 输入!connect jdbc:hive2://master11:10000,之后输入mysql用户和密码
beeline> !connect jdbc:hive2://master11:10000
Connecting to jdbc:hive2://master11:10000
Enter username for jdbc:hive2://master11:10000: root
Enter password for jdbc:hive2://master11:10000: *********
Connected to: Apache Hive (version 4.0.0)
Driver: Hive JDBC (version 4.0.0)
Transaction isolation: TRANSACTION_REPEATABLE_READ
0: jdbc:hive2://master11:10000> show  databases;
INFO  : Compiling command(queryId=root_20240514222349_ac19af6a-3c43-49fd-bcd0-25fc0e5b76c6): show  databases
INFO  : Semantic Analysis Completed (retrial = false)
INFO  : Created Hive schema: Schema(fieldSchemas:[FieldSchema(name:database_name, type:string, comment:from deserializer)], properties:null)
INFO  : Completed compiling command(queryId=root_20240514222349_ac19af6a-3c43-49fd-bcd0-25fc0e5b76c6); Time taken: 0.021 seconds
INFO  : Concurrency mode is disabled, not creating a lock manager
INFO  : Executing command(queryId=root_20240514222349_ac19af6a-3c43-49fd-bcd0-25fc0e5b76c6): show  databases
INFO  : Starting task [Stage-0:DDL] in serial mode
INFO  : Completed executing command(queryId=root_20240514222349_ac19af6a-3c43-49fd-bcd0-25fc0e5b76c6); Time taken: 0.017 seconds
+----------------+
| database_name  |
+----------------+
| default        |
+----------------+
1 row selected (0.124 seconds)
0: jdbc:hive2://master11:10000>

相关文章:

Hadoop 3.4.0+HBase2.5.8+ZooKeeper3.8.4+Hive+Sqoop 分布式高可用集群部署安装 大数据系列二

创建服务器,参考 虚拟机创建服务器 节点名字节点IP系统版本master11192.168.50.11centos 8.5slave12192.168.50.12centos 8.5slave13192.168.50.13centos 8.5 1 下载组件 Hadoop:官网地址 Hbase:官网地址 ZooKeeper:官网下载 Hive:官网下载 Sqoop:官网下载 为方便同学…...

umi搭建react项目

UMI 是一个基于 React 的可扩展企业级前端应用框架&#xff0c;提供路由、状态管理、构建和部署等功能&#xff0c;可以帮助开发者快速构建复杂的单页面应用&#xff08;SPA&#xff09;和多页面应用&#xff08;MPA&#xff09;。它与 React 的关系是&#xff0c;UMI 构建在 R…...

mybatis-plus之数据源切换事务失效问题

为什么存在数据源切换和食物时效问题&#xff1f; 由于业务数据来源不同 需要配置多个数据源来进行数据的查询 编辑等操作 这一切换业务对数据的一致性要求很高那就要保证ACID啦 也就是数据的有效性 要么是成功的 要么是失败的。 数据源切换采用mybatisplus支持 多数据源配置&a…...

vue 百度地图点击marker修改marker图片,其他marker图片不变。

解决思路&#xff0c;就是直接替换对应marker的图片。获取marker对象判断点击的marker替换成新图片&#xff0c;上一个被点击的就替换成老图片。 marker.name tag;marker.id i; //一定要设置id&#xff0c;我这里是设置的循环key值&#xff0c;要唯一性。map.addOverlay(mark…...

【Javaer学习Python】 1、Django安装

安装 Python 和 PyCharm 的方法就略过了&#xff0c;附一个有效激活PyCharm的链接&#xff1a;https://www.quanxiaoha.com/pycharm-pojie/pycharm-pojie-20241.html 1、安装Django # 安装Django pip install Django# 查看当前版本 python -m django --version 5.0.62、创建项…...

SSL协议

SSL 安全传输协议&#xff08;安全套接层&#xff09; 也叫TLS ---- 传输层安全协议 SSL的工作原理&#xff1a;SSL协议因为是基于TCP协议工作的&#xff0c;通信双方需要先建立TCP会话。因为SSL协议需要进行安全保证&#xff0c;需要协商安全参数&#xff0c;所以也需要建立…...

什么情况下会造成索引失效?

2.3.4. 索引失效 对索引使用左或者左右模糊匹配 使用左或者左右模糊匹配的时候&#xff0c;也就是 like %xx 或者 like %xx% 这两种方式都会造成索引失效。但是如果前缀是确定的那么就可以使用到索引&#xff0c;例如 name like 许%。 因为索引 B 树是按照「索引值」有序排列…...

间隔采样视频的代码

项目统计模型准确率 项目会保存大量视频&#xff0c;为了统计模型的精度&#xff0c;我们想要十五分钟抽取一个视频用来统计。 import os import shutil from datetime import datetime, timedelta #抽取视频的代码&#xff0c;会在每个小时的0分、15分、30分、45分取一个命名…...

C++ QT设计模式 (第二版)

第3章 Qt简介 3.2 Qt核心模块 Qt是一个大库&#xff0c;由数个较小的库或者模块组成&#xff0c;最为常见的如下&#xff1a;core、gui、xml、sql、phonon、webkit&#xff0c;除了core和gui&#xff0c;这些模块都需要在qmake的工程文件中启用 QTextStream 流&#xff0c;Qdat…...

【经验总结】超算互联网服务器 transformers 加载本地模型

1. 背景 使用 超算互联网 的云服务&#xff0c;不能连接外网&#xff0c;只能把模型下载到本地&#xff0c;再上传上去到云服务。 2. 模型下载 在 模型中 https://huggingface.co/models 找到所需的模型后 点击下载 config.json pytorch_model.bin vocab.txt 3. 上传模型文…...

ubuntu编译pcl时报错

报错如下 cc1plus: warning: -Wabi wont warn about anything [-Wabi] cc1plus: note: -Wabi warns about differences from the most up-to-date ABI, which is also used by default cc1plus: note: use e.g. -Wabi11 to warn about changes from GCC 7 在网上找到了一封邮件…...

Rust中的单元测试

概述 Rust内置了单元测试的支持&#xff0c;这点和Golang一样&#xff0c;非常的棒&#xff0c;我超级喜欢单元测试&#xff01;&#xff01;&#xff01; 本节课的代码还是基于之前的求公约数的案例。 之前的完整代码如下&#xff1a; fn gcd(mut n: u64, mut m: u64) ->…...

ubuntu18.04系统安装pangolin

1. 安装pangolin依赖项 ctrlaltt 打开终端&#xff0c;依次输入下面的命令 sudo apt update sudo apt upgrade sudo apt install libglew-dev cmake libboost-dev libboost-thread-dev libboost-filesystem-dev libeigen3-dev -y 2.在终端中输入下面的命令&#xff0c;克隆…...

洛谷P10397题解

题目描述 给定一条 std::freopen 语句&#xff0c;输出其操作的文件名称。 形式化地&#xff0c;std::freopen 语句都应该恰好是 std::freopen("<title>","<mode>",<stream>);其中 <title> 为其操作的文件名称。其至少包含一个…...

【Linux】自动化编译工具——make/makefile(超细图例详解!!)

目录 一、前言 二、make / Makefile背景介绍 &#x1f95d;Makefile是干什么的&#xff1f; &#x1f347;make又是什么&#xff1f; 三、demo实现【见见猪跑&#x1f416;】 四、依赖关系与依赖方法 1、概念理清 2、感性理解【父与子&#x1f468;】 3、深层理解【程序…...

goroutine调度策略

Golang的调度器采用M:N调度模型&#xff0c;其中M代表用户级别的线程(也就是goroutine)&#xff0c;而N代表的事内核级别的线程。Go调度器的主要任务就是N个OS线程上调度M个goroutine。这种模型允许在少量的OS线程上运行大量的goroutine。 Go调度器使用了三种队列来管理gorout…...

TypeScript中`unknown`的使用场景:安全处理未知类型

TypeScript中unknown的使用场景&#xff1a;安全处理未知类型 引言 在TypeScript中&#xff0c;unknown类型是除了any类型之外的另一种选择&#xff0c;它用于表示一个值可能是任何类型。与any不同&#xff0c;unknown提供了一种更安全的方式来处理未知的数据&#xff0c;因为…...

react18【系列实用教程】JSX (2024最新版)

为什么要用 JSX&#xff1f; JSX 给 HTML 赋予了 JS 的编程能力 JSX 的本质 JSX 是 JavaScript 的语法扩展&#xff0c;浏览器本身不能识别&#xff0c;需要通过解析工具&#xff08;如babel&#xff09;解析之后才能在浏览器中运行。 bable 官网可以查看解析过程 JSX 的语法 …...

Docker 创建网络

问题&#xff1a; 1.需要将多个容器添加到同一个网络. 2.docker-compose.yaml 如果不指定&#xff0c;默认会重新创建一个网卡. 创建网卡 docker network create -d bridge mynet ##-d 指定模式&#xff08;默认桥接&#xff09;查看自定义网络信息 docker inspect mynet…...

ASME美国机械工程师学会文献如何查询下载经验分享

一、ASME美国机械工程师学会数据库简介&#xff1a; ASME是世界上最大的技术出版机构之一&#xff0c;制定众多的工业和制造业行业标准。现在ASME拥有工业和制造行业的600项标准和规范&#xff0c;这些标准在全球90多个国家被采用。 ASME数据库包含25种专业期刊&#xff0c;其…...

[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解

突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 ​安全措施依赖问题​ GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...

C++:std::is_convertible

C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

关于nvm与node.js

1 安装nvm 安装过程中手动修改 nvm的安装路径&#xff0c; 以及修改 通过nvm安装node后正在使用的node的存放目录【这句话可能难以理解&#xff0c;但接着往下看你就了然了】 2 修改nvm中settings.txt文件配置 nvm安装成功后&#xff0c;通常在该文件中会出现以下配置&…...

定时器任务——若依源码分析

分析util包下面的工具类schedule utils&#xff1a; ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类&#xff0c;封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz&#xff0c;先构建任务的 JobD…...

【AI学习】三、AI算法中的向量

在人工智能&#xff08;AI&#xff09;算法中&#xff0c;向量&#xff08;Vector&#xff09;是一种将现实世界中的数据&#xff08;如图像、文本、音频等&#xff09;转化为计算机可处理的数值型特征表示的工具。它是连接人类认知&#xff08;如语义、视觉特征&#xff09;与…...

css的定位(position)详解:相对定位 绝对定位 固定定位

在 CSS 中&#xff0c;元素的定位通过 position 属性控制&#xff0c;共有 5 种定位模式&#xff1a;static&#xff08;静态定位&#xff09;、relative&#xff08;相对定位&#xff09;、absolute&#xff08;绝对定位&#xff09;、fixed&#xff08;固定定位&#xff09;和…...

Spring数据访问模块设计

前面我们已经完成了IoC和web模块的设计&#xff0c;聪明的码友立马就知道了&#xff0c;该到数据访问模块了&#xff0c;要不就这俩玩个6啊&#xff0c;查库势在必行&#xff0c;至此&#xff0c;它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据&#xff08;数据库、No…...

关键领域软件测试的突围之路:如何破解安全与效率的平衡难题

在数字化浪潮席卷全球的今天&#xff0c;软件系统已成为国家关键领域的核心战斗力。不同于普通商业软件&#xff0c;这些承载着国家安全使命的软件系统面临着前所未有的质量挑战——如何在确保绝对安全的前提下&#xff0c;实现高效测试与快速迭代&#xff1f;这一命题正考验着…...

【p2p、分布式,区块链笔记 MESH】Bluetooth蓝牙通信 BLE Mesh协议的拓扑结构 定向转发机制

目录 节点的功能承载层&#xff08;GATT/Adv&#xff09;局限性&#xff1a; 拓扑关系定向转发机制定向转发意义 CG 节点的功能 节点的功能由节点支持的特性和功能决定。所有节点都能够发送和接收网格消息。节点还可以选择支持一个或多个附加功能&#xff0c;如 Configuration …...

Vue ③-生命周期 || 脚手架

生命周期 思考&#xff1a;什么时候可以发送初始化渲染请求&#xff1f;&#xff08;越早越好&#xff09; 什么时候可以开始操作dom&#xff1f;&#xff08;至少dom得渲染出来&#xff09; Vue生命周期&#xff1a; 一个Vue实例从 创建 到 销毁 的整个过程。 生命周期四个…...