• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于HHS的離線數(shù)據(jù)分析平臺的設計與實現(xiàn)

      2023-06-03 11:58:13李霄揚朱恒
      電腦知識與技術(shù) 2023年10期
      關(guān)鍵詞:海量數(shù)據(jù)

      李霄揚 朱恒

      關(guān)鍵詞:Hadopp;海量數(shù)據(jù);離線業(yè)務分析

      中圖分類號:TP311 文獻標識碼:A

      文章編號:1009-3044(2023)10-0075-03

      0 引言

      如今,計算機和信息技術(shù)發(fā)展迅猛,并且得到了普遍應用,各大行業(yè)的數(shù)據(jù)量都在以爆炸性的速度增長,全球已經(jīng)進入了“大數(shù)據(jù)”時代[1]。在大數(shù)據(jù)時代下,企業(yè)可以從龐大繁雜的數(shù)據(jù)背后挖掘和分析用戶的行為習慣和愛好,其創(chuàng)造的價值和人們的生活息息相關(guān)。在實際的商業(yè)案例,信用卡公司VISA需要處理兩年中730億單的交易,由于采用了Hadoop技術(shù),在以往技術(shù)大約需要一個月時間,而現(xiàn)在僅僅花了13 分鐘的時間[2]。顯然,企業(yè)依舊按照傳統(tǒng)的方法進行處理傳統(tǒng)的數(shù)據(jù)處理方式已經(jīng)無法滿足和解決動輒數(shù)百TB級甚至是PB級大數(shù)據(jù)的問題,尤其是在數(shù)據(jù)的存儲和計算方面。當今時代,大數(shù)據(jù)應用系統(tǒng)無處不在,對于不同的應用場景,各大系統(tǒng)需要進行具體問題具體分析,針對自己所處的場景、所想要的結(jié)果去采用不同的數(shù)據(jù)處理技術(shù)和不同的大數(shù)據(jù)框架。

      1 基于Hadoopde 大數(shù)據(jù)分析系統(tǒng)的通用架構(gòu)

      數(shù)據(jù)已經(jīng)成為重要的無形資產(chǎn)[3]。本研究的主要目標是基于Hadoop、Hive、Sqoop技術(shù),總結(jié)出大數(shù)據(jù)應用系統(tǒng)的一般架構(gòu)。Hadoop是apache旗下的一套開源軟件平臺,其功能主要有:利用服務器集群,根據(jù)用戶的自定義業(yè)務邏輯,對海量數(shù)據(jù)進行分布式處理。Hive則是基于Hadoop的一個數(shù)據(jù)倉庫工具,它能將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫表。Sqoop 是SQL-to-Hadoop的縮寫,運行在HDFS之上,主要用于實現(xiàn)結(jié)構(gòu)型數(shù)據(jù)和Hadoop之間進行數(shù)據(jù)遷移的工具[4]。這三大套件的基本架構(gòu)如圖1所示。

      2 基于Hadoopde 大數(shù)據(jù)分析系統(tǒng)的環(huán)境配置

      2.1 Hadoop 基礎(chǔ)環(huán)境的搭建

      Hadoop采用在多節(jié)點上分布式方式運行,具體安裝步驟如下:

      1)創(chuàng)建Hadoop用戶

      $ sudo useradd –m Hadoop –s /bin/bash #添加hadoop用戶

      $ sudo passwd hadoop #設置hadoop密碼

      說明:sudo是一種權(quán)限管理機制,通過該命令,普通用戶可以被管理員賦予一些只有root權(quán)限才能執(zhí)行的操作的權(quán)限。

      2)更新apt

      $ sudo apt-get update 說明:此操作的執(zhí)行目的是便于后期軟件的安裝。如果沒有更新apt,后期可能會有一些軟件安裝不了。

      3)安裝SSH、配置SSH無密碼登錄

      $ sudo apt-get install openssh-server # 安裝SSH server

      $ cd ~/.ssh/

      $ ssh-keygen -t rsa # 會有提示,都按回車就可以

      $ cat ./id_rsa.pub >> ./authorized_keys # 將id_rsa.pub加入授權(quán)

      說明:在第二行命令中,如果沒有ssh目錄,需要先執(zhí)行命令:ssh localhost。

      4)Hadoop分布式配置

      ①修改配置文件core-site.xml,新增file:/usr/local/hadoop/tmp屬性,

      修改hdfs-site.xml,新增dfs.namenode.name.dir和dfs.datanode.data.dir屬性;

      ②NameNode格式化:

      $ ./bin/hdfs namenode -format

      ③開啟NameNode和DataNode守護進程;

      ④驗證是否配置成功。

      驗證命令如下:

      jps

      說明:啟動成功則會列出如下進程:“NameNode”“DataNode”“ResourceManage”“SecondaryNameNode”。啟動成功后,可以通過在瀏覽器打開http://localhost:50070訪問Web界面查看相關(guān)信息,在該界面中,同樣可以查看HDFS中的文件,訪問成功如圖1所示。

      2.2 Hive 的安裝

      1)下載并解壓hive源程序

      $ sudo tar -zxvf ./apache-hive-1.2.1-bin.tar.gz -C /usr/local # 解壓到目錄/usr/local中

      $ cd /usr/local/

      $ sudo mv apache-hive-1.2.1-bin hive # 將文件夾名改成hive

      $ sudo chown -R hadoop:hadoop hive # 修改文件權(quán)限

      2)配置環(huán)境變量

      在.bashrc文件中添加如下內(nèi)容:

      export HIVE_HOME=/usr/local/hive

      source ~/.bashrc #保存退出,使配置生效

      3)修改hive-site.xml文件

      $ cd /usr/local/hive/conf #打開hive-site.xml文件的位置

      $ mv hive-default.xml.template hive-default.xml # 重命名文件名

      $ vim hive-site.xml #利用vim 編輯器新建一個hive-site.xml配置文件

      4)配置MySQL允許hive接入

      用戶進入MySQL命令提示符下,進行如下操作:mysql> grant all on *.* to hive@localhost identified by 'hive';

      mysql> flush privileges;

      說明:第一步是賦予權(quán)限的操作,即hive可以享有操作數(shù)據(jù)庫中所有表的權(quán)限,identified by‘hive則是配置hive的連接密碼;第二步的操作則是由于前面賦予權(quán)限的操作,這里需要刷新權(quán)限表。

      2.3 Sqoop 的安裝

      由于這里很多操作,例如解壓安裝等操作與前面類似,這里不再多作說明。

      1)下載并解壓Sqoop

      $ sudo tar -zxvf sqoop-1.4.6.bin__hadoop-2.0.4-

      alpha.tar.gz -C /usr/local

      $ sudo chown -R hadoop:hadoop sqoop #修改文件夾屬主

      2)修改配置文件sqoop-env.sh

      $ cd sqoop/conf/

      $ cat sqoop-env-template.sh >> sqoop-env.sh #復制文件

      $ vim sqoop-env.sh #編輯該腳本文件,添加相關(guān)內(nèi)容

      編輯內(nèi)容如下:

      export HADOOP_COMMON_HOME=/usr/local/ha?doop

      export HADOOP_MAPRED_HOME=/usr/local/ha?doop

      export HBASE_HOME=/usr/local/hbase

      export HIVE_HOME=/usr/local/hive

      3)配置環(huán)境變量

      方法與上述Hive的環(huán)境變量配置相同,同樣是在.bashrc的配置文件中添加Sqoop的安裝路徑,然后保存退出使其生效即可。

      4)將MySQL驅(qū)動包拷貝到$SQOOP_HOME/lib

      5)測試與MySQL的連接

      通過sqoop list-databases,并連接MySQL的端口,輸入MySQL 的登錄信息查看MySQL 中的數(shù)據(jù)庫列表。這里是在SecureCRT中進行的測試,具體命令及測試結(jié)果如圖3所示。

      3 離線數(shù)據(jù)分析應用:網(wǎng)站用戶行為分析

      “網(wǎng)站用戶行為分析”指通過網(wǎng)站中用戶的一些基本信息以及用戶的一些操作行為,例如用戶對某商品是點擊了還是收藏、加入購物車或是購買,用戶什么時間購買了什么商品哪類商品等。通過以上各種行為以及個人基本信息,可以統(tǒng)計分析出用戶的主要消費行為是什么,哪些類商品比較熱銷、用戶主要是哪類人群、哪個月份銷售量大等對網(wǎng)站運營很重要的信息。本案例需要通過給定的數(shù)據(jù)集,對該數(shù)據(jù)集進行一些必要的操作,統(tǒng)計分析出對該網(wǎng)站運營有用的信息。其基本架構(gòu)如圖4所示:

      其算法流程如圖5所示:

      以用戶消費行為為例,基于R語言實現(xiàn)數(shù)據(jù)分析可視化:

      library(ggplot2)

      ggplot(user_action,aes(as.numeric(behavior_type)))+geom_histogram()

      說明:上述命令中,第一行命令中,ggplot2表示一種繪圖包,如果要用該繪圖包,則要利用library將其導入到庫中。第二行命令表示開始利用ggplot進行繪制。在繪制時,利用“+”對圖層進行疊加,可見上述命令中創(chuàng)建了兩個圖層。在第一個圖層中,包含了兩個參數(shù):數(shù)據(jù)和變量名稱映射。上述的數(shù)據(jù)為user_ac?tion,變量名稱則需要被包含aes()函數(shù)里。上述命令中映射出behavior_type中各個值的總量。第二個圖層中,表示用直方圖進行繪制??傻玫饺鐖D6所示的分析結(jié)果。

      4 結(jié)束語

      大數(shù)據(jù)的核心價值是從龐大的數(shù)據(jù)背后挖掘和分析用戶的行為和習慣,根據(jù)得到的數(shù)據(jù)并對這些數(shù)據(jù)進行相關(guān)的分析,從而可以對用戶進行相關(guān)推薦[5]。通過用戶行為數(shù)據(jù)進行分析得到的結(jié)果為用戶推薦相關(guān)產(chǎn)品的做法已經(jīng)逐漸普遍化,本文中的系統(tǒng)架構(gòu)可以為類似的離線數(shù)據(jù)分析系統(tǒng)提供范例和參考,從而進一步地改進并提升數(shù)據(jù)分析的工作質(zhì)量。

      猜你喜歡
      海量數(shù)據(jù)
      云存儲服務端海量數(shù)據(jù)安全存儲的加密解決方案
      基于HADOOP集群的數(shù)據(jù)采集和清洗
      軟件工程(2016年11期)2017-01-17 17:05:51
      商業(yè)銀行海量金融數(shù)據(jù)分析中數(shù)據(jù)分析技術(shù)的實踐探究
      海量數(shù)據(jù)庫的設計與優(yōu)化
      基于hadoop平臺海量數(shù)據(jù)的快速查詢與實現(xiàn)
      基于Hadoop的海量電信數(shù)據(jù)云計算平臺研究
      MongoDB在氣象傳感器數(shù)據(jù)處理中的應用
      軟件(2015年11期)2016-01-12 07:59:59
      一種基于HBase的交通旅行時間計算方法
      軟件導刊(2015年8期)2015-09-18 12:37:29
      基于MapReduce的海量數(shù)據(jù)動態(tài)裝箱算法研究
      軟件導刊(2015年7期)2015-08-06 13:17:16
      基于遺傳算法的多中心海量數(shù)據(jù)布局研究
      軟件導刊(2015年1期)2015-03-02 12:11:17
      昆山市| 邻水| 邵东县| 平武县| 大名县| 册亨县| 郎溪县| 榕江县| 宁海县| 丽水市| 滁州市| 溧水县| 黑龙江省| 昂仁县| 嘉兴市| 高碑店市| 平和县| 阿城市| 化州市| 康保县| 德钦县| 清水河县| 黎城县| 彰武县| 岳阳县| 徐水县| 梅州市| 松滋市| 酒泉市| 青阳县| 宁化县| 右玉县| 和田县| 汶川县| 霍城县| 锦州市| 奉贤区| 宜章县| 荃湾区| 右玉县| 邵阳县|