日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Spark 实时电商数据分析及可视化

發(fā)布時(shí)間:2024/4/14 编程问答 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spark 实时电商数据分析及可视化 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Spark 實(shí)時(shí)電商數(shù)據(jù)分析可視化系統(tǒng)是一個(gè)經(jīng)典的大數(shù)據(jù)應(yīng)用項(xiàng)目,技術(shù)棧主要有 Flume、Kafka、Spark Streaming、Flask 等,幫助大家了解和運(yùn)用一些當(dāng)前熱門(mén)的大數(shù)據(jù)處理組件來(lái)親自動(dòng)手搭建一套大數(shù)據(jù)處理平臺(tái)框架和熟悉大數(shù)據(jù)項(xiàng)目的基礎(chǔ)開(kāi)發(fā)流程。

數(shù)據(jù)采集與傳輸

實(shí)驗(yàn)介紹

本實(shí)驗(yàn)將帶領(lǐng)大家通過(guò)實(shí)驗(yàn)樓平臺(tái)所提供的線上環(huán)境實(shí)現(xiàn)項(xiàng)目前期的數(shù)據(jù)采集與傳輸模塊,以此對(duì) Flume 和 Kafka 這兩個(gè)組件在項(xiàng)目中的應(yīng)用有一定的了解。

知識(shí)點(diǎn)

  • Flume 和 Kafka 基本操作命令
  • Kafka 中 Topic 的創(chuàng)建
  • Flume 作為 Kafka 數(shù)據(jù)源的配置
  • Zookeeper、Kafka、Flume 整合使用
  • Flume 與 Kafka 整合的優(yōu)點(diǎn)
  • 數(shù)據(jù)消費(fèi)

技術(shù)介紹及其在項(xiàng)目中的運(yùn)用

Zookeeper 簡(jiǎn)介

為分布式應(yīng)用提供支持的一種協(xié)調(diào)分布式服務(wù),項(xiàng)目中主要用于管理 Kafka。除此之外還可提供統(tǒng)一配置管理、域名集中訪問(wèn)、分布式鎖和集群管理等服務(wù)。

Flume 簡(jiǎn)介

一種日志采集系統(tǒng),具備高可用、高可靠和分布式等優(yōu)點(diǎn),可定制各類數(shù)據(jù)發(fā)送方,用于數(shù)據(jù)的收集;傳輸過(guò)程中,可對(duì)數(shù)據(jù)進(jìn)行簡(jiǎn)單處理,并可定制數(shù)據(jù)接收方,具備事務(wù)性,只有當(dāng)數(shù)據(jù)被消費(fèi)之后才會(huì)被移除,項(xiàng)目中接收方定制為 Kafka。

在使用 Flume 的時(shí)候,可編寫(xiě)自定義的過(guò)濾器進(jìn)行初次的數(shù)據(jù)清洗,減少后期 ETL 的壓力,但是此項(xiàng)目用的數(shù)據(jù)集較為簡(jiǎn)單,僅需后期簡(jiǎn)單清洗即可,如果對(duì)這方面感興趣的同學(xué)們可以去自行學(xué)習(xí)后,將過(guò)濾器加進(jìn)此項(xiàng)目中測(cè)試。

Kafka 簡(jiǎn)介

一種高性能分布式消息隊(duì)列系統(tǒng)組件,具有數(shù)據(jù)持久化、多副本備份、橫向擴(kuò)展和處理數(shù)據(jù)量大等特點(diǎn)。Kafka 需要部署于 Zookeeper 同步服務(wù)上,用于實(shí)時(shí)流式數(shù)據(jù)分析。項(xiàng)目中用作存放 Flume 采集的數(shù)據(jù)。Kafka 中也存在攔截器機(jī)制,可對(duì)傳入的消息進(jìn)行攔截和修改。

Flume 與 Kafka 結(jié)合使用的好處

  • 實(shí)際項(xiàng)目開(kāi)發(fā)中,由于數(shù)據(jù)源的多樣性和數(shù)據(jù)的復(fù)雜性,如采用構(gòu)建多個(gè) Kafka 生產(chǎn)者、通過(guò)文件流的方式向主題寫(xiě)入數(shù)據(jù)再供消費(fèi)者消費(fèi)的話,很不方便。
  • 進(jìn)行實(shí)時(shí)數(shù)據(jù)處理時(shí),由于 Flume 的數(shù)據(jù)采集速度過(guò)快,數(shù)據(jù)處理過(guò)慢時(shí),可能會(huì)發(fā)生數(shù)據(jù)的堆積或者丟失,此時(shí)可把 Kafka 當(dāng)做一個(gè)消息緩存隊(duì)列,用于存放一段時(shí)間的數(shù)據(jù)。
  • Kafka 屬于中間件,可降低項(xiàng)目耦合性,使某模塊出錯(cuò)時(shí)不會(huì)干擾其它組件。

源數(shù)據(jù)

源數(shù)據(jù)為用戶行為日志數(shù)據(jù)集中截取的 10w 條記錄,日志字段定義如下表所示:

字段名說(shuō)明
userId用戶 id
goodsId商品 id
catId商品類別 id
sellerId賣(mài)家 id
brandId品牌 id
month交易月份
date交易日期
action用戶操作行為:{0:點(diǎn)擊, 1:加入購(gòu)物車, 2:購(gòu)買(mǎi), 3:關(guān)注}
ageLevel客戶年齡段:{1:age<18, 2:18~24, 3:25~29, 4:30~34, 5:35~39, 6:40~49, 7 和 8: age>=50, 0 和 NULL:未知}
gender性別:{0:女, 1:男, 2 和 NULL:未知}
province省份

下載?test.csv?測(cè)試數(shù)據(jù),考慮到運(yùn)行環(huán)境內(nèi)存,數(shù)據(jù)量不是很大,如果使用自己機(jī)器進(jìn)行實(shí)現(xiàn),可以去網(wǎng)絡(luò)上找一份比較大數(shù)據(jù)量的數(shù)據(jù)集。

cd /home/shiyanlou/Desktop # 測(cè)試數(shù)據(jù)拉取 wget https://labfile.oss.aliyuncs.com/courses/2629/test.csv

數(shù)據(jù)具體格式如下圖所示,字段排列順序按上表。

預(yù)期成果

結(jié)合提供的 Spark 開(kāi)發(fā)環(huán)境,開(kāi)啟 Flume 采集端后,Kafka 的控制臺(tái)消費(fèi)者能夠不斷的消費(fèi) Topic 中的數(shù)據(jù),在命令窗口中進(jìn)行顯示。


以上內(nèi)容來(lái)自課程《Spark 實(shí)時(shí)電商數(shù)據(jù)分析及可視化》,通過(guò)課程可以學(xué)到:

點(diǎn)擊鏈接,可學(xué)習(xí)完整課程哦!前二章免費(fèi)試學(xué)!

總結(jié)

以上是生活随笔為你收集整理的Spark 实时电商数据分析及可视化的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。