基于Hadoop平台的电信客服数据的处理与分析③项目开发:搭建基于Hadoop的全分布式集群---任务9:HBase的安装和部署

任务描述

任务内容为HBase的安装部署与测试。

任务指导

HBase集群需要整个集群所有节点安装的HBase版本保持一致,并且拥有相同的配置

具体配置步骤如下:

1. 解压缩HBase的压缩包

2. 配置HBase的环境变量

3. 修改HBase的配置文件,HBase的配置文件存放在HBase安装目录下的conf中

4. 首先在一台节点对整个HBase集群进行配置,再将此节点的配置发送到集群的其它节点上。

5. 具体需要修改的HBase的配置文件包括 hbase-site.xml、hbase-env.sh、regionservers

任务实现

1、HBase安装

这里已经将压缩包存放在/opt/software目录下,解压命令如下:

[root@master1 ~]# tar -zxvf /opt/software/hbase-2.3.5-bin.tar.gz -C /opt/app/

设置HBase环境变量(master1、slave1、slave2)这里以master1为例:

[root@master1 ~]# vi /etc/profile
export HBASE_HOME=/opt/app/hbase-2.3.5
export PATH=$PATH:$HBASE_HOME/bin

使用【source  /etc/profile】使配置文件生效。

2、配置hbase-env.sh文件

[root@master1 ~]# cd $HBASE_HOME/conf
[root@master1 conf]# vi hbase-env.sh

在文件末尾添加如下配置:

export JAVA_HOME=/opt/app/jdk1.8.0_181
export HBASE_MANAGES_ZK=false

3、配置 hbase-site.xml文件,该文件存放在$HBASE_HOME/conf目录下,配置内容如下:

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!--
/**** Licensed to the Apache Software Foundation (ASF) under one* or more contributor license agreements.  See the NOTICE file* distributed with this work for additional information* regarding copyright ownership.  The ASF licenses this file* to you under the Apache License, Version 2.0 (the* "License"); you may not use this file except in compliance* with the License.  You may obtain a copy of the License at**     http://www.apache.org/licenses/LICENSE-2.0** Unless required by applicable law or agreed to in writing, software* distributed under the License is distributed on an "AS IS" BASIS,* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.* See the License for the specific language governing permissions and* limitations under the License.*/
-->
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://master1:9000/hbase</value>
</property>
<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>master1:2181,slave1:2181,slave2:2181</value>
</property>
</configuration>

4、配置regionservers文件

[root@master1 conf]# vi regionservers
slave1
slave2

5、将Hadoop的配置文件拷贝到HBase的conf目录

[root@master1 ~]# cp $HADOOP_HOME/etc/hadoop/core-site.xml $HBASE_HOME/conf
[root@master1 ~]# cp $HADOOP_HOME/etc/hadoop/hdfs-site.xml $HBASE_HOME/conf

6、将master1的HBase分发至整个集群:

[root@master1 ~]# cd /opt/app
[root@master1 app]# scp -r hbase-2.3.5 slave1:/opt/app/
[root@master1 app]# scp -r hbase-2.3.5 slave2:/opt/app/

7、测试

HBase使用ZooKeeper保存元数据,在启动前需要保证ZooKeeper集群(master1、slave1、slave3)已启动,命令如下:

# zkServer.sh start

#在master1上启动HBase集群

[root@master1 ~]# start-hbase.sh

此时可以通过16010端口产看HBase的Web UI界面,如【http://master1:16010】。

#新建一个名为test的表,使其只包含一个名为data的列,表和列族属性都为默认值

[root@master1 ~]# hbase shell
hbase(main):001:0> create 'test','data'
0 row(s) in 0.4150 seconds

#通过键入help查看帮助命令,运行list查看新建的表是否存在

hbase(main):003:0> list
TABLE
test
1 row(s) in 0.0230 seconds

#在列族data中二个不同的行和列上插入数据,然后列出表内容

hbase(main):004:0> put 'test','row1','data:1','values1'
0 row(s) in 0.1280 seconds
hbase(main):005:0> put 'test','row2','data:2','values2'
0 row(s) in 0.0090 seconds
hbase(main):006:0> scan 'test'
ROW COLUMN+CELL
row1 column=data:1, timestamp=1473585137461, value=values1
row2 column=data:2, timestamp=1473585158072, value=values2
2 row(s) in 0.0200 seconds

#删除刚创建的表test,需要先设为禁用,然后删除,不设置会报错:

hbase(main):008:0> drop 'test'
ERROR: Table test is enabled. Disable it first.
hbase(main):009:0> disable 'test'
0 row(s) in 1.1800 seconds
hbase(main):010:0> drop 'test'
0 row(s) in 0.1570 seconds

#为后续功能创建命名空间

create_namespace 'ns_ct'

#为后续功能创建表

create 'ns_ct:calllog','f1','f2'

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/38513.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

怎样在《好作文》期刊上发表文章?

怎样在《好作文》期刊上发表文章&#xff1f; 《好作文》知网 G4 2版2500字符 小学语文阅读写作方向 24年8-9月不要摘要参考文献&#xff08;小学语文阅读写作方向内容&#xff0c;不收纯教学文章&#xff0c;以学生角度为主&#xff0c;出刊晚2-3个月左右&#xff0c;一周内…

Python基础002

Python数据类型 1、字符串&#xff08;str&#xff09; str3 """I miss you so much""" print("str3 ", str3,type(str3)) str3 I miss you so much <class str>2、整数&#xff08;int&#xff09; str1 55 print(&quo…

[从0开始轨迹预测][NMS]:NMS的应用(目标检测、轨迹预测)

非极大值抑制&#xff08;Non-Maximum Suppression&#xff0c;简称NMS&#xff09;是一种在计算机视觉中广泛应用的算法&#xff0c;主要用于消除冗余和重叠的边界框。在目标检测任务中&#xff0c;尤其是在使用诸如R-CNN系列的算法时&#xff0c;会产生大量的候选区域&#x…

中介者模式在金融业务中的应用及其框架实现

引言 中介者模式&#xff08;Mediator Pattern&#xff09;是一种行为设计模式&#xff0c;它通过引入一个中介对象来封装对象之间的交互&#xff0c;从而使对象不需要显式地相互引用&#xff0c;从而降低了对象之间的耦合性。在金融业务中&#xff0c;中介者模式常用于实现复…

借教室(题解)

P1083 [NOIP2012 提高组] 借教室 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 思路&#xff1a;二分前缀和 我们将和质检员那题差不多&#xff0c;只需要将候选人二分即可 #include<bits/stdc.h> using namespace std; #define int long long int n,m; int r[100000…

vue 中使用element-ui实现锚点定位表单

效果图&#xff1a; 代码&#xff1a; html代码&#xff1a; <div class"content-left"><el-tabs :tab-position"left" tab-click"goAnchor"><el-tab-pane v-for"(item,index) in anchorNameList"v-anchor-scroll:ke…

【Vue】vue3 hooks 中使用 useRouter 报错 push undefined 报错解决方法

报错原因&#xff1a; 在 Vue 3 中&#xff0c;如果你在自定义 Hooks 中尝试使用 useRouter 并遇到错误&#xff0c;特别是没有 push 方法的问题&#xff0c;这通常是因为 useRouter 和 useRoute 需要在 Vue 组件的 setup 函数内部使用&#xff0c;而不是在自定义 Hooks 外部直…

【论文阅读】自动驾驶光流任务 DeFlow: Decoder of Scene Flow Network in Autonomous Driving

再一次轮到讲自己的paper&#xff01;耶&#xff0c;宣传一下自己的工作&#xff0c;顺便完成中文博客的解读 方便大家讨论。 Title Picture Reference and pictures paper: https://arxiv.org/abs/2401.16122 code: https://github.com/KTH-RPL/DeFlow b站视频: https://www.b…

设计⼀个⾼性能可⽀撑分桶多分⽚的库存中⼼,提供单库存分⽚不⾜扣减的合并库存功能,并提供商 品操作库存⼊库的渐进性⼊缓存的实现

设计一个高性能的库存中心&#xff0c;需要考虑多个方面&#xff0c;包括数据结构设计、存储优化、库存管理策略、缓存策略以及高并发处理能力。以下是设计这样一个系统的一些关键点&#xff1a; ### 1. 系统架构设计 - **微服务架构**&#xff1a;采用微服务架构&#xff0c;…

基于1bitDAC的MU-MIMO的非线性预编码算法matlab性能仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 4.1 基于1-bit DAC的非线性预编码背景 4.2 ZF&#xff08;Zero-Forcing&#xff09; 4.3 WF&#xff08;Water-Filling&#xff09; 4.3 MRT&#xff08;Maximum Ratio Transmission&…

uniapp做小程序内打开地图展示位置信息

使用场景&#xff1a;项目中需要通过位置信息打开地图查看当前位置信息在地图那个位置&#xff0c;每个酒店有自己的经纬度和详细地址&#xff0c;点击地图按钮打开内置地图如图 方法如下&#xff1a; <view class"dttu" click"openMap(info.locationY,info.…

快照读与当前读 是怎样的?

在数据库系统中&#xff0c;快照读&#xff08;Snapshot Read&#xff09;和当前读&#xff08;Current Read&#xff09;是两种不同的数据读取方式&#xff0c;它们与事务的隔离级别和一致性保证紧密相关。 快照读&#xff08;Snapshot Read&#xff09; 快照读是一种读取操…

Vue使用vue-cropper裁剪图片作头像

1.安装 工程目录下运行cmd npm install vue-cropper -S2.引用组件 全局引入&#xff0c;在main.js中添加 import VueCropper from vue-cropper Vue.use(VueCropper)3.使用裁剪框 这里httpUrl可以随意选择一张网络图片的连接作测试 <!-- 图片裁剪框 --><div style…

(18)GPS/指南针(一)

文章目录 前言 1 GPS/指南针 2 RTK GPS 3 GPS驱动程序选项 4 GPS自动切换 5 高级用途 前言 Copter/Plane/Rover 支持与 GPS、指南针和其他定位技术的整合&#xff1a; 1 GPS/指南针 Avionics Anonymous GNSS CompassAvionics Anonymous CompassBeitain BN-220 GPS / B…

源码解读:如何正确使用并区分@Resource和@Autowired注解?

环境&#xff1a;Spring5.3.23 源码解读&#xff1a;如何正确使用Resource和Autowired注解&#xff1f; 1.注解区别 Resource 和 Autowired 都可以用于&#xff0c;依赖注入。但它们之间存在一些明显的区别。 1.提供方&#xff1a; Autowired 是 Spring 提供的注解。Resour…

[Labview] 改写表格内容并储存覆盖Excel

在上一个功能的基础上&#xff0c;新增表格改写保存功能 [Labview] Excel读表 & 输出表单中选中的单元格内容https://blog.csdn.net/Katrina419/article/details/140120584 Excel修改前&#xff1a; 修改保存后&#xff0c;动态改写储存Excel&#xff0c;并重新写入新的表…

[21] Opencv_CUDA应用之使用Haar级联的对象检测

Opencv_CUDA应用之使用Haar级联的对象检测 Haar级联使用矩形特征来检测对象,它使用不同大小的矩形来计算不同的线和边缘特征。矩形包含一些黑色和白色区域,如下图所示,它们在图像的不同位置居中 类Haar特征检测算法的思想是计算矩形内白色像素和黑色像素之间的差异这个方法的…

【HDC.2024】云原生中间件,构筑软件安全可信的连接桥梁

近日&#xff0c;在华为云开发者大会2024期间&#xff0c;来自华为云PaaS服务&#xff0c;中间件领域产品团队的资深专家、技术总监、高级产品经理等大咖们发表了以“云原生中间件&#xff0c;构筑软件安全可信的连接桥梁”为主题的专题演讲。 演讲伊始&#xff0c;华为云产品…

Python编程使用openai的API访问oneapi暴露的ollama qwen2大模型

首先安装conda 安装Python 3.12 &#xff08;低版本的可能缺少openai库&#xff09; conda create -n py312 python3.12 conda activate py312 然后 pip install openai 提示&#xff1a; Installing collected packages: openai Successfully installed openai-1.35.…

关于 Mybatis 的开启二级缓存返回对象不一致问题

做实验报告的时候&#xff0c;跟着学习&#xff0c;发现我已经将 开启 二级缓存的 配置都配置好了&#xff0c;但是返回值地址不一致&#xff0c;说明对象不一致&#xff0c;二级缓存命中失败。 跟着流程配置&#xff1a; mybatis-config <settings><!-- 启用 myba…