關(guān)于我們
書(shū)單推薦
新書(shū)推薦
|
Apache Drill學(xué)習(xí)手冊(cè) 主要內(nèi)容 ·使用Drill來(lái)清洗、準(zhǔn)備和匯總原始數(shù)據(jù)供后期分析使用。 ·對(duì)日志文件、Parquet文件、JSON和其他復(fù)雜的數(shù)據(jù)文件進(jìn)行查詢(xún)。 ·使用標(biāo)準(zhǔn)SQL對(duì)Hadoop、關(guān)系型數(shù)據(jù)庫(kù)、MongoDB和Kafka進(jìn)行查詢(xún)。 ·通過(guò)各種編程語(yǔ)言訪問(wèn)Drill。 ·使用Drill分析各種結(jié)構(gòu)復(fù)雜或存在二義性的數(shù)據(jù)。 ·通過(guò)自定義函數(shù)擴(kuò)展Drill的功能,完成復(fù)雜的分析任務(wù)。 ·為網(wǎng)絡(luò)安全、圖片元數(shù)據(jù)或機(jī)器學(xué)習(xí)數(shù)據(jù)提供分析能力。 前言 人類(lèi)具備了對(duì)海量數(shù)據(jù)進(jìn)行分析處理的能力,這也許是21 世紀(jì)最重要的技術(shù)進(jìn)步之一。但是直到現(xiàn)在,用于大數(shù)據(jù)集分析的工具還是過(guò)于復(fù)雜或者昂貴(也可能是既復(fù)雜又昂貴)。Apache Drill 具備改變這一現(xiàn)狀的潛力。 Apache Drill 為數(shù)據(jù)分析領(lǐng)域帶來(lái)了無(wú)限新的可能,它允許用戶使用一種標(biāo)準(zhǔn)的語(yǔ)言查詢(xún)各種不同的數(shù)據(jù)源。 讀者對(duì)象 我們把本書(shū)的目標(biāo)讀者設(shè)定為三種類(lèi)型:數(shù)據(jù)分析師或其他使用Drill 進(jìn)行數(shù)據(jù)查詢(xún)的人、在生產(chǎn)環(huán)境中部署和維護(hù)Drill 的系統(tǒng)管理員,以及編寫(xiě)代碼擴(kuò)展Drill 功能的開(kāi)發(fā)人員。 為何編寫(xiě)本書(shū) 三年前,Charles 在San Jose 召開(kāi)的Strata 會(huì)議上了解到了Drill,他覺(jué)得Drill 很可能為數(shù)據(jù)分析領(lǐng)域帶來(lái)一場(chǎng)革命。在與MapR 的首席科學(xué)家Ted Dunning 進(jìn)行了幾次交流后,Charles 意識(shí)到Drill 在安全領(lǐng)域的數(shù)據(jù)分析上大有可為。不過(guò)在那時(shí),很多Drill 的功能都還沒(méi)有文檔,有關(guān)Drill 開(kāi)發(fā)的信息也非常零散或根本找不到。Charles 想要擴(kuò)展Drill 的功能,但是不知道應(yīng)該從何入手。如果Charles 現(xiàn)在想重新學(xué)習(xí)Drill,那本書(shū)就包含了他想了解的一切注1。 Paul 在幾家商業(yè)智能(BI)公司接觸過(guò)不少數(shù)據(jù)查詢(xún)工具和數(shù)據(jù)庫(kù)工具。當(dāng)他看到Drill 時(shí),覺(jué)得它集其他很多工具之大成,而且是開(kāi)源和可擴(kuò)展的。Paul 加入了Drill的團(tuán)隊(duì),并著手宣傳Drill 的功能。 本書(shū)向你展示了如何使用Drill 高效地分析數(shù)據(jù)。本書(shū)不能替代Drill 的文檔,它定位于學(xué)習(xí)Drill 的向?qū)。它是使用Drill 多年的經(jīng)驗(yàn)積累,并且解釋了什么是Drill 以及它是如何解決用戶問(wèn)題的。 這本書(shū)也是為打算擴(kuò)展Drill 功能的人準(zhǔn)備的。當(dāng)你開(kāi)始試用Drill,你就可能想要為它開(kāi)發(fā)一些當(dāng)前缺失的功能。當(dāng)Charles 剛開(kāi)始使用Drill 時(shí),沒(méi)有足夠的文檔是一個(gè)很大的問(wèn)題,本書(shū)的目標(biāo)就是解決這個(gè)問(wèn)題。第8~12 章以深入淺出的語(yǔ)言介紹了如何去擴(kuò)展Drill 的功能。 本書(shū)組織結(jié)構(gòu) 本書(shū)的讀者對(duì)象有三種,各自具備不同的知識(shí)背景。以下是每個(gè)章節(jié)內(nèi)容的設(shè)計(jì)思路: ?? 第1~3 章是對(duì)Drill 的基本介紹,并介紹如何把Drill 運(yùn)行起來(lái)。 ?? 第4~7 章是為數(shù)據(jù)分析師、數(shù)據(jù)科學(xué)家和其它使用Drill 進(jìn)行數(shù)據(jù)查詢(xún)的人準(zhǔn)備的。除了第7 章以外,其他幾個(gè)章節(jié)都需要讀者理解SQL。 ?? 第8、10~12 章介紹了如何擴(kuò)展Drill 的功能。這些章節(jié)需要讀者具備Java 開(kāi)發(fā)的基本能力。 ?? 第9 章介紹了在生產(chǎn)環(huán)境中安裝和配置Drill 的一些瑣碎的細(xì)節(jié)。如果你是一名系統(tǒng)管理員,這一章就是為你準(zhǔn)備的。 ?? 第13 章介紹了很多Drill 的應(yīng)用案例。不管你是從事什么工作,閱讀這章的內(nèi)容都可以幫助你進(jìn)一步領(lǐng)略Drill 的強(qiáng)大功能。 在線資源 本書(shū)中使用的所有代碼和數(shù)據(jù)都可以從本書(shū)的GitHub 倉(cāng)庫(kù)(https://github.com/cgivre/drillbook)下載?梢栽贕itHub 的Issue 頁(yè)上報(bào)代碼中存在的問(wèn)題。 Drill 本身也有很詳盡的在線文檔(https://drill.apache.org)可供參考。 本書(shū)內(nèi)容約定 在本書(shū)中,按以下約定進(jìn)行排版: 斜體(italic) 表示新名詞、URL、電子郵件地址、文件名以及文件擴(kuò)展名。 等寬字體(constant width) 用于程序代碼,以及在正文中引用變量、函數(shù)名稱(chēng)、數(shù)據(jù)類(lèi)型、環(huán)境變量、語(yǔ)句、關(guān)鍵字等代碼中的元素。 等寬粗體(constant width bold) 需要用戶輸入的命令或其他文本。 等寬斜體(constant width italic) 需要替換成用戶自定義的值或根據(jù)上下文決定的值。 使用示例代碼 本書(shū)輔助學(xué)習(xí)材料(代碼示例和練習(xí)等)可以從本書(shū)的GitHub 倉(cāng)庫(kù)https://github.com/cgivre/drillbook 下載。 本書(shū)存在的目的就是幫助你完成工作?偟膩(lái)說(shuō),你可以在自己的程序或文檔中使用本書(shū)所提供的示例代碼。如果不是對(duì)這些代碼進(jìn)行大規(guī)模的分發(fā),就不需要聯(lián)系我們獲取授權(quán)。比如,編寫(xiě)一個(gè)程序,里面使用了本書(shū)中幾段示例代碼是不需要申請(qǐng)授權(quán)的。出售或分發(fā)包含O’Reilly 圖書(shū)完整示例代碼的CD-ROM 則需要申請(qǐng)授權(quán)。引用書(shū)中的部分內(nèi)容或示例代碼來(lái)回來(lái)問(wèn)題不需要授權(quán)。在你的產(chǎn)品文檔中包含本書(shū)中大量的示例代碼則需要授權(quán)。 我們不強(qiáng)制要求署名,但如果你這么做,我們深表感激。署名一般包括書(shū)名、作者、出版社和國(guó)際標(biāo)準(zhǔn)書(shū)號(hào)(ISBN)。例如:“Learning Apache Drill by Charles Givreand Paul Rogers (O’Reilly). Copyright 2019 Charles Givre and Paul Rogers, 978-1-492-03279-3”。 如果你覺(jué)得你對(duì)示例代碼的使用行為超出了合理的方式或超出了上述的允許不獲取授權(quán)的場(chǎng)景,可以與我們?nèi)〉寐?lián)系:permissions@oreilly.com。 O’Reilly 在線學(xué)習(xí)平臺(tái)(O’Reilly Online Learning) 近40 年來(lái),O’Reilly Media 致力于提供技術(shù)和商業(yè)培訓(xùn)、 知識(shí)和卓越見(jiàn)解,來(lái)幫助眾多公司取得成功。 我們擁有獨(dú)一無(wú)二的專(zhuān)家和革新者組成的龐大網(wǎng)絡(luò),他們通過(guò)圖書(shū)、文章、會(huì)議和我們的在線學(xué)習(xí)平臺(tái)分享他們的知識(shí)和經(jīng)驗(yàn)。O’Reilly 的在線學(xué)習(xí)平臺(tái)允許你按需訪問(wèn)現(xiàn)場(chǎng)培訓(xùn)課程、深入的學(xué)習(xí)路徑、交互式編程環(huán)境,以及O’Reilly 和200 多家其他出版商提供的大量文本和視頻資源。有關(guān)的更多信息,請(qǐng)?jiān)L問(wèn)http://oreilly.com。 訪問(wèn)http://oreilly.com/safari 了解更多信息。 聯(lián)系我們 任何有關(guān)本書(shū)的意見(jiàn)或疑問(wèn),請(qǐng)按照以下地址聯(lián)系出版社。 美國(guó): O’Reilly Media, Inc. 1005 Gravenstein Highway North Sebastopol, CA 95472 中國(guó): 北京市西城區(qū)西直門(mén)南大街2 號(hào)成銘大廈C 座807 室(100035) 奧萊利技術(shù)咨詢(xún)(北京)有限公司 我們?yōu)楸緯?shū)提供了一個(gè)網(wǎng)頁(yè),上面有勘誤表、示例和其他相關(guān)的信息,請(qǐng)?jiān)L問(wèn):http://bit.ly/learning-apache-drill。 有關(guān)本書(shū)的建議或者技術(shù)問(wèn)題,請(qǐng)發(fā)郵件到bookquestions@oreilly.com。 有關(guān)其他圖書(shū)、講座、會(huì)議、新聞的信息,請(qǐng)?jiān)L問(wèn)我們的網(wǎng)站:http://www.oreilly.com。 我們的Facebook:http://facebook.com/oreilly。 我們的Twitter:http://twitter.com/oreillymedia。 我們的YouTube:http://www.youtube.com/oreillymedia。 致謝 感謝Arina Ielchiieva、John Omernik、Aman Sinha 和 Parth Chandra 在百忙之中抽出時(shí)間幫助我們進(jìn)行技術(shù)審閱。感謝Jeff Bleiel 和整個(gè)O’Reilly 編輯團(tuán)隊(duì)與我們的緊密合作。最后還要感謝專(zhuān)注Drill 項(xiàng)目的貢獻(xiàn)者,沒(méi)有他們的幫助,就不會(huì)有本書(shū)的誕生。 來(lái)自Charles 的特別致謝 我想特別感謝我的妻子Alisheva 和孩子們:Mel、Dovie、Rozie 和Goldie,你們?cè)徫医?jīng)常缺席家庭活動(dòng)并因?yàn)樽珜?xiě)此書(shū)而工作到深夜,還支持我追求Drill 以及其他的極客愛(ài)好。沒(méi)有你們的支持,這本書(shū)就無(wú)法完成。 我還要感謝Drill 開(kāi)發(fā)委員會(huì)中與我一起工作的所有成員,他們教會(huì)了我很多有關(guān)Java 開(kāi)發(fā)、GitHub 和編寫(xiě)生產(chǎn)級(jí)代碼的知識(shí)。感謝合著者Paul,他提出了無(wú)數(shù)寶貴的建議,還告訴了我很多Drill 內(nèi)部實(shí)現(xiàn)原理。 最后,感謝Ted Dunning 和Ellen Friedman 邀請(qǐng)我參與這個(gè)項(xiàng)目,感謝Drill 項(xiàng)目管理委員(PMC)會(huì)認(rèn)可我對(duì)Drill 的貢獻(xiàn),讓我成為Drill 的Committer 以及PMC的一員。 來(lái)自Paul 的特別致謝 我想特別感謝我的妻子Anne 和孩子們:Delaine、Forrest 和Pauline,因?yàn)槲页3T谕砩匣蛑苣┫,埋頭撰寫(xiě)本書(shū)。 我還想感謝Drill 開(kāi)發(fā)團(tuán)隊(duì)在過(guò)去的兩年中對(duì)我的無(wú)私幫助,回答我在編寫(xiě)本書(shū)過(guò)程中遇到的各種問(wèn)題。這本書(shū)是他們把知識(shí)傳遞給其他人的一個(gè)途徑。感謝Drill 最初的開(kāi)發(fā)者們,他們創(chuàng)造了這個(gè)出色的產(chǎn)品,也感謝后來(lái)一直參與改進(jìn)Drill 的其他開(kāi)發(fā)者。我非常榮幸可以成為Drill PMC 的一員,并與如此出色的團(tuán)隊(duì)一起工作。感謝Charles 不斷推動(dòng)這本書(shū)的創(chuàng)作進(jìn)程直到完成,并在此過(guò)程中分享他從Drill 用戶的視角所觀察到的東西。 Charles Givre是Apache Drill的PMC成員,他是德意志銀行中央安全辦公室的首席數(shù)據(jù)科學(xué)家。他致力于培養(yǎng)數(shù)據(jù)科學(xué)家并教授數(shù)據(jù)分析技能,為此他還合伙創(chuàng)辦自己的培訓(xùn)公司GTK Cyber。他在全球各種會(huì)議和高校教授上述主題的內(nèi)容。 Paul Rogers是Apache Drill的PMC成員,他專(zhuān)注于Drill的執(zhí)行引擎開(kāi)發(fā),同時(shí)也是一位數(shù)據(jù)庫(kù)和BI方面的軟件架構(gòu)師。他曾經(jīng)在Cloudera、MapR、Oracle、Actuate和Informix工作。 目錄 前言 1 第1 章 Apache Drill 入門(mén) 7 什么是Apache Drill 8 Drill 用途廣泛 8 Drill 非常易用 10 有關(guān)Drill 的性能 11 大數(shù)據(jù)簡(jiǎn)史 11 大數(shù)據(jù)生態(tài)中的Drill 13 Drill 與類(lèi)似工具的比較 13 第2 章 安裝與運(yùn)行 15 準(zhǔn)備系統(tǒng)環(huán)境 16 Windows 環(huán)境下的特殊配置 16 在Windows 上安裝Drill 18 在Windows 上啟動(dòng)Drill 18 在macOS 或Linux 上安裝嵌入模式的Drill 19 在macOS 或Linux 上以嵌入模式運(yùn)行Drill 20 在macOS 或 Linux 上安裝分布式模式的Drill 21 為Drill 準(zhǔn)備集群環(huán)境 22 啟動(dòng)分布式模式的Drill 23 連接集群 23 小結(jié) 24 第3 章 Apache Drill 概述 25 Apache Hadoop 生態(tài) 25 Drill 是一個(gè)低延遲的查詢(xún)引擎 26 使用HDFS 進(jìn)行分布式數(shù)據(jù)處理 27 Drill 系統(tǒng)結(jié)構(gòu) 27 Drill 操作概覽 28 Drill 是一個(gè)查詢(xún)引擎,不是數(shù)據(jù)庫(kù) 29 Drill 操作概述 30 Drill 組件 30 SQL 會(huì)話狀態(tài) 30 編譯查詢(xún)語(yǔ)句 31 查詢(xún)語(yǔ)句執(zhí)行 36 低延遲特性38 小結(jié) 41 第4 章 查詢(xún)包含分隔符的數(shù)據(jù) 42 通過(guò)Drill 查詢(xún)數(shù)據(jù)的幾種方式 42 其他操作接口 43 Drill SQL 查詢(xún)格式 44 選擇數(shù)據(jù)源44 定義工作區(qū)46 指定默認(rèn)數(shù)據(jù)源 47 在查詢(xún)中訪問(wèn)列 49 帶表頭并包含分隔符的數(shù)據(jù) 51 Table 函數(shù) 53 查詢(xún)目錄中的數(shù)據(jù) 53 理解Drill 的數(shù)據(jù)類(lèi)型 55 使用字符串處理函數(shù)清洗和準(zhǔn)備數(shù)據(jù) 57 復(fù)雜數(shù)據(jù)轉(zhuǎn)換函數(shù) 59 操作Drill 中的日期和時(shí)間 60 把字符串轉(zhuǎn)換為日期 61 對(duì)日期進(jìn)行重新格式化 63 日期計(jì)算與操作 63 Drill 中的日期時(shí)間函數(shù) 64 創(chuàng)建視圖 65 使用Drill 進(jìn)行數(shù)據(jù)分析 66 通過(guò)聚合函數(shù)對(duì)數(shù)據(jù)進(jìn)行統(tǒng)計(jì) 68 查詢(xún)包含分隔符數(shù)據(jù)的常見(jiàn)問(wèn)題 75 列名中的空格 75 列名中的非法字符 76 字段名中的保留字 76 小結(jié) 77 第5 章 分析復(fù)合與嵌套數(shù)據(jù) 78 數(shù)組與Map 78 Drill 中的數(shù)組 79 在Drill 中訪問(wèn)Map(鍵– 值對(duì)) 81 查詢(xún)嵌套數(shù)據(jù) 83 使用Drill 分析日志文件 91 配置Drill 讀取httpd Web 服務(wù)器的日志 91 查詢(xún)Web 服務(wù)器日志 92 用Drill 對(duì)其他類(lèi)型的日志進(jìn)行分析 97 小結(jié) 100 第6 章 把Drill 連接到數(shù)據(jù)源 101 查詢(xún)多種數(shù)據(jù)源 102 配置新的存儲(chǔ)插件 102 用Drill 連接關(guān)系型數(shù)據(jù)庫(kù) 103 通過(guò)Drill 查詢(xún)Hadoop 數(shù)據(jù) 108 用Drill 連接并查詢(xún)HBase 108 用Drill 查詢(xún)Hive 數(shù)據(jù) 110 連接Kafka 查詢(xún)流數(shù)據(jù) 113 提高Kafka 查詢(xún)的性能 115 連接并查詢(xún)Kudu 115 用Drill 連接并查詢(xún)MongoDB 數(shù)據(jù) 116 把Drill 連接到云存儲(chǔ) 116 用Drill 從OpenTSDB 查詢(xún)時(shí)間序列數(shù)據(jù) 121 小結(jié) 122 第7 章 連接Drill 123 理解Drill 的接口 123 JDBC 與Drill 124 ODBC 與Drill 125 Drill 的REST 接口 127 使用Python 連接Drill 128 使用drillpy 對(duì)Drill 發(fā)起查詢(xún) 129 使用pydrill 連接Drill 130 其他通過(guò)Python 連接Drill 的方法 131 用R 語(yǔ)言連接Drill 133 使用sergeant 在R 中查詢(xún)Drill 133 通過(guò)Java 連接Drill 135 在PHP 中查詢(xún)Drill 136 使用連接器137 在PHP 中執(zhí)行Drill 查詢(xún) 137 在PHP 中操作Drill 138 使用Nodejs 查詢(xún)Drill 139 在BI 工具中使用Drill 作為數(shù)據(jù)源 139 使用Apache Zeppelin 和Drill 分析數(shù)據(jù) 139 使用Apache Superset 分析數(shù)據(jù) 145 小結(jié) 151 第8 章 用Drill 完成數(shù)據(jù)工程工作 152 讀時(shí)Schema 152 SQL 關(guān)系模型 153 數(shù)據(jù)生命周期:數(shù)據(jù)探索到生產(chǎn) 154 Schema 推導(dǎo) 155 數(shù)據(jù)源推導(dǎo) 155 存儲(chǔ)插件 156 存儲(chǔ)配置 156 工作區(qū) 157 查詢(xún)目錄 159 默認(rèn)Schema 159 文件類(lèi)型推導(dǎo) 160 格式插件與格式配置 160 格式推導(dǎo) 161 文件格式變種 162 Schema 推導(dǎo)概述163 分布式掃描 165 帶分隔符數(shù)據(jù)的Schema 推導(dǎo) 167 CSV 文件處理小結(jié) 173 JSON 文件的Schema 推導(dǎo) 175 二義性數(shù)值Schema 178 在文件間保證Schema 一致 184 JSON 對(duì)象 186 Drill 中的JSON 列表 189 JSON 小結(jié) 193 在Drill 中使用Parquet 文件格式 194 Parquet 中的Schema 進(jìn)化 195 分區(qū)數(shù)據(jù)目錄 195 定義表工作區(qū) 198 處理生產(chǎn)環(huán)境中的查詢(xún) 199 捕捉Schema 映射視圖 199 在腳本中運(yùn)行復(fù)雜查詢(xún) 200 小結(jié) 201 第9 章 在生產(chǎn)環(huán)境部署Drill 202 安裝Drill 202 前置需求 203 生產(chǎn)環(huán)境安裝 204 配置ZooKeeper 205 內(nèi)存配置 206 配置日志 208 測(cè)試安裝是否成功 209 分發(fā)Drill 可執(zhí)行文件和配置 210 啟動(dòng)Drill 集群 211 配置存儲(chǔ) 212 使用Apache Hadoop HDFS 213 使用Amazon S3 214 準(zhǔn)入控制 217 其他配置 219 用戶自定義函數(shù)與自定義插件 219 安全 220 日志級(jí)別 220 控制CPU 使用 222 監(jiān)控 223 監(jiān)控Drill 的進(jìn)程 224 監(jiān)控JMX 指標(biāo) 224 監(jiān)控查詢(xún) 225 其他部署選項(xiàng) 225 MapR 安裝程序 226 Drill-on-YRAN 226 Docker 226 小結(jié) 227 第10 章 搭建開(kāi)發(fā)環(huán)境 228 安裝Maven 228 創(chuàng)建Drill 的編譯環(huán)境 229 設(shè)置Git 并獲取源代碼 229 從代碼編譯Drill 230 安裝IDE 231 小結(jié) 231 第11 章 編寫(xiě)用戶自定義函數(shù) 232 用例:找出合法的信用卡號(hào)碼 232 Drill 中的用戶自定義函數(shù)是怎么工作的 234 Drill 的簡(jiǎn)單UDF 結(jié)構(gòu) 234 pomxml 文件 235 函數(shù)文件 236 簡(jiǎn)單函數(shù)API 240 完整的代碼241 構(gòu)建與安裝UDF 243 靜態(tài)安裝UDF 243 動(dòng)態(tài)安裝UDF 243 復(fù)合函數(shù):返回Map 或數(shù)組的UDF 244 例子:解析User Agent 元數(shù)據(jù) 245 ComplexWriter 對(duì)象 246 編寫(xiě)聚合UDF 248 聚合函數(shù)API 249 聚合UDF 示例:肯德?tīng)栔认嚓P(guān)系數(shù) 249 小結(jié) 252 第12 章 編寫(xiě)格式插件 253 正則表達(dá)式格式插件 253 基于Easy 框架創(chuàng)建格式插件 255 創(chuàng)建Maven 的pomxml 文件 256 創(chuàng)建插件包258 Drill 模塊配置 258 格式插件配置 259 注意事項(xiàng) 259 創(chuàng)建正則表達(dá)式格式插件配置類(lèi) 260 版權(quán)聲明頭與代碼格式 262 測(cè)試配置 262 解決配置問(wèn)題 263 排查問(wèn)題 264 創(chuàng)建格式插件類(lèi) 264 創(chuàng)建測(cè)試文件 267 配置RAT 267 高效調(diào)試 267 創(chuàng)建單元測(cè)試 268 Drill 是如何找到插件的 270 記錄讀取器 270 測(cè)試讀取器的殼 273 日志 274 出錯(cuò)處理 274 初始化 275 解析正則表達(dá)式 276 定義列名 276 投影 277 記錄列投影映射 278 空投影 278 全投影 279 部分投影 279 打開(kāi)文件 281 記錄批 282 Drill 的列存結(jié)構(gòu) 282 定義向量 283 讀取數(shù)據(jù) 284 把數(shù)據(jù)放入向量 285 釋放資源 286 測(cè)試讀取器 286 測(cè)試通配符場(chǎng)景 286 測(cè)試顯式投影 288 測(cè)試空投影288 擴(kuò)展 288 其他細(xì)節(jié) 290 文件塊 290 默認(rèn)格式配置 290 下一步 292 生產(chǎn)版本 292 給Drill 貢獻(xiàn)代碼:使用Pull Request 292 維護(hù)你的分支 293 創(chuàng)建插件項(xiàng)目 293 小結(jié) 294 第13 章 特殊用法 296 查找在特定區(qū)域拍攝的照片 296 分析Excel 文件 297 pomxml 文件 298 Excel 自定義記錄讀取器 299 使用Excel 格式插件 303 用Drill 分析網(wǎng)絡(luò)數(shù)據(jù)包(PCAP 文件) 304 查詢(xún)PCAP 數(shù)據(jù)文件的例子 304 使用Drill 分析Twitter 數(shù)據(jù) 308 在機(jī)器學(xué)習(xí)流程中使用Drill 309 通過(guò)Drill 進(jìn)行預(yù)測(cè) 310 建立與序列化模型 310 編寫(xiě)UDF 封裝類(lèi) 311 通過(guò)UDF 進(jìn)行預(yù)測(cè) 313 小結(jié) 313 附錄A Drill 函數(shù)列表 315 附錄B Drill 格式化字符串 331
你還可能感興趣
我要評(píng)論
|