Datawahle组队学习——妙趣横生大数据 Day1

news/2024/11/28 22:49:59/

妙趣横生大数据 Day1

  • [妙趣横生大数据 Juicy Big Data](https://datawhalechina.github.io/juicy-bigdata/#/?id=妙趣横生大数据-juicy-big-data)
    • 一、大数据概述
      • 大数据——第三次信息化浪潮
      • 大数据概念
      • 大数据应用
      • 大数据关键技术
    • 二、Hadoop
      • 背景
      • 介绍
      • 特性
      • 项目架构
    • 实验
        • 1. 准备工作
        • 2. 安装jdk
        • 3. 安装 openssh
        • 4. 安装 hadoop
      • 一、伪分布式安装
          • 1. 修改`core-site.xml`、`hdfs-site.xml`、`mapred-site.xml`和`yarn-site.xml`这4个文件
          • 2. 格式化分布式文件系统
          • 3. 测试
      • 二、集群模式安装
          • 1. 修改、`core-site.xml`、`hdfs-site.xml`、`mapred-site.xml`和`yarn-site.xml`这4个文件
          • 2. hadoop workers文件配置,编辑/etc/hosts文件,创建公钥并拷贝公钥
          • 3. 格式化分布式文件系统
          • 4. 测试

妙趣横生大数据 Juicy Big Data

Datawhale[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oJrzSM8H-1676443816587)(null)]大数据技术相关内容的导论课程:妙趣横生大数据 Juicy Big Data Day1


一、大数据概述

大数据——第三次信息化浪潮

信息化浪潮时间标志解决的问题
第一次浪潮1980个人计算机信息处理
第二次浪潮1995互联网信息传输
第三次浪潮2010物联网、云计算和大数据信息爆炸
  1. 大数据的价值不在于数据本身,而在于数据所反映问题的真实性和科学性。

  2. 数据的采集存储只是大数据运用的第一阶段,更关键的是对数据的分析、利用,达到发现新知识、创造新价值的效果。

大数据概念

4V

  • 数据量大(Volume) :物联网普及,传感器、摄像头产生的海量数据
  • 数据类型多(Variety):生物大数据、交通大数据、医疗大数据、电信大数据、电力大数据、金融大数据等;结构化数据(10%)和非结构化数据(90%)
  • 处理速度快(Velocity):为快速分析海量数据,新兴的大数据分析技术通常采用集群处理和独特的内部设计
  • 价值密度低(Value):价值密度却远远低于传统关系数据库中已经有的数据

大数据应用

领域大数据的应用
金融行业大数据在高频交易、社交情绪分析和信贷风险分析三大金融创新领域发挥重要作用
互联网行业借助于大数据技术,可以分析客户行为,进行商品推荐和有针对性的广告投放
餐饮行业利用大数据实现餐饮O2O模式,彻底改变传统餐饮的经营方式
生物医学大数据可以帮助我们实现流行病预测、智慧医疗、健康管理,同时还可以帮助我们解读DNA,了解更多的生命奥秘

大数据关键技术

  1. 大数据是数据和大数据技术这二者的综合

  2. 大数据技术,是指伴随着大数据的采集、传输、处理和应用的相关技术,是一系列使用非传统的工具来对大量的结构化、半结构化和非结构化数据进行处理,从而获得分析和预测结果的一系列数据处理和分析技术。

  3. 从数据分析全流程的角度,大数据技术主要包括数据采集、数据存储和管理、数据处理与分析、数据安全和隐私保护等几个层面的内容。


二、Hadoop

背景

搜索:

  1. Lucene:工具包,在目标系统中实现全文检索的功能

  2. Nutch:建立在Lucene核心之上的网页搜索应用程序,开箱即用。站内检索–>全球网络搜索

搜索对象“体积”不断增大:

  1. 分布式文件存储系统(NDFS,Nutch Distributed File System):为了存储海量搜索数据而设计的专用文件系统,基于google的GFS

  2. MapReduce编程模型:大规模数据集(大于1TB)的并行分析运算

介绍

HadoopHDFS(Hadoop Distributed File System) + MapReduce

Hadoop是Apache软件基金会旗下的一个开源分布式计算平台,为用户提供了系统底层细节透明的分布式基础架构。Hadoop是基于Java语言开发的,具有很好的跨平台特性,并且可以部署在廉价的计算机集群中。

特性

  • 高可靠性、高容错性:冗余数据存储方式
  • 高效性分布式存储和分布式处理两大核心技术,高效地处理PB级数据
  • 高可扩展性
  • 成本低:廉价的计算机集群
  • 运行在Linux平台上
  • 支持多种编程语言

项目架构

  • Common:为其他子项目提供支持的常用工具,它主要包括FileSystem、RPC和串行化库
  • Avro:用于数据库序列化的系统
  • HDFS:分布式文件系统
  • HBase:列式数据库,一般采用HDFS作为其底层数据存储
  • Pig:一种数据流语言和运行环境
  • Sqoop:改进数据的互操作性,主要用来在Hadoop和关系数据库之间交换数据
  • Chukwa:数据收集系统
  • Zookeeper:一个为分布式应用所涉及的开源协调服务

实验

1. 准备工作

# 创建容器
docker run --name=hadoop ubuntu /bin/bash
# 添加用户,赋予权限
useradd zym -m -d /home/zym -s /bin/bash
passwd zym
usermod -aG sudo zym

2. 安装jdk

wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie"  http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.tar.gz
sudo tar -xzvf /data/hadoop/jdk-8u131-linux-x64.tar.gz -C /opt

在这里插入图片描述

sudo mv /opt/jdk1.8.0_131/ /opt/java
sudo chown -R zym:zym /opt/java

在这里插入图片描述

修改系统环境变量

sudo vim /etc/profile
# 1. 添加java环境变量
# 2. 激活使环境变量生效
source /etc/profile
# 3. 查看版本
java -version

请添加图片描述

请添加图片描述

3. 安装 openssh

# 更新apt,并安装文本编辑器、SSH服务和screen服务
apt-get update && apt-get install -y vim openssh-server screen && rm -rf /var/lib/apt/lists/*

查看是否安装成功

service ssh start
# 设置 ssh 服务开机自启
echo 'service ssh start'>>~/.bashrc

SSH登录权限设置
请添加图片描述

解决方法:将容器内22端口和宿主机内端口完成映射即可。

教你如何修改运行中的docker容器的端口映射的三种方式_docker修改端口映射_是阿俏同学吖的博客-CSDN博客

4. 安装 hadoop

hadoop国内镜像站点:Index of /apache/hadoop/common/hadoop-3.3.1 (tsinghua.edu.cn)

wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.3.1/hadoop-3.3.1.tar.gz
sudo tar -xzvf hadoop-3.3.1.tar.gz -C /opt/
sudo mv /opt/hadoop-3.3.1/ /opt/hadoop
sudo chown -R zym:zym /opt/hadoop
sudo vim /etc/profile
1. 添加以下内容
#hadoop
export HADOOP_HOME=/opt/hadoop
export PATH=$HADOOP_HOME/bin:$PATH
2. 激活,查看版本
source /etc/profile
hadoop version

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cJZVaiCm-1676443808236)(C:\Users\ZYM\AppData\Roaming\Typora\typora-user-images\image-20230213161119633.png)]

修改hadoop-env.sh文件配置

vim etc/hadoop/hadoop-env.sh
# 追加
export JAVA_HOME=/opt/java/

测试

mkdir input
cp etc/hadoop/*.xml input
bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.3.1.jar grep input output 'dfs[a-z.]+'
cat output/*

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-y1NtDreq-1676443808237)(C:\Users\ZYM\AppData\Roaming\Typora\typora-user-images\image-20230213161542965.png)]


一、伪分布式安装

1. 修改core-site.xmlhdfs-site.xmlmapred-site.xmlyarn-site.xml这4个文件

详细见 [第二章:Hadoop (datawhalechina.github.io)](https://datawhalechina.github.io/juicy-bigdata/#/ch2 Hadoop?id=_2335-hadoop伪分布式安装)

2. 格式化分布式文件系统
hdfs namenode -format
/opt/hadoop/sbin/start-all.sh
3. 测试

输入jps命令可以查看Java进程

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0Ag6ejr3-1676443808237)(C:\Users\ZYM\AppData\Roaming\Typora\typora-user-images\image-20230213164451118.png)]

执行wordcount程序, 测试

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6JwXlFUp-1676443808238)(C:\Users\ZYM\AppData\Roaming\Typora\typora-user-images\image-20230213164927253.png)]


二、集群模式安装

此处我将实验一伪分布式安装的docker容器commit为了镜像,用来构建子节点。 还可以直接search有Hadoop的镜像,或者直接编写dockerfile Task01 详读第1、2章Hadoop内容 (plutos.org.cn)

1. 修改、core-site.xmlhdfs-site.xmlmapred-site.xmlyarn-site.xml这4个文件

详细见 [第二章:Hadoop (datawhalechina.github.io)](https://datawhalechina.github.io/juicy-bigdata/#/ch2 Hadoop?id=_2335-hadoop伪分布式安装)

2. hadoop workers文件配置,编辑/etc/hosts文件,创建公钥并拷贝公钥
# 1. 修改hadoop workers文件配置
vim /opt/hadoop/etc/hadoop/workers
# 2. 编辑/etc/hosts文件
sudo vim /etc/hosts
# 3. 创建公钥并拷贝公钥
ssh-keygen -t rsa
ssh-copy-id master
# 4. 修改文件权限
chmod 700 /home/zym/.ssh
chmod 700 /home/datawhale/.ssh/*
3. 格式化分布式文件系统
hdfs namenode -format
/opt/hadoop/sbin/start-all.sh
4. 测试

输入jps命令可以查看主节点和两个从节点的Java进程

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tqLhDOq2-1676443808238)(C:\Users\ZYM\AppData\Roaming\Typora\typora-user-images\image-20230215135803073.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1urxGPFP-1676443808239)(C:\Users\ZYM\AppData\Roaming\Typora\typora-user-images\image-20230215135829861.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IG5aAGlr-1676443808239)(C:\Users\ZYM\AppData\Roaming\Typora\typora-user-images\image-20230215135849535.png)]

执行wordcount程序, 测试

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ciSn2epR-1676443808239)(C:\Users\ZYM\AppData\Roaming\Typora\typora-user-images\image-20230215140200578.png)]


遇到的问题汇总:

  1. Docker内22端口无法访问:

    解决方法:将容器内22端口和宿主机内端口完成映射即可。

    教你如何修改运行中的docker容器的端口映射的三种方式_docker修改端口映射_是阿俏同学吖的博客-CSDN博客

  2. 安装 hadoop 太慢

    hadoop国内镜像站点:Index of /apache/hadoop/common/hadoop-3.3.1 (tsinghua.edu.cn)

  3. DataNode 不显示
    Hadoop中DataNode没有启动

    log目录:/opt/hadoop/logs/hadoop-zym-datanode-df735624a7d9.log
    ​VERSION参考查询目录:/tmp/hadoop-datawhale/dfs/data/current/VERSION


Datawhale[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oJrzSM8H-1676443816587)(null)]大数据技术相关内容的导论课程:妙趣横生大数据 Juicy Big Data


http://www.ppmy.cn/news/155655.html

相关文章

length() 用法

length:(字符串 | 列):求出字符串的长度; 求出bqh4表中zym列的长度。 select * from bqh4select a.*,length(zym) from bqh4 a 转载于:https://www.cnblogs.com/su-root/p/9752050.html

ROS 解决catkin_make时cmake error Invoking cmake failed

照着官网教程做的时候执行catkin_make命令时报错 CMakeLists.txt:52 (find_package) Configuring incomplete, errors occurred! See also "/home/zym-sf/catin_ws/build/CMakeFiles/CMakeOutput.log". See also "/home/zym-sf/catin_ws/build/CMakeFiles/C…

探究Ptcms小说采集规则

1、首页的更新列表页采集 ,新增http://www.31xs.org/首页采集规则 PTCMS内置 [subnovelid] // floor(小说ID/1000) [novelid] //小说ID [页码] //列表采集页码 [空白] //空白 包含换行和空格 [内容] //等同于 .? 匹配之间的任何字符 [数字] // 等同于 \d 匹配0-9数字组合 常用…

dpdk源码---vfio(zym)

主要想找到从nvme设备 到 vfio驱动的代码路径 [spdk/lib/nvme/nvme_pcie.c] nvme_pcie_ctrlr_scan(struct spdk_nvme_probe_ctx *probe_ctx,bool direct_connect) (nvme_tcp,nvme_rdma等都有自己的scan,probe等函数,统一被封装起来,如下) 1 int nvme_transport_c…

Linux系统下安装minio并设置SSL证书进行HTTPS远程连接访问

下载minio并且设置权限 创建一个文件夹用于保存下载的minio mkdir /usr/local/minio在创建的文件夹中用wget下载Linux版本的minio服务端 wget https://dl.min.io/server/minio/release/linux-amd64/minio下载完成后设置权限 chmod x minio启动安装minio默认HTTP访问 启动m…

PTA-学生成绩录入及查询 zym广东外语外贸大学

本题有巨坑! 学生成绩表中,一名学生的信息包含如下信息: 学号(11位)、姓名、数学成绩、英语成绩、程序设计成绩、物理成绩。 本题要求编写程序,录入N条学生的信息,并且按查询要求显示学生成绩等信息。 输入格式: 输…

zmy

怎么整积分

网安学习-Python安全开发

目录 Python学习的意义 涉及相关技术 案例一:IP&Whois&系统指纹获取代码段-外网 查询IP whois查询 案例二:CDN&子域名&端口扫描&交互代码段-外网 判断CDN 子域名查询 端口扫描 案例三:Py格式解析环境与可执行…