婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 詳解如何使用Spark和Scala分析Apache訪問日志

詳解如何使用Spark和Scala分析Apache訪問日志

熱門標簽:高德地圖標注無營業(yè)執(zhí)照 長沙開福怎么申請400電話 東莞人工智能電銷機器人供應(yīng)商 廣州電銷機器人系統(tǒng)圖 賀州市地圖標注app 智能電話機器人線路 金融行業(yè)外呼線路 百度地圖標注要不要錢 江蘇電銷外呼防封系統(tǒng)是什么

安裝

首先需要安裝好Java和Scala,然后下載Spark安裝,確保PATH 和JAVA_HOME 已經(jīng)設(shè)置,然后需要使用Scala的SBT 構(gòu)建Spark如下:

$ sbt/sbt assembly

構(gòu)建時間比較長。構(gòu)建完成后,通過運行下面命令確證安裝成功:

$ ./bin/spark-shell
scala> val textFile = sc.textFile("README.md") // 創(chuàng)建一個指向 README.md 引用
scala> textFile.count // 對這個文件內(nèi)容行數(shù)進行計數(shù)
scala> textFile.first // 打印出第一行

Apache訪問日志分析器

首先我們需要使用Scala編寫一個對Apache訪問日志的分析器,所幸已經(jīng)有人編寫完成,下載Apache logfile parser code。使用SBT進行編譯打包:

sbt compile
sbt test
sbt package

打包名稱假設(shè)為AlsApacheLogParser.jar。
然后在Linux命令行啟動Spark:

// this works
$ MASTER=local[4] SPARK_CLASSPATH=AlsApacheLogParser.jar ./bin/spark-shell

對于Spark 0.9,有些方式并不起效:

// does not work
$ MASTER=local[4] ADD_JARS=AlsApacheLogParser.jar ./bin/spark-shell
// does not work
spark> :cp AlsApacheLogParser.jar

上傳成功后,在Spark REPL創(chuàng)建AccessLogParser 實例:

import com.alvinalexander.accesslogparser._
val p = new AccessLogParser

現(xiàn)在就可以像之前讀取readme.cmd一樣讀取apache訪問日志accesslog.small:

scala> val log = sc.textFile("accesslog.small")
14/03/09 11:25:23 INFO MemoryStore: ensureFreeSpace(32856) called with curMem=0, maxMem=309225062
14/03/09 11:25:23 INFO MemoryStore: Block broadcast_0 stored as values to memory (estimated size 32.1 KB, free 294.9 MB)
log: org.apache.spark.rdd.RDD[String] = MappedRDD[1] at textFile at <console>:15
scala> log.count
(a lot of output here)
res0: Long = 100000

分析Apache日志

我們可以分析Apache日志中404有多少個,創(chuàng)建方法如下:

def getStatusCode(line: Option[AccessLogRecord]) = {
 line match {
  case Some(l) => l.httpStatusCode
  case None => "0"
 }
}

其中Option[AccessLogRecord]是分析器的返回值。

然后在Spark命令行使用如下:

log.filter(line => getStatusCode(p.parseRecord(line)) == "404").count

這個統(tǒng)計將返回httpStatusCode是404的行數(shù)。

深入挖掘

下面如果我們想知道哪些URL是有問題的,比如URL中有一個空格等導致404錯誤,顯然需要下面步驟:

  1. 過濾出所有 404 記錄
  2. 從每個404記錄得到request字段(分析器請求的URL字符串是否有空格等)
  3. 不要返回重復的記錄

創(chuàng)建下面方法:

// get the `request` field from an access log record
def getRequest(rawAccessLogString: String): Option[String] = {
 val accessLogRecordOption = p.parseRecord(rawAccessLogString)
 accessLogRecordOption match {
  case Some(rec) => Some(rec.request)
  case None => None
 }
}

將這些代碼貼入Spark REPL,再運行如下代碼:

log.filter(line => getStatusCode(p.parseRecord(line)) == "404").map(getRequest(_)).count
val recs = log.filter(line => getStatusCode(p.parseRecord(line)) == "404").map(getRequest(_))
val distinctRecs = log.filter(line => getStatusCode(p.parseRecord(line)) == "404").map(getRequest(_)).distinct
distinctRecs.foreach(println)

總結(jié)

對于訪問日志簡單分析當然是要grep比較好,但是更復雜的查詢就需要Spark了。很難判斷 Spark在單個系統(tǒng)上的性能。這是因為Spark是針對分布式系統(tǒng)大文件。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

標簽:玉樹 洛陽 廊坊 北京 永州 松原 張家界 滄州

巨人網(wǎng)絡(luò)通訊聲明:本文標題《詳解如何使用Spark和Scala分析Apache訪問日志》,本文關(guān)鍵詞  詳解,如何,使用,Spark,和,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《詳解如何使用Spark和Scala分析Apache訪問日志》相關(guān)的同類信息!
  • 本頁收集關(guān)于詳解如何使用Spark和Scala分析Apache訪問日志的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    精品国产sm最大网站| 伊人夜夜躁av伊人久久| 日韩国产一区二| xnxx国产精品| 久久久精品日韩欧美| 在线免费观看不卡av| 国产在线精品不卡| 亚洲午夜视频在线| 亚洲一本大道在线| 亚洲另类在线视频| 18欧美乱大交hd1984| 国产女人18毛片水真多成人如厕| 制服丝袜一区二区三区| 欧美一级精品在线| 51久久夜色精品国产麻豆| 成人视屏免费看| 9人人澡人人爽人人精品| 精品一区二区三区蜜桃| 国产一级精品在线| 成人免费视频视频| 欧美日韩国产精选| 青青草国产成人av片免费 | 欧美一区午夜视频在线观看| 欧美大黄免费观看| 亚洲天堂免费看| 久久精品国产在热久久| 成人av午夜影院| 日韩视频一区在线观看| 最新中文字幕一区二区三区| 久久精品99久久久| 色先锋aa成人| 久久久综合视频| 日韩国产在线一| 色综合久久综合中文综合网| 久久综合中文字幕| 美女国产一区二区| 在线综合亚洲欧美在线视频| 自拍偷拍国产亚洲| 岛国av在线一区| 久久综合中文字幕| 老色鬼精品视频在线观看播放| 欧美色网站导航| 亚洲视频一区在线| 91免费观看国产| 一区二区三区国产精品| 欧美性受xxxx| 午夜视频一区在线观看| 欧美老人xxxx18| 免费人成黄页网站在线一区二区| 欧美精品久久天天躁| 亚洲欧美国产77777| 91网上在线视频| 亚洲综合999| 欧美一区二区三区免费在线看| 亚洲三级在线看| 欧美精选午夜久久久乱码6080| 一区二区三区四区乱视频| 色美美综合视频| 亚洲二区在线观看| 日韩欧美色综合网站| 成人午夜免费电影| 一区二区三区丝袜| 日韩三级伦理片妻子的秘密按摩| 国内精品自线一区二区三区视频| 精品久久久久久久久久久久久久久久久| 国产做a爰片久久毛片| 国产精品少妇自拍| 欧美日韩高清不卡| 国产精品一品二品| 青草av.久久免费一区| 日本一区二区成人在线| 视频在线观看国产精品| 国产成人午夜精品5599| 亚洲福利一二三区| 国产精品人人做人人爽人人添| 欧美人妖巨大在线| 99精品热视频| 色综合一区二区三区| www.色精品| 91麻豆国产福利精品| voyeur盗摄精品| 91女人视频在线观看| 成人av综合在线| 99久久99精品久久久久久 | 国产精品福利av| 国产三级久久久| 国产色爱av资源综合区| 久久精品网站免费观看| 51精品视频一区二区三区| 欧美日韩国产精选| 欧美一区二区在线观看| 欧美肥妇free| 欧美精品第1页| 在线观看日韩国产| 精品视频在线视频| 日韩欧美亚洲国产另类| 国产日韩欧美制服另类| 欧美zozo另类异族| 国产精品久久久久四虎| 中文字幕第一页久久| 中文字幕成人在线观看| 国产精品免费免费| 亚洲va韩国va欧美va| 老司机免费视频一区二区三区| 亚洲午夜久久久| 色呦呦网站一区| 久久视频一区二区| 国产综合久久久久久久久久久久| 亚洲综合色网站| 国产91富婆露脸刺激对白| 亚洲私人黄色宅男| 欧美日韩一区二区三区高清| 日韩精品欧美精品| 26uuu精品一区二区三区四区在线| 六月婷婷色综合| 伊人夜夜躁av伊人久久| 在线国产电影不卡| 麻豆精品视频在线观看| 国产精品女主播在线观看| 欧美图片一区二区三区| 日韩和欧美一区二区| 久久精品视频网| 欧美精品久久天天躁| 麻豆视频观看网址久久| 国产成人在线视频免费播放| 国产精品麻豆视频| 91国产免费观看| 久久99精品久久久久久动态图 | www.欧美精品一二区| 亚洲18女电影在线观看| 中文子幕无线码一区tr| 精品欧美久久久| 宅男噜噜噜66一区二区66| 成人av高清在线| 开心九九激情九九欧美日韩精美视频电影 | 国产精品久久久久久久第一福利| 日韩欧美电影一区| 337p亚洲精品色噜噜| 欧美区在线观看| 欧美成人aa大片| 久久久久久电影| 亚洲四区在线观看| 亚洲综合精品自拍| 日本不卡高清视频| 国产一区二区三区久久久| 国产精一品亚洲二区在线视频| 激情六月婷婷综合| 91视频观看视频| 欧美性生活一区| 亚洲精品一区二区精华| 久久伊人蜜桃av一区二区| 欧美国产一区二区在线观看| 一区av在线播放| 国产一区久久久| 欧美色爱综合网| 国产目拍亚洲精品99久久精品| 亚洲综合网站在线观看| 国产成人午夜99999| 欧美日韩精品一二三区| 国产亚洲成aⅴ人片在线观看| 国产精品久线观看视频| 美女视频黄频大全不卡视频在线播放 | 国产精品久久久久国产精品日日| 亚洲成人激情av| 97久久久精品综合88久久| 91麻豆精品国产无毒不卡在线观看 | 亚洲激情成人在线| www.亚洲色图| 91精品国产综合久久香蕉麻豆| a在线播放不卡| 日韩精品一区二区三区视频| 亚洲一线二线三线久久久| 国产精品小仙女| 久久精品一级爱片| 免费人成在线不卡| 日韩一区二区免费在线观看| 亚洲第一av色| 欧美日韩一区二区三区四区| 一区二区久久久久| 欧美在线播放高清精品| 一区二区免费看| 欧美日韩久久久| 亚洲午夜日本在线观看| 欧美亚洲高清一区| 亚洲国产成人高清精品| 欧美在线观看18| 精品一区二区日韩| 精品国产一区二区国模嫣然| 久久精品国内一区二区三区| 欧美国产精品久久| 91在线视频观看| 免费看黄色91| 1区2区3区国产精品| 欧美精品精品一区| 国产麻豆日韩欧美久久| 亚洲天堂成人在线观看| 91精品中文字幕一区二区三区| 久久99精品视频| 亚洲午夜久久久久久久久久久 | 蜜臀国产一区二区三区在线播放|