
大数据及应用
设计报告
分布式文件管理系统(HDFS)和 HBase 操作管理
I

目 录
1.引言............................................................................................................................................... 1
1.1目的........................................................................................................................................... 1
1.2背景........................................................................................................................................... 1
2任务概述........................................................................................................................................ 1
2.1目标........................................................................................................................................... 2
3需求规定........................................................................................................................................ 2
3.1一般性需求................................................................................................................................ 2
3.2功能性需求................................................................................................................................ 2
4结论.............................................................................................................................................. 10

信息工程学院集中实践环节设计报告
1.引言
大数据(big data)是指无法在一定时间范围内用常规软件工具进行捕捉、管理和
处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能
力的海量、高增长率和多样化的信息资产。大数据有大量(Volume)、高速
(Velocity)、多样( Variety)、低价值密度( Value)、真实性( Veracity)五大
特点。它并没有统计学的抽样方法,只是观察和追踪发生的事情。大数据的用法倾向于
预测分析、用户行为分析或某些其他高级数据分析方法的使用。
对于“大数据”(Big data)研究机构 Gartner 给出了这样的定义。“大数据”是需要新
处理模式才能具有更强的决策力、洞察发现力和流程优化能力来适应海量、高增长率和
多样化的信息资产。
1.1 目的
本文档是根据 Hadoop 相关大数据操作技术进行充分调研后整理出来的,描述分布
式文件管理系统和大数据中大表的操作步骤的文档,本文档的目的是指导学生了解
Hadoop 相关技术的操作和实例案例中的业务操作。
1.2 背景
随着时代和互联网的发展,特别是在进入 5G 时代以来,网联网上每天产生的数据量
日益增多,传统的数据管理模式处理百万、千万级的数据量已经打到基线,而大数据时
代的到来,数据都是以亿为单位存储,对于大量数据的存储、读取和分析就显得各位重
要。Hadoop 是目前最主流的大数据管理框架,学习和掌握这门技术就显得非常的必要。
2 任务概述
1.hdfs 任务:代码应该存放在对应的 hdfs 包内
上传文件到 HDFS
重命名已存在的文件
下载文件到本地
删除已存在的文件
2.hbase 任务:代码应该存放在对应的 hbase 包内
提示用户选择所需要的操作
创建表:
表名为你自己的名字全拼,例如 zhangsan,列簇名为 info
插入数据:
1

信息工程学院集中实践环节设计报告
提示用户选择要操作的表
提示用户输入行的标识符
提示用户输入列名
提示用户输入列的值
删除数据:
提示用户选择要操作的表
提示用户输入要删除的数据列簇的标识符
删除表格:
提示用户选择要操作的表
提示用户输入要删除的表名
2.1 目标
项目总体目标是搭建基于 Hadoop 的大数据管理平台,不仅满足目前的业务需要,
还要满足未来的发展,而且要具备良好的可扩展性。
3 需求规定
3.1 一般性需求
使用 VMware 虚拟机软件,安装和配置 Centos 操作系统。
设置 hosts 域名访问路径和关闭防火墙
设置 SSH 免密码登录
安装和配置 Jdk1.8 环境
安装和配置 Hadoop 环境
安装和配置 HBase 环境
能够使用 XShell 和 XFtp 工具操作 Centos 系统
能够使用 idea 开发相关 Java 代码
3.2 功能性需求
POM.XML 配置
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.xgc.bigdata.pangjunjie</groupId>
<artifactId>bigdata-pangjunjie</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>8</maven.compiler.source>
2

信息工程学院集中实践环节设计报告
<maven.compiler.target>8</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.36</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-common</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-hdfs</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>2.4.1</version>
</dependency>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-it</artifactId>
<version>1.1.2</version>
</dependency>
</dependencies>
</project>
hdfs 代码
package com.xgc.bigdata.xiaxu.hdfs;
import com.xgc.bigdata.xiaxu.run.Run;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.*;
import org.apache.hadoop.io.IOUtils;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
import java.util.ResourceBundle;
import java.util.Scanner;
/**
* @Author xiaxu
*/
public class MyHdfs {
private static FileSystem fs = null;
private static Scanner scanner = new Scanner(System.in);
/*
静态代码块
*/
static {
ResourceBundle rb = ResourceBundle.getBundle("info");
Configuration configuration = new Configuration();
try {
URI uri = new URI("hdfs://"+rb.getString("hadoop.ip")
+":"+rb.getString("hadoop.hdfs.port"));
fs=FileSystem.get(uri,configuration,rb.getString("hadoop.username"));
3