精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

使用Apache Spark和MySQL打造強大的數據分析

大數據 Spark
借助真實案例和代碼樣本,本文作者展示了如何將Sparke和MySQL結合起來,創造數據分析上的強大工具。

借助真實案例和代碼樣本,本文作者展示了如何將Sparke和MySQL結合起來,創造數據分析上的強大工具。

Apache Spark是一個類似Apache Hadoop的集群計算框架,在Wikipedia上有大量描述:Apache Spark是一個開源集群計算框架,出自加州大學伯克利分校的AMPLab,后被捐贈給了Apache軟件基金會。

相對于Hadoop基于磁盤的兩段式MapReduce規范,Spark基于內存的多段式基元在特定應用上表現要優出100倍。Spark允許用戶程序將數據加載到集群內存中反復查詢,非常適合機器學習算法。

 

 

 

Apache Spark

與流行的看法相反,Spark不需要將所有數據存入內存,但會使用緩存來加速操作(就像MySQL那樣)。Spark也能獨立運行而無需Hadoop,并可以運行在單獨一臺服務器上(甚至筆記本或臺式機上),并充分利用所有CPU內核。開啟它并使用分布式模式真的很簡單。先打開master,在同一個節點上運行slave:

 

然后在任何額外的節點上運行Spark worker(確定向/etc/hosts 添加了hostname或者使用DNS):

 

為什么用Spark而不是MySQL?

在很多任務中MySQL(開箱即用的)表現并不太好。MySQL的限制之一在于:1次查詢=1個CPU內核。也就是說,即便你有48個速度飛快的內核,外加一個大型數據集可用,也無法充分利用所有的計算能力,相反Spark卻能充分使用CPU內核。

 

MySQL與Spark的另一差異在于:

l MySQL使用所謂的“寫時模式(schema on write)”——需要將數據轉化到MySQL中,如果未包含在MySQL里,就無法使用sql來查詢。

l Spark(還有Hadoop/Hive)使用“讀時模式(schema on read)”——比如在一個壓縮txt文件頂部使用表格結構(或者其他支持的輸入格式),將其看作表格;然后我們可以用SQL來查詢這個“表格”。

 

也就是說,MySQL負責存儲+處理,而Spark只負責處理,并可直接貫通數據與外部數據集(Hadoop、Amazon S3,本地文件、JDBC MySQL或其他數據集)的通道。Spark支持txt文件(壓縮的)、SequenceFile、其他Hadoop輸入格式和Parquet列式存儲。相對Hadoop來說,Spark在這方面更為靈活:例如Spark可以直接從MySQL中讀取數據。

 

向MySQL加載外部數據的典型管道(pipeline)是:

1、 解壓縮(尤其是壓縮成txt文件的外部數據);

2、用“LOAD DATA INFILE”命令將其加載到MySQL的存儲表格中;

3、只有這樣,我們才能篩選/進行分組,并將結果保存到另一張表格中。

 

這會導致額外的開銷;在很多情況下,我們不需要“原始”數據,但仍需將其載入MySQL中。

 

為什么將Spark與MySQL用在一起:

相反,我們的分析結果(比如聚合數據)應當存在MySQL中。將分析結果存在MySQL中并非必要,不過更為方便。假設你想要分析一個大數據集(即每年的銷售額對比),需要使用表格或圖表的形式展現出來。由于會進行聚合,結果集將會小很多,將其存在MySQL中與很多標準程序一同協作處理將會容易許多。

 

真實案例

一個有趣的免費數據集是Wikipedia的頁數(從2008年啟用后到現在,壓縮后大于1TB)。這個數據可以下載(壓縮空間確定txt文件),在AWS上也是可用的(有限數據集)。數據以小時聚合,包括以下字段:

l項目(比如en,fr等,通常是一種語言)

l頁頭(uri),采用urlencode編碼

l請求數

l返回內容的大小

(數據字段編譯到了文件名中,每小時1個文件)

我們的目標是:找出英文版wiki中每日請求數位居前10的頁面,不過還要支持對任意詞的搜索,方便闡釋分析原理。例如,將2008到2015年間關于“Myspace”和“Facebook”的文章請求數進行對比。使用MySQL的話,需要將其原封不動的載入MySQL。所有文件按內置的日期編碼分布。解壓的總大小大于10TB。下面是可選的步驟方案(典型的MySQL方式):

1、解壓文件并運行“LOAD DATA INFILE”命令,將其錄入臨時表格:

2、“插入到”最終的表格,進行聚合:

3、通過url解碼標題(可能用到UDF)。

開銷很大:解壓并將數據轉化為MySQL格式,絕大部分都會被丟棄,作為損耗。

根據我的統計,整理6年來的數據需耗時超過1個月,還不包括解壓時間,隨著表格逐漸變大、索引需要更新所帶來的加載時間折損。當然,有很多辦法可以加速這一過程,比如載入不同的MySQL實例、首先載入內存表格再集合成InnoDB等。

不過最簡單的辦法是使用Apache Spark和Python腳本(pyspark)。Pyspark可以讀出原始的壓縮txt文件,用SQL進行查詢,使用篩選、類似urldecode函數等,按日期分組,然后將結果集保存到MySQL中。

下面是執行操作的Python腳本:

在腳本中用到了Spark來讀取原始壓縮文件(每次一天)。我們可以使用目錄作為“輸入”或者文件列表。然后用彈性分布式數據集(RDD)轉化格式;Python包含lambda函數映射和篩選,允許我們將“輸入文件”分離并進行篩選。

下一步是應用模式(declare fields);我們還能使用其他函數,比如用urllib.unquote來解碼標題(urldecode)。最終,我們可以注冊臨時表格,然后使用熟悉的SQL來完成分組。

該腳本可以充分利用CPU內核。此外,即便不使用Hadoop,在分布式環境中運行也非常簡易:只要將文件復制到SparkNFS/外部存儲。

該腳本花了1個小時,使用了三個box,來處理一個月的數據,并將聚合數據加載到MySQL上(單一實例)。我們可以估出:加載全部6年的(聚合)數據到MySQL上需要大約3天左右。

你可能會問,為什么現在要快得多(而且實現了同樣的實例)。答案是:管道不同了,而且更為有效。在我們起初的MySQL管道中,載入的是原始數據,需要大約數月時間完成。而在本案例中,我們在讀取時篩選、分組,然后只將需要的內容寫入MySQL。

這里還有一個問題:我們真的需要整個“管道”嗎?是否可以簡單地在“原始”數據之上運行分析查詢?答案是:確實有可能,但是也許會需要1000個節點的Spark集群才能奏效,因為需要掃描的數據量高達5TB(參見下文中的“補充”)。

 #p#

MySQL Inserts的多線程表現

通過使用group_res.write.jdbc(url=mysql_url, table=”wikistats.wikistats_by_day_spark”, mode=”append”) ,Spark會啟動多線程插入。

 

監控你的工作

Spark提供了web接口,方便對工作進行監控管理。樣例如下:運行wikistats.py application:

 

 

結果:使用Parquet分列格式與MySQL InnoDB表格

 

Spark支持Apache Parquet分列格式,因此我們可以將RDD存儲為parquet文件(存入HDFS時可以保存到目錄中):

 

我們將管道結果(聚合數據)存入Spark。這次使用了按天分區(“mydate=20080101”),Spark可以在這種格式中自動發現分區。得到結果后要進行查詢。假設我們想要找到2018年1月查詢最頻繁的10大wiki頁面。可以用MySQL進行查詢(需要去掉主頁和搜索頁):

 

請注意,我們已經使用了聚合(數據匯總)表格,而不是“原始”數據。我們可以看到,查詢花了1小時22分鐘。由于將同樣的結果存入了Parquet(見腳本)中,現在可以在Spark-SQL中使用它了:

 

這將用到spark-sql的本地版本,而且只用到1個主機。


耗時大約20分鐘,比之前更快。

 

結論

Apache Spark是分析和聚合數據的好辦法,而且非常簡便。我喜歡Spark與其他大數據還有分析框架的原因在于:

l開源與積極開發

l不依賴工具,例如輸入數據與輸出數據不一定非要借助Hadoop

l獨立模式,啟動迅速,易于部署

l大規模并行,易于添加節點

l支持多種輸入與輸出格式;比如可以讀取/寫入MySQL(Java數據庫連接驅動)與Parquet分列格式

但是,也有很多缺點:

l技術太新,會有一些bug和非法行為。很多錯誤難以解釋。

l需要Java;Spark 1.5僅支持Java 7及以上版本。這也意味著需要額外內存——合情合理。

l你需要通過“spark-submit”來運行任務。

我認為作為工具,Apache Spark十分不錯,補足了MySQL在數據分析與商業智能方面的短板。

 

責任編輯:李英杰 來源: 小象
相關推薦

2021-06-06 19:03:25

SQL大數據Spark

2017-11-29 12:45:37

Apache Spar大數據數據分析

2019-06-19 16:01:14

Spark數據分析SparkSQL

2012-03-21 09:31:51

ibmdw

2016-11-29 09:27:22

Apache SparDashboard構建

2015-09-23 09:24:56

spark數據分析

2021-01-25 20:20:35

數據分析SparkHadoop

2014-07-16 09:32:34

Pinterest

2016-12-20 09:47:38

Apache SparLambda架構

2013-06-27 15:21:38

App

2016-06-20 09:06:12

Apache Spar開源工具

2017-04-20 20:30:15

Linuxtmux終端

2021-09-10 14:05:14

預測分析大數據分析大數據

2024-03-04 11:10:01

2021-09-06 09:00:00

大數據大數據分析技術

2012-08-28 10:52:58

IBMdW

2012-08-24 08:51:27

IBMdW

2023-11-24 14:02:00

Python數據分析

2024-02-07 09:36:40

MySQL數據

2014-12-17 10:35:17

大數據分析 HadooApacheSqoop
點贊
收藏

51CTO技術棧公眾號

国产av天堂无码一区二区三区| 97香蕉久久夜色精品国产| 孩娇小videos精品| 午夜小视频福利在线观看| www.欧美日韩| 国产精品高潮呻吟久久av黑人| 自拍偷拍第9页| 精品资源在线| 欧美巨大另类极品videosbest| 天堂а√在线中文在线| 你懂的在线视频| 国产一区二区伦理| 国产精品91久久| 免费人成视频在线| 成人婷婷网色偷偷亚洲男人的天堂| 欧美精品久久99久久在免费线 | 91免费看片网站| 日韩人妻精品中文字幕| 欧美日韩成人| 俺去亚洲欧洲欧美日韩| 泷泽萝拉在线播放| 99久久婷婷国产综合精品青牛牛 | 精品国产日韩欧美| 日韩精品一区二区在线观看| 91蝌蚪视频在线观看| heyzo高清国产精品| 中文字幕亚洲视频| 日韩伦理一区二区三区av在线| 丰满少妇在线观看bd| 蜜桃一区二区三区在线| 热99精品里视频精品| 国产精品theporn动漫| 在线成人超碰| www.欧美精品| 久久久久无码精品国产sm果冻| 农村少妇一区二区三区四区五区 | 官网99热精品| 99这里有精品视频| 久久精品国产免费看久久精品| 日韩av免费网站| 91精品国产乱码久久久张津瑜| 欧美日韩国产欧| 美日韩在线视频| 丰满少妇被猛烈进入一区二区| 久久在线视频| 波霸ol色综合久久| 国产精品免费在线视频| 欧美日韩亚洲在线观看| 国产亚洲视频在线| 国精产品一区二区三区| 国产亚洲一区二区三区啪| 亚洲精品视频网上网址在线观看| 国产毛片毛片毛片毛片毛片毛片| 成人爽a毛片| 亚洲第一精品自拍| 欧美精品欧美极品欧美激情| 美女av一区| 日韩av在线免费播放| 国产高清自拍视频| 久久最新网址| 中文字幕久久久| av资源在线免费观看| 91精品推荐| 久久久久久久久网站| 国产精品111| 最新国产拍偷乱拍精品 | 日本午夜免费一区二区| 欧美放荡的少妇| 在线免费黄色小视频| 一区中文字幕电影| 亚洲精品国产精品久久清纯直播| 手机在线成人av| 九九热爱视频精品视频| 亚洲精品视频中文字幕| 亚洲高清乱码| 91sp网站在线观看入口| 亚洲欧洲另类国产综合| h无码动漫在线观看| 日韩电影免费看| 欧美午夜电影网| 久久婷婷中文字幕| 999久久久久久久久6666| 亚洲精品国偷自产在线99热| 成人午夜福利一区二区| 欧美大黑bbbbbbbbb在线| 精品自在线视频| www.国产com| 美女诱惑一区二区| 国产91亚洲精品一区二区三区| 亚洲 另类 春色 国产| 欧美韩国一区二区| 成人国产在线看| 小黄鸭精品aⅴ导航网站入口| 欧美日韩一区在线观看| 任你躁av一区二区三区| 欧洲亚洲视频| 久热99视频在线观看| 中文字幕在线字幕中文| 精品在线视频一区| 蜜桃麻豆91| 黄色av电影在线观看| 欧美性xxxx在线播放| 四季av一区二区三区| 欧美一区 二区| 久久五月情影视| 日韩中文字幕在线观看视频| 国产精品一区二区三区网站| 欧美日韩综合久久| 日本在线视频中文有码| 欧美手机在线视频| 成人无码www在线看免费| 综合天堂久久久久久久| 国产精品久久久久av| 人妻一区二区三区免费| 亚洲天堂福利av| 五月婷婷狠狠操| 豆花视频一区二区| 精品国产网站地址| 天天操天天干天天摸| 成人av网在线| 日本中文字幕一级片| 日韩av黄色| 国产亚洲精品久久久久久牛牛| 日韩欧美性视频| 国产精品综合在线视频| 亚洲欧美日韩精品久久久| 第84页国产精品| 欧美精品一区男女天堂| 亚洲天堂黄色片| 久久9热精品视频| 亚洲a∨一区二区三区| 欧美大片高清| 日韩精品欧美国产精品忘忧草| 欧美黑人猛猛猛| 国模少妇一区二区三区 | 成人久久久久| 日本一区二区三区四区视频| 天天色棕合合合合合合合| 亚洲自拍另类综合| 男人的天堂免费| 欧美人与禽猛交乱配视频| 91免费观看网站| bt在线麻豆视频| 欧美一区二区视频在线观看| 大地资源高清在线视频观看| 久久国产麻豆精品| 亚洲欧洲一区二区在线观看| 欧美日韩尤物久久| 在线播放国产一区中文字幕剧情欧美 | 在线日韩av片| 欧美 日韩 国产 成人 在线观看 | 日韩av手机在线播放| 亚洲国产精品第一区二区| 国产精品三区四区| ririsao久久精品一区| 亚洲成年网站在线观看| 国产精品7777777| 成人av在线资源| 男人添女人下面高潮视频| 香蕉久久精品| 国产精品video| 日本中文字幕伦在线观看| 欧美精品日韩精品| 全程偷拍露脸中年夫妇| 成人午夜碰碰视频| 久久久久狠狠高潮亚洲精品| 欧美裸体在线版观看完整版| 91欧美精品成人综合在线观看| 在线看一级片| 亚洲精品国产精品国产自| 无码人妻久久一区二区三区 | 国产青草视频在线观看| 日韩黄色网络| 国产欧美婷婷中文| 手机电影在线观看| 精品视频偷偷看在线观看| 中文字幕一区二区三区四区免费看| 中文字幕在线不卡一区| 91九色蝌蚪porny| 视频在线观看91| 经典三级在线视频| 青草久久视频| 国产在线精品一区免费香蕉| 丰乳肥臀在线| 一本色道久久88综合亚洲精品ⅰ | 日韩精品久久久久久福利| 中文字幕+乱码+中文乱码91| 亚洲黄色av一区| 久久亚洲AV无码专区成人国产| 激情深爱一区二区| www.浪潮av.com| 久久国产中文字幕| 国产视频一区二区不卡| 亚洲综合伊人| 欧美性视频在线| 最新av在线播放| 国产亚洲美女精品久久久| 国产成人精品白浆久久69| 欧美日韩在线视频首页| 国产中文av在线| 久久久久久亚洲综合影院红桃 | 一区二区三区亚洲变态调教大结局| 国产97在线|亚洲| 日本天码aⅴ片在线电影网站| 亚洲视频国产视频| 黄色三级网站在线观看| 777久久久精品| 黄色av网站免费观看| 亚洲成人你懂的| 亚洲成人生活片| 国产精品色婷婷| 实拍女处破www免费看| 国产99久久久久| 五月天视频在线观看| 麻豆九一精品爱看视频在线观看免费| 国产在线无码精品| 欧美高清在线| 日本一区二区视频| 日韩欧美黄色| 国产伦精品一区二区三区照片| 91视频亚洲| 国产精品女人网站| 日韩三级影视| 51色欧美片视频在线观看| 三级资源在线| 欧美精品在线免费观看| 日本在线视频网| 中文字幕视频在线免费欧美日韩综合在线看| 神马一区二区三区| 亚洲成人中文字幕| 人妻一区二区三区四区| 精品久久国产老人久久综合| 国产模特av私拍大尺度| 欧美乱熟臀69xxxxxx| 亚洲天堂网视频| 欧美色综合网站| 中文字幕在线观看第二页| 一本大道av伊人久久综合| 97久久久久久久| 精品国产户外野外| 欧美特黄aaaaaa| 欧美日韩视频在线| 五月天婷婷激情| 色综合久久久久久久久久久| 一级片视频在线观看| 色天使色偷偷av一区二区| 亚洲欧美综合另类| 日本韩国欧美一区| 日韩不卡高清视频| 欧美人与z0zoxxxx视频| 国产精品女同一区二区| 7878成人国产在线观看| www.av黄色| 欧美精品一区二区精品网| 日韩一卡二卡在线| 亚洲欧美国产va在线影院| 国产一级免费在线观看| 中文字幕av一区二区| 免费黄色网址在线观看| 欧美成人自拍视频| 丁香花在线观看完整版电影| 97国产精品视频人人做人人爱| 狼人综合视频| 国产精品三级在线| 国产一区二区三区黄网站| 岛国一区二区三区高清视频| 卡通动漫国产精品| 日韩资源av在线| 99精品在线| 男女猛烈激情xx00免费视频| 米奇777在线欧美播放| 天天干天天操天天做| 国产成人丝袜美腿| 91成年人网站| 亚洲天堂av一区| 青青草成人av| 欧美日韩一区 二区 三区 久久精品| 国产特级黄色片| 亚洲国产美女精品久久久久∴| 国产在线视频你懂得| 久久久极品av| 婷婷电影在线观看| 成人中文字幕在线观看| 美女一区二区在线观看| 日韩片电影在线免费观看| 欧美黄色一级视频| 欧美v在线观看| 国内精品伊人久久久久av影院| 欧美激情一区二区三区p站| 欧美经典一区二区| 久久精品国产亚洲av高清色欲| 91国产丝袜在线播放| 不卡视频在线播放| 在线播放国产精品| 色黄视频在线观看| 亚洲在线www| 精品久久影院| 一区二区传媒有限公司| 精品一区二区三区的国产在线播放| 精品国产一区在线| 亚洲欧美日韩国产一区二区三区| 天天干天天干天天操| 欧美成人综合网站| 91av资源在线| 国产成人av网| 国产精品极品在线观看| 黄色网址在线免费看| 久久久久国产精品一区二区| 日韩黄色一区二区| 国产精品麻豆网站| 免费污污视频在线观看| 亚洲国内精品视频| 日本在线观看大片免费视频| 国产综合色香蕉精品| 精品99久久| 成人三级视频在线播放| 成人国产在线观看| 久久久国产成人| 欧美一区二区三区小说| 天堂中文8资源在线8| 国产精品第1页| 亚洲精品亚洲人成在线观看| 丁香六月激情婷婷| 国产成人精品亚洲777人妖| 69夜色精品国产69乱| 欧美性大战久久| 成年人视频免费在线观看| 欧洲亚洲妇女av| 午夜先锋成人动漫在线| 亚洲欧洲日产国码无码久久99| 成人h精品动漫一区二区三区| 国产亚洲精品久久久久久无几年桃 | 91精品在线国产| 久久精品国产www456c0m| 日本999视频| 久久久不卡网国产精品二区| 国产又黄又猛又粗又爽| 精品一区二区三区三区| 精精国产xxxx视频在线野外 | 香蕉国产在线视频| 国语对白做受69| 国产毛片精品| 久久亚洲中文字幕无码| 91色综合久久久久婷婷| 日韩精品在线免费视频| 亚洲欧美国产视频| 亚洲成人人体| 翔田千里亚洲一二三区| 蜜桃av噜噜一区| 91麻豆精品成人一区二区| 欧美一级二级三级蜜桃| 欧美黑人xx片| 国产一区二区免费在线观看| 国产日韩精品视频一区二区三区| 日韩片在线观看| 色一情一伦一子一伦一区| 国产在线中文字幕| 成人网页在线免费观看| 欧美va天堂| 黄色网址在线视频| 在线一区二区观看| 日韩在线免费电影| 91精品国产一区二区三区动漫| 国产综合视频| 国产国语性生话播放| 日本高清无吗v一区| 暖暖日本在线观看| 产国精品偷在线| 性色一区二区| 亚洲熟女毛茸茸| 亚洲精品97久久| 国产成人免费精品| 激情成人开心网| 国产欧美综合色| 亚洲成a人片在线| 日本精品一区二区三区在线播放视频 | 成人免费视频免费观看| 无码人妻av免费一区二区三区| www.欧美三级电影.com| 精品日产乱码久久久久久仙踪林| 北条麻妃在线一区| 自拍偷拍国产精品| 午夜影院免费视频| 成人www视频在线观看| 亚洲国产网站| 山东少妇露脸刺激对白在线| 日韩一级片网站| av综合电影网站| 日本中文字幕一级片| 国产日本欧洲亚洲| 亚洲黄色在线观看视频| 国产精品成人aaaaa网站| 亚洲午夜电影| 国产精品69久久久久孕妇欧美| 亚洲国产欧美在线成人app| 九七电影院97理论片久久tvb| 中国丰满熟妇xxxx性| 国产精品视频你懂的| 无码国产伦一区二区三区视频 | 国产ts一区二区|