模块一:平台搭建与运维

(一)任务一:大数据平台搭建

1.子任务-:Zookeeper 集群安装配置

本任务需要使用 root 用户完成相关配置,具体要求如下

(1)在master 节点将/usr/1oca1/src 目录下的apache-zookeeper-3.5.7-bin.tar.gz包解压到/opt 路径下,将完整命令截图粘贴到对应答题报告中;

答:tar zxf /opt/software/apache-zookeeper-3.5.7-bin.tar.gz -C /opt/module

tar zxf /opt/s拷贝到 slave1、slave2oftware/kafka_2.12-2.4.1.tgz -C /opt/module

Zookeeper配置:

cp /opt/module/apache-zookeeper-3.5.7-bin/conf/zoo_sample.cfg /opt/module/apache-zookeeper-3.5.7-bin/conf/zoo.cfg

vim conf/zoo.cfg

dataDir=/opt/module/apache-zookeeper-3.5.7-bin/data

server.1=master:2888:3888

server.2=slave1:2888:3888

server.3=slave2:2888:3888

mkdir /opt/module/apache-zookeeper-3.5.7-bin/data

cd data/

echo 1 > myid

(2)在 master 节点上面将配置的 Zookeeper 环境变量文件及 Zookeeper 解压包拷贝到 slave1、slave2 节点,将命令和结果截图粘贴到对应答题报告中;

答:scp -r /opt/module/apache-zookeeper-3.5.7-bin root@slave1:/opt/module/

scp -r /opt/module/apache-zookeeper-3.5.7-bin root@slave2:/opt/module/

(3)将 slave1节点上面/opt/zookeeper-3.5.7/data目录下的 myid 文件内容修改为 2,将 slave2 节点上面/opt/zookeeper-3.5.7/data目录下的myid 文件内容修改为3,将命令和结果截图粘贴到对应答题报告中;

答:修改其他机器的myid文件,slave1改为2,slave2改为3

(4)在 master 节点、slavel 节点、slave2 节点分别启动 zookeeper,将命令和结果截图粘贴到对应答题报告中:

答:zkServer.sh start

2.子任务二:Hadoop 完全分布式集群搭建

本任务需要使用 root 用户完成相关配置,安装 Hadoop需要配置前置环境。命令中要求使用绝对路径,具体要求如下:

(1)在master 节点将/usr/loca1/src 目录下的hadoop-3.1.3.tar.gz包解压到/opt 路径下,将完整命令截图粘贴到对应答题报告中;

答:tar zxvf hadoop-3.2.1.tar.gz -C /opt/module/

(2)在 master 节点修改/root/.bash-profile 文件,设置Hadoop环境变量,将环境变量配置内容截图粘贴到对应答题报告中;

答:hadoop-env.sh:

export JAVA_HOME=/opt/module/jdk1.8.0

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

core-site.xml:

<!– 在configuration标签内添加以下内容 –>

<property>

<name>fs.defaultFS</name>

    <value>hdfs://master:9000</value>

</property>

<!– 临时文件存放位置 –>

<property>

<name>hadoop.tmp.dir</name>

    <value>/opt/module/hadoop-3.2.1/hadoopDatas/tempDatas</value>

</property>

(3)在 master 节点上面修改 Hadoop 的配置文件hdfs-site.xm1,需要在该文件中指定上传的文件的副本数为3,将修改的内容截图粘贴到对应答题报告中;

答:hdfs-site.xml:

<!– 在configuration标签内添加以下内容 –>

<!– 设置副本数量 –>

<property>

        <name>dfs.replication</name>

    <value>2</value>

</property>

<!– namenode存放的位置,老版本是用dfs.name.dir –>

<property>

        <name>dfs.namenode.name.dir</name>

    <value>/opt/module/hadoop-3.2.1/hadoopDatas/namenodeDatas</value>

</property>

<!– datanode存放的位置,老版本是dfs.data.dir –>

<property>

        <name>dfs.datanode.data.dir</name>

    <value>/opt/module/hadoop-3.2.1/hadoopDatas/datanodeDatas/</value>

</property>

<!– 关闭文件上传权限检查 –>

<property>

        <name>dfs.permissions.enalbed</name>

    <value>false</value>

</property>

<!– namenode运行在哪儿节点,默认是0.0.0.0:9870,在hadoop3.x中端口从原先的50070改为了9870 –>

<property>

        <name>dfs.namenode.http-address</name>

    <value>master:9870</value>

</property>

<!– secondarynamenode运行在哪个节点,默认0.0.0.0:9868 –>

<property>

        <name>dfs.namenode.secondary.http-address</name>

    <value>master:9868</value>

</property>

(4)在 master 节点上面修改 Hadoop 的配置文件需要在该文件中指定YARN 的yarn-site.xml,ResourceManager的地址为slave2,将修改的内容截图粘贴到对应答题报告中;

答:mapred-site.xml:

<!– 在configuration标签内添加以下内容 –>

<!– 设置mapreduce在yarn平台上运行 –>

<property>

        <name>mapreduce.framework.name</name>

    <value>yarn</value>

</property>

<!– 配了上面这个下面这个也得配, 不然跑mapreduce会找不到主类。MR应用程序的CLASSPATH–>

<property>

        <name>mapreduce.application.classpath</name>

    <value>/opt/module/hadoop-3.2.1/share/hadoop/mapreduce/*:/opt/module/hadoop-3.2.1/share/hadoop/mapreduce/lib/*</value>

</property>

<!– 历史服务器端地址 –>

<property>

    <name>mapreduce.jobhistory.address</name>

    <value>master:10020</value>

</property>

<!– 历史服务器web端地址 –>

<property>

    <name>mapreduce.jobhistory.webapp.address</name>

    <value>master:19888</value>

</property>

 

yarn-site.xml:

<!– 在configuration标签内添加以下内容 –>

<!– resourcemanager运行在哪个节点 –>

<property>

        <name>yarn.resourcemanager.hostname</name>

    <value>master</value>

</property>

<!– nodemanager获取数据的方式 –>

<property>

        <name>yarn.nodemanager.aux-services</name>

    <value>mapreduce_shuffle</value>

</property>

<!– 关闭虚拟内存检查 –>

<property>

        <name>yarn.nodemanager.vmem-check-enabled</name>

    <value>false</value>

</property>

 

workers:

# 删掉里面的localhost,添加以下内容

master

slave1

slave2

(5)在 master 节点上面将配置的 Hadoop 环境变量文件及 Hadoop 解压包拷贝到slave1、slave2 节点,将命令和结果截图粘贴到对应答题报告中;

答:scp -r /opt/module/hadoop-3.2.1 root@slave1:/opt/module/

scp -r /opt/module/hadoop-3.2.1 root@slave2:/opt/module/

(6)在master节点上面初始化 Hadoop 环境 namenode,将初始化命令及初始化结果截图粘贴到对应答题报告中;

答:hdfs namenode -format

(7)启动 Hadoop 集群(在master 节点启动 hdfs,在slave2节点启动 yarn),使用 ips 查看 master 节点、slave1节点、slave2节点的进程,将查看结果截图粘贴到对应答题报告中。

答:start-all.sh

mapred –daemon start historyserver(mr-jobhistory-daemon.sh start historyserver)

3.子任务三:Hive 安装配置

本任务需要使用 root用户完成相关配置,已安装Hadoop及需要配置前置环境,具体要求如下

(1)在master 节点将/usr/loca1/src 目录下的apache-hive-3.1.2-bin.tar.gz安装包解压到/opt 路径下将完整命令截图粘贴到对应答题报告中:

答:tar zxf apache-hive-3.1.2-bin.tar.gz -C /opt/module/

(2)修改 hive-site.xm1 配置文件,将 MySOL 数据库作为 Hive 元数据库。将配置 Hive 元数据库的相关内容截图粘贴到对应答题报告中;

答:vi /etc/profile

export HIVE_HOME=/opt/module/apache-hive-3.1.2-bin

export PATH=$PATH:$HIVE_HOME/bin

source /etc/profile

hive –version

cp hive-env.sh.template hive-env.sh

vim hive-env.sh

HADOOP_HOME=/opt/module/hadoop-3.2.1

export HIVE_CONF_DIR=/opt/module/apache-hive-3.1.2-bin/conf

export HIVE_AUX_JARS_PATH=/opt/module/apache-hive-3.1.2-bin/lib

(3)将/usr/1oca1/src 目录下的 MySQL 数据库 JDBC 驱动 mysql-connector-java-5.1.27-bin.jar 拷贝到 Hive安装目录的1ib 文件夹下,将完整命令截图粘贴到对应答题报告中;

答:cp /opt/module/ mysql-connector-java-5.1.47.jar /opt/module/apache-hive-3.1.2-bin/lib

touch hive-site.xml

vim hive-site.xml

<configuration>

    <property>

        <name>javax.jdo.option.ConnectionURL</name>

        <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8</value>

        <description>JDBC connect string for a JDBC metastore</description>

    </property>

    <property>

        <name>javax.jdo.option.ConnectionDriverName</name>

        <value>com.mysql.jdbc.Driver</value>

        <description>Driver class name for a JDBC metastore</description>

    </property>

    <property>

        <name>javax.jdo.option.ConnectionUserName</name>

        <value>root</value>

        <description>username to use against metastore database</description>

    </property>

    <property>

        <name>javax.jdo.option.ConnectionPassword</name>

        <value>123456</value>

        <description>password to use against metastore database</description>

    </property>

</configuration>

(4)初始化 Hive 元数据库,将初始化命令及结果截图粘贴到对应答题报告中;

答:/opt/module/apache-hive-3.1.2-bin/bin/schematool -initSchema -dbType mysql -verbos

(5)启动Hive,将命令输出结果截图粘贴到对应答题报告中;

答:hive

(二)任务二:数据库配置维护

1.子任务一:数据库配置

MySQL 是一个多用户数据库,具有功能强大的访问控制系统,可以为不同用户指定不同权限。root用户是超级管理员,拥有所有权限,包括创建用户、删除用户和修改用户密码等管理权限。

为了实际项目的需要,可以定义不同的用户角色,并为不同的角色赋予不同的操作权限。当用户访问数据库时,需要先验证该用户是否为合法用户,再约束该用户只能在被赋予的权限范围内操作。具体任务要求如下:

(1)为本地主机数据库创建一个名为 staff 的用户!密码为 staff123456,将完整命令及结果截图粘贴到对应答题报告中;

答:set global validate_password_policy=LOW;

CREATE USER ‘staff’@’localhost’ IDENTIFIED BY ‘staff123456’;

(2)查看用户,确认有刚才创建的 staff 用户,将完整命令及结果截图粘贴到对应答题报告中;

答:SELECT user, host FROM mysql.user;

(3)将用户名 staff 修改为 newstaff,将完整命令及结果截图粘贴到对应答题报告中;

答:RENAME USER ‘staff’@’localhost’ TO ‘newstaff’@’localhost’;

(4)授予用户 newstaff对 WeatherDB 数据库中weather_month 表的查询、插入、删除权限,将完整命令及结果截图粘贴到对应答题报告中(MyS0L数据库中已创建好WeatherDB数据库,如果不存在则需要自己建库并导入数据提供的几个 sq1 是数据源文件);

答:CREATE DATABASE WeatherDB CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;

GRANT SELECT, INSERT, DELETE ON WeatherDB.weather_month TO ‘newstaff’@’localhost’;

(5)使用新用户 newstaff 登录MySQL 数据库,查看是否有 WeatherDB 数据库,并查看WeatherDB 数据库下有哪此表,将完整命令及结果截图粘贴到对应答题报告中:(6)删除 newstaff 的用户,并确认是否已经删除newstaff用户,将完整命令及结果截图粘贴到对应答题报告中;

答:mysql -u newstaff -p

show databases;

use WeatherDB;

show tables;

(6)删除 newstaff 的用户,并确认是否已经删除newstaff用户,将完整命令及结果截图粘贴到对应答题报告中:

答:DROP USER ‘newstaff’@’localhost’;

2.子任务二:数据表与数据管理

气候变化正在迅速地改变地球。随着全球气温不断升高海平面上升、极端天气事件频繁发生,人们对于地球的未来更加担忧。为了更好地了解气候变化的趋势、预测未来天气趋势,我们创建了“天气数据库”,用于收集、组织和记录来自全球各地的气象数据和天气预报信息。它的作用不仅仅是记录过去的天气情况,更是提供了一个全球性、长期性的气候趋势预测工具,使气象学家和气候学家能够更好地了解气候变化的趋势,从而采取适当的措施应对未来的气候变化:本任务的具体要求如下:

2024年职业院校中职组ZZ052大数据应用与服务赛项赛题第05套+部分答案

答:CREATE TABLE WeatherDB.province_city (

    city_id INT AUTO_INCREMENT PRIMARY KEY,

    city_name VARCHAR(255) NOT NULL,

    province_name VARCHAR(255) NOT NULL,

climate VARCHAR(255) NOT NULL

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

(2)使用 SQL 命令修改 province_city 表中 climate列的列名为 climate-new,将完整命令及结果截图粘贴到对应答题报告中;

答:ALTER TABLE WeatherDB.province_city CHANGE climate climate_new VARCHAR(255);

(3)使用 SOL 命令给 province-city 表增加一个字段zip-code(代表邮编),字段类型应符合实际意义,将完整命令及结果截图粘贴到对应答题报告中:

答:ALTER TABLE WeatherDB.province_city ADD zip_code VARCHAR(6);

(4)使用 SOL 语句给 province_city 表中插入一条数据,数据的具体信息如下:城市ID为10001、城市名称为阆中市、省份名称为四川省、气候条件为亚热带季风气候、邮编为 637400。将完整SQL语句及运行结果截图粘贴到对应答题报告中。

答:INSERT INTO WeatherDB.province_city (city_id, city_name, province_name, climate_new, zip_code) VALUES (10001, ‘阆中市’, ‘四川省’, ‘亚热带季风气候’, 637400);

(5)使用 SOL 语句批量给 province_city 表中插入三条数据,将完整SQL语句及运行结果截图粘贴到对应答题报告中。数据的具体信息如下:

2024年职业院校中职组ZZ052大数据应用与服务赛项赛题第05套+部分答案

答:INSERT INTO WeatherDB.province_city (city_id, city_name, province_name, climate_new, zip_code)

VALUES

(10002, ‘江油市’, ‘四川省’, ‘亚热带季风性湿润气候’, 621700),

(10003, ‘灯塔市’, ‘辽宁省’, ‘北温带大陆性气候’, 111300),

(10004, ‘玉环市’, ‘浙江省’, ‘暖温带大陆性季风气候’, 317610);

(6)使用 SQL 语句修改 province_city 表中城市 ID 为10004 的城市信息,将气候修改为亚热带海洋性季风气候,将邮编修改为 317600。将完整 SOL 语句及运行结果截图粘贴到对应答题报告中:

答:UPDATE WeatherDB.province_city  

SET climate_new = ‘亚热带海洋性季风气候’, zip_code = 317600  

WHERE city_id = 10004;

3.子任务三:维护数据表

SQL 作为一种全球通用的语言,任何人都可以学习使用虽然看起来很复杂,除开特定数据库系统专用的 SOL命令其它基本上不需要任何事先的知识,而且命令通常比较少S0L能够快速的查询和统计大量数据,发现数据的趋势和数据之间的关系。S0L 是一种与数据库打交道的标准语言,熟练地使用 SOL 可以确保每个使用数据库的人都会使用相同的命令,使得开发人员更容易创建与多个数据库一起工作的应用程序。本任务的具体要求如下:

(1)使用 SOL命令查看 weather_month 表中第 20000至第 20100条数据(查询结果只显示第20000至第20100条数据),将完整 SOL 语句和运行结果的后5条数据以及总数据行数截图粘贴到对应答题报告中;

答:SELECT * FROM WeatherDB.weather_month  

LIMIT 100 OFFSET 19999;

(2)使用 SOL 语句分别查询四川省、广东省、浙江省下面有哪些城市,输出省份 id、省份名称、城市 id、城市名称、邮编、城市等级、气候条件。将完整SOL 语句和各省份相关城市查询结果的后5条数据以及总数据行数截图粘贴到对应答题报告中:

答:SELECT   

    ci.id AS city_id,  

    ci.city_name,  

    ci.zip_code,  

    ci.level,  

    ci.climate,  

    pr.province_id,  

    pr.province_name  

FROM   

    city_info ci  

JOIN   

    province_info pr ON ci.province_id = pr.province_id  

WHERE   

pr.province_name IN (‘四川省’, ‘广东省’, ‘浙江省’);

(3)使用 SOL语句查询 weather_month 表,筛选出哪些城市在 2018 年的月度温差大于等于5度的(平均最高气温-平均最低气温),输出城市 id、城市名称、日期、平均最高气温、平均最低气温。将完整SOL语句和运行结果的后5条数据以及总数据行数截图粘贴到对应答题报告中:

答:SELECT   

    city_id,  

    city_name,  

    month,  

    avg_high_temp,  

    avg_low_temp  

FROM (  

    SELECT   

        city_id,  

        city_name,  

        month,  

        avg_high_temp,  

        avg_low_temp,  

        (avg_high_temp – avg_low_temp) AS temperature_difference  

    FROM   

        weather_month  

    WHERE   

        month LIKE ‘2018-%’ — 只选择2018年的数据  

) AS subquery  

WHERE   

    temperature_difference >= 5; — 筛选温差大于等于5度的记录

(4)使用 SOL 语句查询 weather_day 表中各个城市每年的最高温度和最低温度分别是多少度,输出城市id、城市名称、日期(格式为年)、最高温度、最低温度。将完整S0I语句和运行结果的后5条数据以及总数据行数截图粘贴到对应答题报告中

答:SELECT   

    city_id,  

    city_name,  

    YEAR(day) AS year,  

    MAX(hightest_temp) AS max_temp,  

    MIN(lowest_temp) AS min_temp  

FROM   

    weather_day  

GROUP BY   

    city_id, city_name, YEAR(day)  

ORDER BY   

    city_id, year;

相关新闻

联系我们

027-87870986

在线咨询:点击这里给我发消息

邮件:931234110@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息