1.數據採集到hadoop中;node
2.數據在採集過程當中,一部分丟給hdfs,一部分丟該實時的處理系統(kafka)mysql
kafka嚴格上說並非消息隊列,消息隊列是符合 gms 規範的,有前後順序的,kafka不保證順序,嚴格意義上說kafka是一個分佈式的消息緩存,隊列是取一個少一個,而緩存是一直存在的redis
爲何要放到kafka呢,由於要對數據進行實時處理,會接一個storm,實時流式計算系統,hadoop是離線系統sql
把數據抽取出來想要的字段,例如上網時間,電話號碼,上網的流量,請求的url等,而後存儲到Hbase中數據庫
Hbase與HDFS有什麼區別?緩存
Hbase會根據每一行的主鍵(rowkey)的字典順序將數據進行排序,所以只要把行鍵設計的好,就能夠提升查詢效率服務器
大量的數據在Hbase存儲,在mysql、cracle要就存滿了,爲何在Hbase能夠存儲下?socket
Hbase天生就是分佈式實現的,mysql是靠人爲取分庫分表,而Hbase對用戶呈現就是一張表,可是這張表本質上的分佈在多個服務器上管理的,這樣的好處就是這個表能夠無限的擴容,像細胞同樣分裂表,存儲變大後就會分裂出其餘表。對用戶來講是透明的擴容分佈式
Hbase有一個主服務器Master,從服務器管理分,通常從服務器和datanode放在一塊兒oop
Hbase的業務需求比較簡單
獲取基站數據
把基站信信息放到hafka中,基站數據到kafka中間加入kafka生產者,與基站信息對接採用socket協議
這樣kafka匯聚了基站傳過來的位置信息與用戶相關信息到一塊兒 ,kafka中與topic主題,這樣互不干擾
進來一下kafka實時數據如何取處理?
redis是內存數據庫,快,持久化機制