目錄
回顧
上篇中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