通过HDFS命令和编程上传京东商城评论数据

1. 需求说明

    目前,我国电子商务行业发展迅速,规模不断扩大,促使日常生活中网购盛行,各个电商平台竞争激烈,通过构造消费者反馈机制,使得消费者反馈通畅,消费者评论蕴含丰富信息,充分挖掘这类信息,有利于提升电商平台自身的运营竞争力,为用户的选购及厂商的改进提供改善建议。

    从京东商城通过网络爬虫获取的商品评论数据需要进行预处理,因此需要将评论数据上传到HDFS上。以下是商品评论Json数据。

2. 作业要求

        要求每位学生通过HDFS Shell命令和Java API编程两种方式将已经爬取的京东商城商品评论数据上传到HDFS指定目录中,具体实现功能如下:

(1)通过HDFS Shell命令上传京东商城评论数据。

任务一:在HDFS创建目录

命令:

hdfs dfs -mkdir /jdgoods

hdfs dfs -ls /jdgoods/comments

运行结果:

任务二:上传商品评论数据到HDFS

命令:

hdfs dfs -put /data/jdd /jdgoods

运行结果:

(2)通过HDFS提供的Java API编程上传京东商城评论数据。

源代码:

import java.io.IOException;

import java.net.URISyntaxException;

import org.apache.hadoop.conf.Configuration;

import org.apache.hadoop.fs.FileSystem;

import org.apache.hadoop.fs.Path;

public class hadooptest01 {



    public static void main(String[] args) {

        Configuration conf = new Configuration();

        String hdfsUri = "hdfs://hadoop01:9000"; // 替换为你的HDFS URI

        String localFilePath = "C:\\Users\\Administrator\\Desktop\\实验和作业数据\\京东商品评论数据\\jdd2"; // 替换为本地文件路径

        String hdfsDirectory = "/jdgoods/comments/"; // 替换为HDFS目标目录



        try {

            conf.set("fs.defaultFS", hdfsUri);

            FileSystem fs = FileSystem.get(conf);

            Path localPath = new Path(localFilePath);

            Path hdfsPath = new Path(hdfsDirectory);

            fs.copyFromLocalFile(localPath, hdfsPath);

            fs.close();

            System.out.println("文件上传成功!");

        } catch (Exception e) {

            e.printStackTrace();

        }

    }

}

运行结果:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值