摘要:互聯(lián)網領域蘊含著海量的數(shù)據(jù)信息,且這些信息呈現(xiàn)出多樣性以及復雜性,總體而言,可以大致將這些數(shù)據(jù)劃分成用戶行為數(shù)據(jù)和內容數(shù)據(jù),科學精細地分析處理這些數(shù)據(jù),是強化用戶分群治理效率、內容分類研究以及實現(xiàn)精細化運營的重要手段。但現(xiàn)階段尚無一站式的大數(shù)據(jù)聚類分析系統(tǒng)可供人們使用,因此,文章詳細分析和闡述了基于大數(shù)據(jù)平臺的聚類分析系統(tǒng)設計與實現(xiàn),以此為相關工作人員提供參考。
關鍵詞:大數(shù)據(jù);聚類分析;系統(tǒng)設計;系統(tǒng)實現(xiàn)
Design and Implementation of Cluster Analysis System for Big Data Platform
SUN Xuefeng
(Capital University of Economics and Trade, Miyun Branch, Beijing 101500, China)
Abstract: The internet field contains a vast amount of data information, which presents diversity and complexity. Overall, this data can be roughly divided into user behavior data and content data, and scientifically and meticulously analyzed and processed. It is an important means to strengthen the efficiency of user group governance, research on content classification, and achieve refined operations. However, at present, there is no one-stop big data clustering analysis system available for the public to use. Therefore, this article conducts research on this topic, analyzes and elaborates in detail on the design and implementation of clustering analysis systems based on big data platforms, in order to provide reference for relevant staff.
Key words: big data; cluster analysis; system design; system implementation
1" "大數(shù)據(jù)平臺聚類分析系統(tǒng)架構設計
1.1 功能架構設計
用戶聚類分析系統(tǒng)功能架構設計首先是創(chuàng)建聚類任務,根據(jù)相對應的核心條件(比如圈人條件以及調度頻率等),待聚類任務運行完畢后創(chuàng)建cluster level數(shù)據(jù)便能夠予以可視化呈現(xiàn)。之后在可視化呈現(xiàn)的基礎上通過人工予以再次標注,并予以再次聚合計算,如此便可生成tribe level指標數(shù)據(jù)并用于用戶分析。如圖1所示[1]。
1.2 技術架構設計
(1)前端展示:具備與用戶進行交互的功能。用戶通過該頁面登錄進入該聚類分析系統(tǒng),之后用戶進行的創(chuàng)建聚類任務、查看聚類結果等相關操作行為均在該模塊范圍內[2]。
(2)后端調度:該模塊的核心職責是響應前端傳輸至此的全部請求,同時和數(shù)據(jù)庫、HDFS、Hive等系統(tǒng)協(xié)同合作,將全部信息內容予以歸類整合以及權限校驗等,最后利用JSON格式傳輸回前端,再通過前端的渲染之后呈現(xiàn)至用戶的顯示設備上。
(3)算法聚類:該模塊在獲取到后端圈選完成的人群樣本之后會予以K-Means聚類分析,把接收的樣本全部根據(jù)用戶設置的K值予以聚類,再把存在一致或類似行為特點的人聚合至相同的cluster內,最后便會獲得一份極具應用價值的離線數(shù)據(jù)信息,該信息內容涵蓋關鍵的cluster以及user對應關系,全部cluster分布,接著后端模塊便可通過該信息成果實施離線模式的計算,以此獲得全部cluster指標。
(4)離線計算:該模塊在聚類結束后,會對聚類保存的內容予以附加指標計算,以此獲取全部cluster指標。cluster指標的獲取主要源于維度建模的數(shù)據(jù)庫機制,屬于極具代表性的大數(shù)據(jù)離線計算方法,其運行原理為工作流的編排方法,各個聚類任務間均能夠非間接性地配備單向依賴關系,其在觸發(fā)工作流任務計算期間還能夠根據(jù)提前設定完成的層級予以運算,以此獲取最好結果[3]。
2" "大數(shù)據(jù)平臺聚類分析系統(tǒng)的實現(xiàn)——算法聚類實現(xiàn)
2.1 算法選型
先明確目標,本文中設計的聚類分析系統(tǒng),其目標是完成對用戶以及其他內容的聚類分析。但需要注意的是,因公司內部的算法部門早已對其予以算法模型性訓練,因此多數(shù)用戶均具備64維向量結果。站在總目標的角度分析,不僅要具備允許用戶進行個性化設置聚類顆粒度的性能,還需呈現(xiàn)cluster演變歷程和移動變化信息。因此,根據(jù)以上重點內容,能夠明確并篩選出最佳聚類算法時間要素(具體內容如下),之后遵循要素進行算法實驗,以此促成大數(shù)據(jù)平臺聚類分析系統(tǒng)性能的實現(xiàn)[4]。
2.1.1 要素一:目標64維推薦向量在空間中的分布情況
從聚類系統(tǒng)內目標用戶分析需求最高的樣本群體中任意選擇了5 000位用戶,并對其64維推薦向量予以降維處理,待降至二維之后便可以觀察其分布狀態(tài)(見圖3)。各個群體間具有重復部分,這便證明差異性群體間依舊存在相似行為操作,如此就能夠將其歸納成大群體tribe,因此用戶推薦向量于二維空間中的分布狀態(tài)呈球狀和凸集的數(shù)據(jù)。
2.1.2 要素二:算法的復雜性、數(shù)據(jù)量及其資源的trade-off
因該聚類分析系統(tǒng)的目標為構建基于大數(shù)據(jù)的一站式聚類分析平臺,且聚類任務均為用戶自主選定,傳輸文件的樣本選定方法控制在最大只允許1 GB的文件予以上傳,因利用以上條件選定的樣本數(shù)量難以得到有效控制,所以待用戶精準選定某范圍時,其樣本大約會有幾十萬,若條件控制并非高精度,其樣本的實際數(shù)量便會達到千萬及以上。針對此類樣本,應有效地得到其64維推薦向量,如此便會應用到極多機器資源(比如內存以及CPU等)?;诖耍x定和應用的算法決不可具備極強的復雜性,否則算法便會耗費大量時間進行擬合,同時聚類系統(tǒng)也要于相同時段對多種差異性任務予以聚類,進而占據(jù)過多資源造成浪費[5]。
2.1.3 要素三:可理解性以及算法穩(wěn)定性
(1)可理解性:此聚類分析系統(tǒng)的目標用戶普遍為產品經理、運營以及管理人員,多數(shù)用戶早已對其要觀察監(jiān)測的對象有一定了解,但也僅限于數(shù)據(jù)樣本自身,如年齡、地域、操作系統(tǒng)的分布等。在創(chuàng)建聚類任務過程中,與算法強相關的錄入信息不可過多,盡量控制到最少,僅輸入一個聚類顆粒度也允許,如果仍需用戶再次選定相應的數(shù)據(jù)信息,便不會對用戶快速掌握此系統(tǒng)而提供便利。
(2)算法穩(wěn)定性:此穩(wěn)定性具備雙層意義:一是指算法運行的穩(wěn)定性,即在一致性的輸入和較小差異性的資源條件下,需要在較小差異性的時間內穩(wěn)定得出一致結果;二是指獨立聚類任務差異性周期調度instance中的cluster需不間斷地維持穩(wěn)定[6]。
2.2 算法實驗
(1)P y t h o n S k l e a r n :通過P y t h o n具備的Sklearn機器,掌握package內具備的clustering算法邏輯思想以及應用方法,再選擇高契合度的KMeans或MiniBatchKMeans進行聚類。
(2)Spark Scala Mllib:通過Spark Scala內含有的Mlib機器,有效掌握package內具備的clustering算法邏輯思想以及應用方法進行聚類。Spark Yarn分布式執(zhí)行體系,其制定速度存在較大的波動性,速度值忽高忽低,且極易受到Yarn隊列資源的干擾和束縛,若Yarn隊列資源儲量足夠豐富,可顯著提升其執(zhí)行速度和穩(wěn)定性。
(3)大小數(shù)據(jù)量場景:因顧慮高資源是否充足,Spark Yarn集群資源相對稀缺,極易高干擾聚類算法的實施速度和效果,因此該處進行了大小數(shù)據(jù)場景拆分處理。
(4)本次實驗涉及的相關數(shù)據(jù)信息:Python的本地內存容量為276 GB,且還支持數(shù)據(jù)量的持續(xù)增加,其向量維度為64維,聚類算法實現(xiàn)的詳細步驟見圖4所示。
3" "結束語
綜上所述,為有效設計并構建出基于大數(shù)據(jù)的一站式聚類分析系統(tǒng),本文從聚類系統(tǒng)的功能以及技術架構入手,詳細分析和闡述了其設計內容,并根據(jù)三要素選定聚類分析系統(tǒng)的高匹配度聚類算法,同時還給出了實驗相關數(shù)據(jù),為用戶內容以及其他內容提供高效處理的平臺,同時也給該領域的后續(xù)研究提供參考。
參考文獻
[1] 龔靜,劉現(xiàn)芳.云計算中基于群體智能算法的大數(shù)據(jù)聚類挖掘[J].科技創(chuàng)新與生產力,2022(9):87-90.
[2] 江雪姣.基于大數(shù)據(jù)技術的網絡信息資源分類檢索方法[J].信息與電腦(理論版),2022,34(13):10-12.
[3] 符春.大數(shù)據(jù)平臺聚類分析系統(tǒng)的設計[J].電子技術與軟件工程,2022(13):202-205.
[4] 肖川.基于Spark的集成電路專利數(shù)據(jù)聚類分析研究與實現(xiàn)[D].南昌:南昌大學,2022.
[5] 解瑩.基于大數(shù)據(jù)聚類分析的電網信息化運維系統(tǒng)設計[J].電子技術與軟件工程,2020(15):165-166.
[6] 翁?。贖adoop的IPv6網絡安全日志大數(shù)據(jù)的聚類分析與應用[D].蘭州:蘭州交通大學,2019.
作者簡介:孫雪峰(1980-),男,北京人,講師,博士研究生,研究方向為計算機應用技術專業(yè)、計算機網絡與應用技術、新媒體與網絡傳播。