淘宝双11数据分析与预测汇总

Posted lanhuo666

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了淘宝双11数据分析与预测汇总相关的知识,希望对你有一定的参考价值。

国庆假期留在学校做了一下林子雨博士的大数据实验--淘宝双11数据分析与预测,虽然教程写得很详细,但自己还是踩了很多坑,现在记录下来,希望给别人一点帮助。

淘宝双11数据分析与预测实验链接:http://dblab.xmu.edu.cn/post/8116/

问题一:安装Hadoop时报错

Starting namenodes on [localhost]
localhost: mkdir: 无法创建目录"/usr/local/hadoop/logs": 权限不够
localhost: chown: 无法访问"/usr/local/hadoop/logs": 没有那个文件或目录
localhost: starting namenode, logging to /usr/local/hadoop/logs/hadoop-dblab-namenode-dblab-virtual-machine.out
localhost: /usr/local/hadoop/sbin/hadoop-daemon.sh: 行 159: /usr/local/hadoop/logs/hadoop-dblab-namenode-dblab-virtual-machine.out: 没有那个文件或目录
localhost: head: 无法打开"/usr/local/hadoop/logs/hadoop-dblab-namenode-dblab-virtual-machine.out" 读取数据: 没有那个文件或目录
localhost: /usr/local/hadoop/sbin/hadoop-daemon.sh: 行 177: /usr/local/hadoop/logs/hadoop-dblab-namenode-dblab-virtual-machine.out: 没有那个文件或目录
localhost: /usr/local/hadoop/sbin/hadoop-daemon.sh: 行 178: /usr/local/hadoop/logs/hadoop-dblab-namenode-dblab-virtual-machine.out: 没有那个文件或目录
localhost: mkdir: 无法创建目录"/usr/local/hadoop/logs": 权限不够
localhost: chown: 无法访问"/usr/local/hadoop/logs": 没有那个文件或目录
localhost: starting datanode, logging to /usr/local/hadoop/logs/hadoop-dblab-datanode-dblab-virtual-machine.out
localhost: /usr/local/hadoop/sbin/hadoop-daemon.sh: 行 159: /usr/local/hadoop/logs/hadoop-dblab-datanode-dblab-virtual-machine.out: 没有那个文件或目录
localhost: head: 无法打开"/usr/local/hadoop/logs/hadoop-dblab-datanode-dblab-virtual-machine.out" 读取数据: 没有那个文件或目录
localhost: /usr/local/hadoop/sbin/hadoop-daemon.sh: 行 177: /usr/local/hadoop/logs/hadoop-dblab-datanode-dblab-virtual-machine.out: 没有那个文件或目录
localhost: /usr/local/hadoop/sbin/hadoop-daemon.sh: 行 178: /usr/local/hadoop/logs/hadoop-dblab-datanode-dblab-virtual-machine.out: 没有那个文件或目录
Starting secondary namenodes [0.0.0.0]
0.0.0.0: mkdir: 无法创建目录"/usr/local/hadoop/logs": 权限不够
0.0.0.0: chown: 无法访问"/usr/local/hadoop/logs": 没有那个文件或目录
0.0.0.0: starting secondarynamenode, logging to /usr/local/hadoop/logs/hadoop-dblab-secondarynamenode-dblab-virtual-machine.out
0.0.0.0: /usr/local/hadoop/sbin/hadoop-daemon.sh: 行 159: /usr/local/hadoop/logs/hadoop-dblab-secondarynamenode-dblab-virtual-machine.out: 没有那个文件或目录
0.0.0.0: head: 无法打开"/usr/local/hadoop/logs/hadoop-dblab-secondarynamenode-dblab-virtual-machine.out" 读取数据: 没有那个文件或目录
0.0.0.0: /usr/local/hadoop/sbin/hadoop-daemon.sh: 行 177: /usr/local/hadoop/logs/hadoop-dblab-secondarynamenode-dblab-virtual-machine.out: 没有那个文件或目录
0.0.0.0: /usr/local/hadoop/sbin/hadoop-daemon.sh: 行 178: /usr/local/hadoop/logs/hadoop-dblab-secondarynamenode-dblab-virtual-machine.out: 没有那个文件或目录
[email protected]-virtual-machine:/usr/local/hadoop$ sudo chown -R niugen /usr/local/hadoop

报错原因:权限不够

解决方法:

sudo chown -R 你自己电脑到用户名 /usr/local/hadoop

 

问题二:Error: JAVA_HOME is not set and could not be found.

 解决方法: JAVA_HOME 环境变量没设置好,请按教程在.bashrc文件中设置好JAVA_HOME,如果还是出现 Error: JAVA_HOME is not set and could not be found. 的错误,就到hadoop的安装目录修改配置文件“/usr/local/hadoop/etc/hadoop/hadoop-env.sh”,在里面找到“export JAVA_HOME=${JAVA_HOME}”这行,然后,把它修改成JAVA安装路径的具体地址,比如,
“export JAVA_HOME=/usr/lib/jvm/你自己到java版本”,然后,再次启动Hadoop。

 

问题三:使用Sqoop将Hive数据导入到MySQL中

报错内容:

ERROR manager.SqlManager: Error executing statement: java.sql.SQLException: Access denied for user root@localhost (using password: YES)
...
ERROR tool.ExportTool: Encountered IOException running export job: java.io.IOException: No columns to generate for ClassWriter

报错原因:操作权限不够
解决方法:
首先用命令service mysql start确保mysql已经启动,进入操作界面 mysql -u root -p,按提示输入的mysql密码,然后执行下面命令修改远程登录权限

mysql> grant all privileges on *.* to [email protected] identified by root;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.04 sec)

 

问题四:将Hive数据导入到MySQL时报错

报错内容:

ERROR:"Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient"

报错原因:换数据库时没有和hive成功通信。
解决方法:在确保Hive和MySQL配置步骤正确执行的前提下,在终端输入如下命令

source /usr/local/hive/scripts/metastore/upgrade/mysql/hive-schema-3.0.0.mysql.sql//使这个版本的配置文件有用!注意更换文件路径 

schematool -dbType mysql -initSchema//进行初始化.运行显示成功就可以正常通信了。

 

问题五:新建Java Web项目时,没有找到Dynamic Web Project

问题原因:安装的是专门开发java项目的,而Dynamic Web Project属于J2EE技术,所以你要专门下载一个集成了J2EE插件的Eclipse,(eclipse-jee-helios-SR2-win32)
解决方法:
方法一:先卸载之前的eclipse版本,到eclipse官网下载相对应版本的IDE

官网链接:http://www.eclipse.org/downloads/packages/release/neon/2/eclipse-ide-java-ee-developers

方法二:查看博客https://www.cnblogs.com/longronglang/p/7156383.html  (如果你在原来的eclipse版本下执行这个方法不成功,请转到方法一

 

问题六:Eclipse导入外部的jar包

ps:与其说这是一个问题,不如说这是一个注意项。之前天真以为导入jar包只要鼠标左键拖拉进去就可以,其实这种做法是错误的。

正确操作步骤查看此链接:https://jingyan.baidu.com/article/ca41422fc76c4a1eae99ed9f.html

 







以上是关于淘宝双11数据分析与预测汇总的主要内容,如果未能解决你的问题,请参考以下文章

大数据应用技术课程实践--选题与实践方案

大数据仓库技术实训任务3

大数据仓库技术实训任务3

大数据仓库技术实训任务3

大数据仓库技术实训任务3

大数据应用技术课程实践--选题与实践方案