Kafka+Slipstream實現網站實時點擊統計

Kafka + Slipstream 實現網站點擊量統計

實驗目的

掌握StreamSQL的基本用法。
掌握Slipstream流處理的基本過程。
理解輸入流表、衍生流表、結果表和流任務的關係。

  1. Kafka topic 創建
  2. 創建輸入流表
  3. 創建衍生流表
  4. 創建inceptor結果表,存儲流數據處理結果
  5. 啓動流任務
  6. 向Kafka topic 發送數據 通過console producer 向kafka topic 發送數據
  7. 查看inceptor 結果表中的流處理結果

kafka topic 創建

cd TDH_Client/kafka/bin

./kafka-topics --create --topic topic_log_xueshen --zookeeper ip1:2181,ip2:2181,ip3:2181
--partitions 4 --replication-factor 2

./kafka-topic.sh --list --zookeeper ip1:2181,ip2:2181,ip3:2181

2 創建輸入流表

create stream log_xueshen(ip string,url string,time timestamp) row format
delimited fields terminated by ',' 
tblproperties("topic"="topic_log_xueshen",
"kafka.zookeeper"="172.16.140.85:2181,172.16.140.86:2181,172.16.140.87:2181",
"kafka.broker.list"="172.16.140.85:9092,172.16.140.86:9092,172.16.140.87:9092");

3 創建衍生流表
創建衍生流表, 窗口 length和slide 均爲10秒

create stream wlog_xueshen as select * from log_xueshen streamwindow sw as (length '10' second slide '10' second);

4 創建inceptor 結果表,存儲流處理的結果

use dbname;
create table result_table(url stirng,count int);

5 啓動流任務

insert into result_table select url,count(*) from wlog_xueshen group by url;

6 向kafka topic 發送數據 通過 console producer 向 kafka topic 發送數據
cd TDH_Client/kafka/bin

./kafka-console-producer.sh --topic topic_log_xueshen --broker-list
ip1:9092,ip2:9092,ip3:9092

發送給Kafka的實驗數據:可通過粘貼的方式進行
27.0.1.125,www.transwarp.io/home.html,2016-8-14 20:12:31.132
54.231.66.16,www.transwarp.io/product.html,2016-8-14 20:12:32.132
72.21.203.5,www.transwarp.io/case.html,2016-8-14 20:12:33.132
207.241.224.2,www.transwarp.io/product.html,2016-8-14 20:12:34.132
12.129.206.133,www.transwarp.io/product.html,2016-8-14 20:12:51.132
208.111.148.7,www.transwarp.io/home.html,2016-8-14 20:12:52.132

查看inceptor 結果表中的流處理結果

select * from result_table;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章