大数据入门实践一:mac安装Hadoop,Hbase,FLume

一、安装Hadoop

安装hadoop参考此文,关键点是安装JDK和Hadoop的配置,为避免引用文章变收费,我把关键信息摘录如下:

jdk安装和配置就不说了(我本机安装了1.8/15/17/21,以17为主),hadoop安装过程:

1.设置SSH免密

1. 打开系统偏好设置,在输入框输入sharing(共享),勾选”远程连接“:

2.打开终端,依次输入如下命令:

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/id_rsa.pub

3.输入【ssh localhost】验证,无需输入密码则成功

2.下载并解压hadoop安装包

到官网下载需要的版本,我下载的是3.3.6,然后解压到用户下自己用户名的目录下:

3.修改配置文件

(1)vim ~/.zprofile(路径修改为自己安装包的路径)

# Hadoop
export HADOOP_HOME=/Users/wangxiaoxuan/hadoop-3.3.6/
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib/nativ"

输入【source ~/.zprofile】使内容生效

(2)cd /Users/wangxiaoxuan/hadoop-3.3.6/etc/hadoop 

vim hadoop-env.sh

export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk-1.8.jdk/Contents/Home"

(3)vim core-site.xml,将标签<configuration></configuration>中内容替换如下,路径需换成自己的路径

<configuration><property><name>hadoop.tmp.dir</name><value>/Users/wangxiaoxuan/hdfs/tmp/</value></property><property><name>fs.default.name</name><value>hdfs://127.0.0.1:9000</value></property>
</configuration>

(4)vim hdfs-site.xml,将标签<configuration></configuration>中内容替换如下,路径需换成自己的路径

  <property><name>dfs.data.dir</name><value>/Users/wangxiaoxuan/hdfs/namenode</value></property><property><name>dfs.data.dir</name><value>/Users/wangxiaoxuan/hdfs/datanode</value></property><property><name>dfs.replication</name><value>1</value></property>
</configuration>

(5)vim mapred-site.xml,将标签<configuration></configuration>中内容替换如下,无需更改路径

<configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property>
</configuration>

(6)vim yarn-site.xml,将标签<configuration></configuration>中内容替换如下,无需更改路径

<configuration><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property><property><name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name><value>org.apache.hadoop.mapred.ShuffleHandler</value></property><property><name>yarn.resourcemanager.hostname</name><value>127.0.0.1</value></property><property><name>yarn.acl.enable</name><value>0</value></property><property><name>yarn.nodemanager.env-whitelist</name><value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PERPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value></property>
</configuration>

4.运行

执行【hdfs namenode -format】 如果报错,需要先执行【stop-all.sh】

执行【start-all.sh】,查看resourcemanager 和nodemanagers是否启动成功

执行【jps】可查看进程

5.验证

在浏览器中输入http://localhost:9870/

显示如下:

二、安装HBase

参考了此文

1.下载安装包,我下载的是2.6.0,解压

2.配置

(1)vim conf/hbase-site.xml  去配置hbase.rootdir,来选择HBase将数据写到哪个目录 

<configuration><property><name>hbase.rootdir</name><value>hdfs://localhost:9000/hbase</value></property><property><name>hbase.cluster.distributed</name><value>true</value></property><property><name>hbase.unsafe.stream.capability.enforce</name><value>false</value></property>
</configuration>

hbase.rootdir:该参数制定了HReion服务器的位置,即数据存放的位置。主要端口号要和Hadoop相应配置一致。
hbase.cluster.distributed:HBase的运行模式。false是单机模式,true是分布式模式。若为false, HBase和Zookeeper会运行在同一个JVM里面,默认为false。
 

3.启动HBase

cd /users/shuaizai/hbase/hbase-2.3.0/bin,执行start-hbase.sh

启动完成后通过jps命令检查HBase进程:

启动成功后可以看到几个正在运行的Java进程,包括Hadoop(DataNode、NameNode)、Zookeeper(HQuorumPeer)和HBase(HMaster、HRegionServer)。

可以打开http://localhost:16010/master-status 查看

4.操作

  • 进入HBase交互式界面hbase shellstatus命令查看HBase集群运行状态,list命令列出HBase库中的表:

  create 'student','Sname','Ssex','Sage','Sdept','course'

5.退出

  • 关闭HBase
    先退出exit,然后输入stop-abase.sh

三、Flume

参考此文,我用的brew,之前没有安装homebrew,安装后再用brew install flume安装的Flume。

不知道是网络问题还是什么原因,我安装下载了差不多一天,占用空间快2G才安装完成,中间失败好几次,重复执行就好了。

1.配置环境变量

vim ~/.bash_profile ,路径修改为自己的flume安装路径:

export FLUME_HOME=/usr/local/Cellar/flume/1.11.0/libexec
export FLUME_CONF_DIR=$FLUME_HOME/conf
export PATH=$FLUME_HOME/bin:$PATH

source ~/.bash_profile 使配置生效

2.配置flume-env.sh

cd /opt/homebrew/Cellar/flume/1.9.0_1/libexec/confcp flume-env.sh.template flume-env.shvim flume-env.sh
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home
export JAVA_OPTS="-Xms100m -Xmx2000m -Dcom.sun.management.jmxremote"

根据自己jdk情况修改配置即可

执行 flume-ng version查看版本号。

安装完成

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

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

相关文章

简单剖析tRPC-Go中使用的第三方协程池ants

tRPC-Go中的tRPC.Go()方法使用了ants协程池&#xff0c;做个简单剖析 panjf2000/ants协程池 在tRPC.Go方法&#xff08;异步启动goroutine&#xff09;中看到里面使用了ants协程池去实现&#xff08;具体位置&#xff1a;g.pool.Invoke(p)&#xff09; 前置知识: 我们想异步完…

技巧解析,如何向Kimi提问才能写出更好的论文?

学境思源&#xff0c;一键生成论文初稿&#xff1a; AcademicIdeas - 学境思源AI论文写作 今天为大家整理、分享的Kimi提问技巧&#xff0c;将对论文写作的各个阶段提供帮助&#xff0c;可以以此来辅助学术论文撰写。 在此之前&#xff0c;先为大家科普一个概念——信息熵&am…

Python学习笔记11:入门终结篇

前言 入门知识到这里基本结束了&#xff0c;这里主要讲一下input和range。这两个讲完&#xff0c;讲讲后面进阶学些啥。 range函数 之前将循环的时候讲过一点&#xff0c;这个函数是Python内置的函数&#xff0c;主要用来生成一系列数字&#xff0c;简单方便。 这里重新&…

跨服务器迁移 Redis 数据

跨服务器迁移 Redis 数据可以通过以下几种方法实现&#xff1a; 使用 redis-cli 工具进行数据导出和导入&#xff1a; 先从源 Redis 服务器导出数据。然后将数据导入到目标 Redis 服务器。 使用 rdb 文件&#xff1a; 将源 Redis 服务器的 dump.rdb 文件拷贝到目标服务器&…

非连续分配管理方式(重点)

目录 一. 基本分页存储管理1.1 什么是分页存储1.2 页表 二. 基本地址变换机构三. 具有快表的地址变换机构3.1 什么是快表3.2 引入快表后, 地址的变换过程3.3 局部性原理 四. 两级页表4.1 单级页表存在什么问题?如何解决?4.2 两级页表的原理、逻辑地址结构4.3 如何实现地址变换…

Windows11安装并使用Gstreamer-1.0

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、下载二、使用步骤1.安装2.命令行测试 总结 前言 Gstreamer这个工具的重要性就不用多说了吧&#xff0c;在一些视频播放和解码领域大放异彩。以前更多的是在…

Python | 中心极限定理介绍及实现

统计学是数据科学项目的重要组成部分。每当我们想从数据集的样本中对数据集的总体进行任何推断&#xff0c;从数据集中收集信息&#xff0c;或者对数据集的参数进行任何假设时&#xff0c;我们都会使用统计工具。 中心极限定理 定义&#xff1a;中心极限定理&#xff0c;通俗…

C# 事件(Event)定义及其使用

1.定义个委托和类 //委托 public delegate void ProductEventHandler(Product product);/// <summary> /// 产品 /// </summary> public class Product {public int Id { get; set; }public string Code { get; set; }public string Name { get; set; }private de…

Linux 和 分区

文章目录 流程挂载设备文件名 Linux 下各分区的含义家目录 流程 在windows中&#xff0c;一个硬盘要使用只需要分区、格式化之后就可以使用了 在linux中&#xff0c;除了分区和格式化之外&#xff0c;还需要一个叫挂载的操作 挂载 挂载&#xff0c;就相当于windows环境下的写…

C | 在ubuntu22下开发的一些配置

目录 VScode设置 要下载的插件&#xff1a; 卸载VScode的话就是哪装的哪删。 浅用gcc 预处理指令 使用gcc 语言编译过程 1. 预处理&#xff08;Preprocessing&#xff09; 2. 编译&#xff08;Compilation&#xff09; 3. 汇编&#xff08;Assembly&#xff09; 4. …

基于Itô扩散过程的交易策略偏微分方程matlab求解与仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.本算法原理 5.完整程序 1.程序功能描述 基于It扩散过程的交易策略偏微分方程,提出了一种确定It扩散过程。通过根据的第一次通过时间来确定问题在这个过程中&#xff0c;我们推导出交易长度的分布函数和密…

树状数组练习

先看一下最后一题&#xff0c;这是一个树状数组的题目&#xff0c;那就水一下吧,但是由于没有注意问题&#xff0c;wa了很多次 const int N (int)1e5 5; int n; int flag[N]; int dp[N]; class Solution { public:vector<int> countOfPeaks(vector<int>& num…

趣味C语言——【猜数字】小游戏

&#x1f970;欢迎关注 轻松拿捏C语言系列&#xff0c;来和 小哇 一起进步&#xff01;✊ &#x1f389;创作不易&#xff0c;请多多支持&#x1f389; &#x1f308;感谢大家的阅读、点赞、收藏和关注&#x1f495; &#x1f339;如有问题&#xff0c;欢迎指正 感谢 目录 代码…

重生之 SpringBoot3 入门保姆级学习(20、场景整合 Docker 的 Redis 对接与基础使用)

重生之 SpringBoot3 入门保姆级学习&#xff08;20、场景整合 Docker 的 Redis 对接与基础使用&#xff09; 6.3 整合 Redis 6.3 整合 Redis 1、创建新项目编写 application.properties 配置文件 # redis 配置 spring.data.redis.host192.168.1.4 spring.data.redis.port6379如…

SVM-SMO算法

SMO算法思想 上面这个优化式子比较复杂&#xff0c;里面有m个变量组成的向量α&#x1d6fc;需要在目标函数极小化的时候求出。直接优化时很难的。SMO算法则采用了一种启发式的方法。它每次只优化两个变量&#xff0c;将其他的变量都视为常数。由于 ∑ i 1 m α i y i 0 \su…

鸿蒙开发:【PageAbility组件概述+配置】

PageAbility组件概述 PageAbility是包含UI、提供展示UI能力的应用组件&#xff0c;主要用于与用户交互。 开发者通过DevEco Studio开发平台创建PageAbility时&#xff0c;DevEco Studio会自动创建相关模板代码。PageAbility相关能力通过单独的featureAbility实现&#xff0c;…

DataWhale - 吃瓜教程学习笔记(一)

学习视频&#xff1a;第1章-绪论_哔哩哔哩_bilibili 西瓜书对应章节&#xff1a; 第一章 机器学习三观 What&#xff1a;什么是机器学习&#xff1f; 关键词&#xff1a;“学习算法” Why: 为什么要学机器学习&#xff1f; #### 1. 机器学习理论研究#### 2. 机器学习系统开…

HTML中的<br>、<hr>和<pre>标签使用指南

HTML提供了多种标签来控制文本的显示方式和页面布局。<br>、<hr>和<pre>是其中三种常用的标签&#xff0c;分别用于创建换行、水平线和预格式化文本。以下是这些标签的介绍和使用示例。 <br>标签&#xff1a;换行 <br>标签用于在文本中创建换行…

两个输入信号同时输入判断

/*******两个输入信号同时输入判断,2019 4 6**********/ /*******桥架机AB系统拉拔选择其中一个先拉进位置*****/ /***AB都在等待区A先前进,B在等待区A在中间B先前进****/ /***其中一个不在等待区拉拔后退PAST L259 CODE640****/ #include <REG52.H>…

推荐一个轻量级适合阅读的优秀C++开源项目

1. 问题2. 推荐理由3. 项目官方介绍 3.1. Source code3.2. Overview3.3. Library Features3.4. Testing Platforms3.5. Related Documents3.6. 源码仓库3.7. 概述3.8. 设计特点3.9. 已验证的平台3.10. 相关文档 1. 问题 在知乎上看到一个问题 有哪些轻量级适合阅读的优秀 C …