目录
回顾
上篇中addSink一直没有执行,后来在countWindow中加了第二个参数(slide)莫名可以执行,【还可能和kafka不稳定有关系】
后续分析
本次编写了浏览地区分布、网络、浏览器使用分析代码,与之前的分析大致类似就不粘贴代码了,代码均已更新到文末github中,可自行浏览。
本地Mysql数据库添加部分电商数据
手动创建部分电商信息
安装Mysql和Hive
下载apache-hive-1.0.0-bin.tar.gz、MySQL-5.5.53-1.linux2.6.x86_64.rpm-bundle.tar
安装mysql
进入目录执行:
rpm -i MySQL-server-5.5.53-1.linux2.6.x86_64.rpm
可能报如下错误:需删除mariadb-libs-1:5.5.52-1.el7.x86_64
执行:rpm -e mariadb-libs-1:5.5.52-1.el7.x86_64 --nodeps
继续执行
安装成功如下:
启动mysql服务
mysqld_safe &
安装客户端
rpm -i MySQL-client-5.5.53-1.linux2.6.x86_64.rpm
执行命令mysql_secure_installation
设置root用户密码(我设置123456)
mysql -uroot -p123456
安装hive
tar之后,添加hive-site.xml
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value>
</property>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
</property>
<property>
<name>hive.metastore.local</name>
<value>true</value>
</property>
</configuration>
没有配置hadoop环境变量的需要配置一下
添加驱动包(mysql-connector-java-5.1.40-bin.jar)到hive的lib目录下
修改mysql权限
grant all on hive.* to 'root'@'%' identified by '123456';
flush privileges;
连接hive如图:
总结
修改之前的bug,编写浏览地区分布、网络、浏览器使用分析代码;添加电商模拟数据安装mysql和hive;
之后通过sqoop同步电商数据。
具体代码可参照我的git项目地址,现有代码均已通过测试可以使用,后续会持续更新,直到项目结束,不懂的细节,可以关注公众号:阿清的日常,后台留言,会细致解答。
git地址:https://github.com/jyqjyq/filnkDS.git