《apache kylin權威指南》是2019年08月 機械工業出版社出版的書籍。第1章和第2章是基本概念和快速入門,為初學者打下堅實基礎。第3章和第4章介紹基本的 Cube 最佳化手段和增量構建。第5章展示豐富的查詢接口和其上的可視化能力。
基本介紹
- 書名:apache kylin權威指南
- 作者:Apache Kylin核心團隊
- 出版社:機械工業出版社
- ISBN:9787111557012
內容簡介,圖書目錄,作者簡介,
內容簡介
Apache Kylin 是由中國人主導的Apache項目,是Hadoop大數據平台上的一個開源 OLAP 引擎,將大數據的朽頁立查詢速度和並發性能提升百倍以上,為超大規模數據集上的互動式大數據分析打開了大門。本書由 Apache Kylin 核心開發團隊編寫,系統地介紹了 Apache Kylin 安裝、入門、調優、可視化、運維管理、流式計算、Spark 構建、擴展開發、跟主流雲平台的集成,以及經典案例等各個方面,是系統學習Apache Kylin的優秀材料。
第1章和第2章是基本概念和快速入門,為初學者打下堅實基礎。捉灶地第3章和第4章介紹基本的 Cube 最佳化手段和增量構建。第5章展示豐富的查詢接口和其上的可視化能力。第6章介紹了基於 Cube Planner 的自動最佳化的核心算法和原理。第7章是進階的流式準實時構建,以將構建的批次間隔縮短到分鐘級。第8章介紹如何使用 Spark 進行 Cube 構建,以及如何調優性能。第9章通過介紹若干 Kylin 的重點案例,以幫助讀者理解 Kylin 的使用場景和重要價值。第10章介紹可擴展架構和二次開發接口,適合高級開發者。第11章則介紹企業級功能、用戶的認證和授權相關知識。第12章著重於問題的排查診斷、日常的運維阿舟乎管理,以及如何通過社區獲得幫助等內容。第13章分別以AWS,微軟 Azure 和阿里云為例,介紹如何在主流雲平台上部署和使用 Kylin。第14章說明如何參與和貢獻到開源項目。*後的第15章,介紹了 Apache Kylin 的未來發展方向。
圖書目錄
推薦序
前 言
第辨想1章 Apache Kylin概述 1
1.1 背景和歷史 1
1.2 Apache Kylin的使命 3
1.2.1 為什麼要使用記紋凝影Apache Kylin 3
1.2.2 Apache Kylin怎樣解決關鍵問題 4
1.3 Apache Kylin的工作原理 5
1.3.1 維度和度量簡介 5
1.3.2 Cube和Cuboid 6
1.3.3 工作原理 7
1.4 Apache Kylin的技術架構 7
1.5 淋驗灶Apache Kylin的主要特點 9
1.5.1 標準SQL接口 9
1.5.2 支持超大數據集 10
1.5.3 亞秒級回響 10
1.5.4 可伸縮性和高吞吐率 10
1.5.5 BI及可視化工具集成 11
1.6 與其他開源產品的比較 11
1.7 小結 13
第2章 快速入門 14
2.1 核心概念14
2.1.1 數據倉庫、OLAP與BI 14
2.1.2 維度建模 15
2.1.3 事實表和維度表 16
2.1.4 維度和度量 16
2.1.5 Cube、Cuboid和Cube Segment 16
2.2 在Hive中準備數據 17
2.2.1 多維數據模型 17
2.2.2 維度表的設計 17
2.2.3 Hive表分區 18
2.2.4 了解維度的基數 18
2.2.5 樣例數據 18
2.3 安裝和啟動Apache Kylin 19
2.3.1 環境準備 19
2.3.2 必要組件 19
2.3.3 啟動Apache Kylin 19
2.4 設計Cube 19
2.4.1 導入Hive表定義 19
2.4.2 創建數據模型 21
2.4.3 創建Cube 23
2.5 構建Cube 32
2.5.1 全量構建和增量構建 34
2.5.2 歷史數據刷新 35
2.5.3 合併 36
2.6 查詢Cube 38
2.6.1 Apache Kylin查詢介紹 38
2.6.2 查詢下壓 40
2.7 SQL參考 41
2.8 小結 41
第3章 Cube最佳化 42
3.1 Cuboid剪枝最佳化 42
3.1.1 維度的組合 42
3.1.2 檢查Cuboid數量 43
3.1.3 檢查Cube大小 45
3.1.4 空間與時間的平衡 46
3.2 剪枝最佳化工具 47
3.2.1 使用衍生維度 47
3.2.2 聚合組 49
3.2.3 必需維度 51
3.2.4 層級維度 51
3.2.5 聯合維度 52
3.3 並發粒度優才套嫌欠化 54
3.4 Rowkey最佳化 55
3.4.1 調整Rowkey順序 55
3.4.2 選擇合適的維度編碼 56
3.4.3 按維度分片 57
3.5 Top_N度量最佳化 58
3.6 Cube Planner最佳化 61
3.7 其他最佳化 62
3.7.1 降低度量精度 62
3.7.2 及時清理無用Segment 63
3.8 小結 63
第4章 增量構建 64
4.1 為什麼要增量構建 64
4.2 設計增量Cube 66
4.2.1 設計增量Cube的條件 66
4.2.2 增量Cube的創建 67
4.3 觸發增量構建 69
4.3.1 Web GUI觸發 69
4.3.2 構建相關的REST API 70
4.4 管理Cube碎片 76
4.4.1 合併Segment 76
4.4.2 自動合併 77
4.4.3 保留Segment 79
4.4.4 數據持續更新 79
4.5 小結 80
第5章 查詢和可視化 81
5.1 Web GUI 81
5.1.1 查詢 81
5.1.2 顯示結果 82
5.2 REST API 84
5.2.1 查詢認證 85
5.2.2 查詢請求參數 85
5.2.3 查詢返回結果 86
5.3 ODBC 87
5.4 JDBC 90
5.4.1 獲得驅動包 90
5.4.2 認證 90
5.4.3 URL格式 90
5.4.4 獲取元數據信息 91
5.5 Tableau集成 91
5.5.1 連線Kylin數據源 92
5.5.2 設計數據模型 93
5.5.3 “Live”連線 93
5.5.4 自定義SQL 94
5.5.5 可視化展現 94
5.5.6 發布到Tableau Server 95
5.6 Zeppelin集成 95
5.6.1 Zeppelin架構簡介 95
5.6.2 KylinInterpreter的工作原理 96
5.6.3 如何使用Zeppelin訪問Kylin 96
5.7 Superset 集成 98
5.7.1 下載Kylinpy 98
5.7.2 安裝Superset 99
5.7.3 在Superset中添加Kylin Database 100
5.7.4 在Superset中添加Kylin Table 100
5.7.5 在Superset中創建圖表 103
5.7.6 在Superset中通過SQL Lab探索Kylin 105
5.8 QlikView 集成 106
5.8.1 連線Kylin數據源 106
5.8.2 “Direct Query”連線 107
5.8.3 創建可視化 109
5.8.4 發布到QlikView Server 110
5.9 Qlik Sense集成 110
5.9.1 連線Kylin數據源 110
5.9.2 “Direct Query”連線 112
5.9.3 創建可視化 114
5.9.4 發布到Qlik Sense Hub 115
5.9.5 在Qlik Sense Hub中連線Kylin數據源 117
5.10 Redash集成 118
5.10.1 連線Kylin數據源 118
5.10.2 新建查詢 119
5.10.3 新建儀錶盤 121
5.11 MicroStrategy 集成 122
5.11.1 創建資料庫實例 123
5.11.2 導入邏輯表 124
5.11.3 創建屬性、事實和度量 124
5.11.4 創建報告 124
5.11.5 MicroStrategy連線Kylin實踐 126
5.12 小結 127
第6章 Cube Planner及儀錶盤 128
6.1 Cube Planner 128
6.1.1 為什麼要引入Cube Planner 128
6.1.2 Cube Planner 算法介紹 129
6.1.3 使用Cube Planner 131
6.2 System Cube 134
6.2.1 開啟System Cube 134
6.2.2 構建和更新System Cube 135
6.3 儀錶盤 135
6.4 小結 137
第7章 流式構建 138
7.1 為什麼要進行流式構建 139
7.2 準備流式數據 139
7.2.1 數據格式 139
7.2.2 訊息佇列 140
7.2.3 創建Schema 141
7.3 設計流式Cube 144
7.3.1 創建Model 144
7.3.2 創建Cube 145
7.4 流式構建原理 147
7.5 觸發流式構建 150
7.5.1 單次觸發構建 151
7.5.2 自動化多次觸發 152
7.5.3 初始化構建起點 152
7.5.4 其他操作 153
7.5.5 出錯處理 153
7.6 小結 154
第8章 使用Spark 155
8.1 為什麼要引入Apache Spark 155
8.2 Spark構建原理 156
8.3 使用Spark構建Cube 158
8.3.1 配置Spark引擎 158
8.3.2 開啟Spark動態資源分配 161
8.3.3 出錯處理和問題排查 162
8.4 使用Spark SQL創建中間平表 164
8.5 小結 164
第9章 套用案例分析 166
9.1 小米集團 166
9.1.1 背景 166
9.1.2 利用Apache Kylin構建定製化OLAP解決方案 167
9.1.3 Kylin在小米的三類主要套用場景 168
9.2 美團點評 169
9.2.1 美團點評的數據場景特點 169
9.2.2 接入Apache Kylin的解決方案 170
9.2.3 Kylin的優勢 170
9.3 攜程 171
9.3.1 背景 171
9.3.2 選擇Kylin的原因 171
9.3.3 Kylin在攜程的套用情況 172
9.4 4399小遊戲 173
9.4.1 背景 173
9.4.2 Kylin 部署架構 173
9.4.3 Apache Kylin 在4399的價值 174
9.5 國內某Top 3保險公司 174
9.5.1 背景 174
9.5.2 主要痛點 175
9.5.3 Kylin帶來的改變 175
9.6 某全球銀行卡組織 176
9.6.1 背景 176
9.6.2 Kylin的價值體現 177
第10章 擴展Apache Kylin 178
10.1 可擴展式架構 178
10.1.1 可擴展架構工作原理 178
10.1.2 三大主要接口 180
10.2 計算引擎擴展 183
10.2.1 EngineFactory 183
10.2.2 MRBatchCubingEngine2 184
10.2.3 BatchCubingJobBuilder2 185
10.2.4 IMRInput 187
10.2.5 IMROutput2 189
10.2.6 計算引擎擴展小結 190
10.3 數據源擴展 190
10.3.1 Hive數據源 191
10.3.2 JDBC數據源 192
10.4 存儲擴展 194
10.5 聚合類型擴展 196
10.5.1 聚合的JSON定義 196
10.5.2 聚合類型工廠 197
10.5.3 聚合類型的實現(Measure-Type) 198
10.5.4 聚合類型擴展小結 202
10.6 維度編碼擴展 202
10.6.1 維度編碼的JSON定義 202
10.6.2 維度編碼工廠(Dimension-EncodingFactory) 203
10.6.3 維度編碼實現(Dimension-Encoding) 204
10.6.4 維度編碼擴展小結 205
10.7 小結 205
第11章 Apache Kylin的安全與認證 206
11.1 身份驗證 206
11.1.1 自定義驗證 207
11.1.2 LDAP驗證 209
11.1.3 單點登錄 213
11.2 授權 214
11.2.1 新的訪問許可權控制 214
11.2.2 統一的項目級別訪問控制 214
11.2.3 管理數據訪問許可權 216
11.3 小結 217
第12章 運維管理 218
12.1 監控和診斷 218
12.1.1 日誌檔案 218
12.1.2 任務報警 220
12.1.3 診斷工具 221
12.2 日常維護 222
12.2.1 基本運維 223
12.2.2 元數據備份 223
12.2.3 元數據恢復 224
12.2.4 系統升級 224
12.2.5 遷移 227
12.2.6 垃圾清理 228
12.3 獲得社區幫助 229
12.3.1 郵件列表 229
12.3.2 JIRA 230
12.4 小結 230
第13章 在雲上使用Kylin 231
13.1 雲計算世界 231
13.2 為何要在雲上使用Kylin 232
13.3 在亞馬遜AWS上使用Kylin 232
13.3.1 準備AWS服務資源 233
13.3.2 AWS賬戶信息 234
13.3.3 創建Amazon EMR集群 235
13.3.4 安裝Apache Kylin 237
13.4 在微軟Azure使用Kylin 239
13.4.1 準備Azure服務資源 240
13.4.2 準備Azure賬戶信息 241
13.4.3 創建HD Insight集群 241
13.4.4 安裝Apache Kylin 246
13.5 在阿里雲使用Kylin 247
13.5.1 準備阿里雲服務資源 248
13.5.2 準備阿里雲賬戶信息 249
13.5.3 創建E-MapReduce集群 250
13.5.4 安裝Apache Kylin 252
13.6 認識Kyligence Cloud 255
13.7 小結 256
第14章 參與開源 257
14.1 Apache Kylin開源歷程 257
14.2 為什麼要參與開源 258
14.3 Apache開源社區簡介 258
14.3.1 簡介 258
14.3.2 組織構成與運作模式 259
14.3.3 項目角色 259
14.3.4 孵化項目及項目 260
14.4 如何貢獻到開源社區 262
14.4.1 什麼是貢獻 262
14.4.2 如何貢獻 262
14.5 禮儀與文化 262
14.6 如何參與Apache Kylin 263
14.6.1 如何成為Apache Contributor 264
14.6.2 如何成為Apache Committer 264
14.7 小結 264
第15章 Kylin的未來 265
15.1 全面擁抱Spark技術 265
15.2 實時流分析 266
15.3 更快的存儲和查詢 266
15.4 前端展現及與BI工具的整合 266
15.5 高級OLAP函式 267
15.6 展望 267
附錄A 使用VM本地部署Kylin 268
附錄B Azure HDInsight邊緣節點模板部署代碼 274
附錄C 集群部署Apache Kylin 277
附錄D 使用MySQL作為元數據存儲 279
附錄E 配置Apache Kylin 281
附錄F 多級配置重寫 284
附錄G 常見問題與解決方案 287
作者簡介
本書在2016年一稿撰寫的時候,Kylin核心團隊剛剛加入新成立的Kyligence 公司,一切從頭開始,當時把寫書當作了頭等大事,整個六人團隊都參與了其中:韓卿、李棟、李揚、馬洪賓、史少鋒、仲儉,署名“Apache Kylin 核心團隊”。三年後,Kyligence 已經發展到一百多人;在更新第二版的時候,更多年輕小夥伴加入了進來,包括新Kylin Committer/contributor 陳志雄、龍超、翟娜、孫宇婕;BI 專家:何京珂、湯雪;解決方案專家馮禮、李森輝、宗正;技術支持工程師周丁倩,以及市場部美女編輯符雲霞等;此外還有許多同事參與了書稿的審閱。他們都義務將自己的業餘時間貢獻出來,歷時數月完成書稿的更新、修正和校對。
1.6 與其他開源產品的比較 11
1.7 小結 13
第2章 快速入門 14
2.1 核心概念14
2.1.1 數據倉庫、OLAP與BI 14
2.1.2 維度建模 15
2.1.3 事實表和維度表 16
2.1.4 維度和度量 16
2.1.5 Cube、Cuboid和Cube Segment 16
2.2 在Hive中準備數據 17
2.2.1 多維數據模型 17
2.2.2 維度表的設計 17
2.2.3 Hive表分區 18
2.2.4 了解維度的基數 18
2.2.5 樣例數據 18
2.3 安裝和啟動Apache Kylin 19
2.3.1 環境準備 19
2.3.2 必要組件 19
2.3.3 啟動Apache Kylin 19
2.4 設計Cube 19
2.4.1 導入Hive表定義 19
2.4.2 創建數據模型 21
2.4.3 創建Cube 23
2.5 構建Cube 32
2.5.1 全量構建和增量構建 34
2.5.2 歷史數據刷新 35
2.5.3 合併 36
2.6 查詢Cube 38
2.6.1 Apache Kylin查詢介紹 38
2.6.2 查詢下壓 40
2.7 SQL參考 41
2.8 小結 41
第3章 Cube最佳化 42
3.1 Cuboid剪枝最佳化 42
3.1.1 維度的組合 42
3.1.2 檢查Cuboid數量 43
3.1.3 檢查Cube大小 45
3.1.4 空間與時間的平衡 46
3.2 剪枝最佳化工具 47
3.2.1 使用衍生維度 47
3.2.2 聚合組 49
3.2.3 必需維度 51
3.2.4 層級維度 51
3.2.5 聯合維度 52
3.3 並發粒度最佳化 54
3.4 Rowkey最佳化 55
3.4.1 調整Rowkey順序 55
3.4.2 選擇合適的維度編碼 56
3.4.3 按維度分片 57
3.5 Top_N度量最佳化 58
3.6 Cube Planner最佳化 61
3.7 其他最佳化 62
3.7.1 降低度量精度 62
3.7.2 及時清理無用Segment 63
3.8 小結 63
第4章 增量構建 64
4.1 為什麼要增量構建 64
4.2 設計增量Cube 66
4.2.1 設計增量Cube的條件 66
4.2.2 增量Cube的創建 67
4.3 觸發增量構建 69
4.3.1 Web GUI觸發 69
4.3.2 構建相關的REST API 70
4.4 管理Cube碎片 76
4.4.1 合併Segment 76
4.4.2 自動合併 77
4.4.3 保留Segment 79
4.4.4 數據持續更新 79
4.5 小結 80
第5章 查詢和可視化 81
5.1 Web GUI 81
5.1.1 查詢 81
5.1.2 顯示結果 82
5.2 REST API 84
5.2.1 查詢認證 85
5.2.2 查詢請求參數 85
5.2.3 查詢返回結果 86
5.3 ODBC 87
5.4 JDBC 90
5.4.1 獲得驅動包 90
5.4.2 認證 90
5.4.3 URL格式 90
5.4.4 獲取元數據信息 91
5.5 Tableau集成 91
5.5.1 連線Kylin數據源 92
5.5.2 設計數據模型 93
5.5.3 “Live”連線 93
5.5.4 自定義SQL 94
5.5.5 可視化展現 94
5.5.6 發布到Tableau Server 95
5.6 Zeppelin集成 95
5.6.1 Zeppelin架構簡介 95
5.6.2 KylinInterpreter的工作原理 96
5.6.3 如何使用Zeppelin訪問Kylin 96
5.7 Superset 集成 98
5.7.1 下載Kylinpy 98
5.7.2 安裝Superset 99
5.7.3 在Superset中添加Kylin Database 100
5.7.4 在Superset中添加Kylin Table 100
5.7.5 在Superset中創建圖表 103
5.7.6 在Superset中通過SQL Lab探索Kylin 105
5.8 QlikView 集成 106
5.8.1 連線Kylin數據源 106
5.8.2 “Direct Query”連線 107
5.8.3 創建可視化 109
5.8.4 發布到QlikView Server 110
5.9 Qlik Sense集成 110
5.9.1 連線Kylin數據源 110
5.9.2 “Direct Query”連線 112
5.9.3 創建可視化 114
5.9.4 發布到Qlik Sense Hub 115
5.9.5 在Qlik Sense Hub中連線Kylin數據源 117
5.10 Redash集成 118
5.10.1 連線Kylin數據源 118
5.10.2 新建查詢 119
5.10.3 新建儀錶盤 121
5.11 MicroStrategy 集成 122
5.11.1 創建資料庫實例 123
5.11.2 導入邏輯表 124
5.11.3 創建屬性、事實和度量 124
5.11.4 創建報告 124
5.11.5 MicroStrategy連線Kylin實踐 126
5.12 小結 127
第6章 Cube Planner及儀錶盤 128
6.1 Cube Planner 128
6.1.1 為什麼要引入Cube Planner 128
6.1.2 Cube Planner 算法介紹 129
6.1.3 使用Cube Planner 131
6.2 System Cube 134
6.2.1 開啟System Cube 134
6.2.2 構建和更新System Cube 135
6.3 儀錶盤 135
6.4 小結 137
第7章 流式構建 138
7.1 為什麼要進行流式構建 139
7.2 準備流式數據 139
7.2.1 數據格式 139
7.2.2 訊息佇列 140
7.2.3 創建Schema 141
7.3 設計流式Cube 144
7.3.1 創建Model 144
7.3.2 創建Cube 145
7.4 流式構建原理 147
7.5 觸發流式構建 150
7.5.1 單次觸發構建 151
7.5.2 自動化多次觸發 152
7.5.3 初始化構建起點 152
7.5.4 其他操作 153
7.5.5 出錯處理 153
7.6 小結 154
第8章 使用Spark 155
8.1 為什麼要引入Apache Spark 155
8.2 Spark構建原理 156
8.3 使用Spark構建Cube 158
8.3.1 配置Spark引擎 158
8.3.2 開啟Spark動態資源分配 161
8.3.3 出錯處理和問題排查 162
8.4 使用Spark SQL創建中間平表 164
8.5 小結 164
第9章 套用案例分析 166
9.1 小米集團 166
9.1.1 背景 166
9.1.2 利用Apache Kylin構建定製化OLAP解決方案 167
9.1.3 Kylin在小米的三類主要套用場景 168
9.2 美團點評 169
9.2.1 美團點評的數據場景特點 169
9.2.2 接入Apache Kylin的解決方案 170
9.2.3 Kylin的優勢 170
9.3 攜程 171
9.3.1 背景 171
9.3.2 選擇Kylin的原因 171
9.3.3 Kylin在攜程的套用情況 172
9.4 4399小遊戲 173
9.4.1 背景 173
9.4.2 Kylin 部署架構 173
9.4.3 Apache Kylin 在4399的價值 174
9.5 國內某Top 3保險公司 174
9.5.1 背景 174
9.5.2 主要痛點 175
9.5.3 Kylin帶來的改變 175
9.6 某全球銀行卡組織 176
9.6.1 背景 176
9.6.2 Kylin的價值體現 177
第10章 擴展Apache Kylin 178
10.1 可擴展式架構 178
10.1.1 可擴展架構工作原理 178
10.1.2 三大主要接口 180
10.2 計算引擎擴展 183
10.2.1 EngineFactory 183
10.2.2 MRBatchCubingEngine2 184
10.2.3 BatchCubingJobBuilder2 185
10.2.4 IMRInput 187
10.2.5 IMROutput2 189
10.2.6 計算引擎擴展小結 190
10.3 數據源擴展 190
10.3.1 Hive數據源 191
10.3.2 JDBC數據源 192
10.4 存儲擴展 194
10.5 聚合類型擴展 196
10.5.1 聚合的JSON定義 196
10.5.2 聚合類型工廠 197
10.5.3 聚合類型的實現(Measure-Type) 198
10.5.4 聚合類型擴展小結 202
10.6 維度編碼擴展 202
10.6.1 維度編碼的JSON定義 202
10.6.2 維度編碼工廠(Dimension-EncodingFactory) 203
10.6.3 維度編碼實現(Dimension-Encoding) 204
10.6.4 維度編碼擴展小結 205
10.7 小結 205
第11章 Apache Kylin的安全與認證 206
11.1 身份驗證 206
11.1.1 自定義驗證 207
11.1.2 LDAP驗證 209
11.1.3 單點登錄 213
11.2 授權 214
11.2.1 新的訪問許可權控制 214
11.2.2 統一的項目級別訪問控制 214
11.2.3 管理數據訪問許可權 216
11.3 小結 217
第12章 運維管理 218
12.1 監控和診斷 218
12.1.1 日誌檔案 218
12.1.2 任務報警 220
12.1.3 診斷工具 221
12.2 日常維護 222
12.2.1 基本運維 223
12.2.2 元數據備份 223
12.2.3 元數據恢復 224
12.2.4 系統升級 224
12.2.5 遷移 227
12.2.6 垃圾清理 228
12.3 獲得社區幫助 229
12.3.1 郵件列表 229
12.3.2 JIRA 230
12.4 小結 230
第13章 在雲上使用Kylin 231
13.1 雲計算世界 231
13.2 為何要在雲上使用Kylin 232
13.3 在亞馬遜AWS上使用Kylin 232
13.3.1 準備AWS服務資源 233
13.3.2 AWS賬戶信息 234
13.3.3 創建Amazon EMR集群 235
13.3.4 安裝Apache Kylin 237
13.4 在微軟Azure使用Kylin 239
13.4.1 準備Azure服務資源 240
13.4.2 準備Azure賬戶信息 241
13.4.3 創建HD Insight集群 241
13.4.4 安裝Apache Kylin 246
13.5 在阿里雲使用Kylin 247
13.5.1 準備阿里雲服務資源 248
13.5.2 準備阿里雲賬戶信息 249
13.5.3 創建E-MapReduce集群 250
13.5.4 安裝Apache Kylin 252
13.6 認識Kyligence Cloud 255
13.7 小結 256
第14章 參與開源 257
14.1 Apache Kylin開源歷程 257
14.2 為什麼要參與開源 258
14.3 Apache開源社區簡介 258
14.3.1 簡介 258
14.3.2 組織構成與運作模式 259
14.3.3 項目角色 259
14.3.4 孵化項目及項目 260
14.4 如何貢獻到開源社區 262
14.4.1 什麼是貢獻 262
14.4.2 如何貢獻 262
14.5 禮儀與文化 262
14.6 如何參與Apache Kylin 263
14.6.1 如何成為Apache Contributor 264
14.6.2 如何成為Apache Committer 264
14.7 小結 264
第15章 Kylin的未來 265
15.1 全面擁抱Spark技術 265
15.2 實時流分析 266
15.3 更快的存儲和查詢 266
15.4 前端展現及與BI工具的整合 266
15.5 高級OLAP函式 267
15.6 展望 267
附錄A 使用VM本地部署Kylin 268
附錄B Azure HDInsight邊緣節點模板部署代碼 274
附錄C 集群部署Apache Kylin 277
附錄D 使用MySQL作為元數據存儲 279
附錄E 配置Apache Kylin 281
附錄F 多級配置重寫 284
附錄G 常見問題與解決方案 287
作者簡介
本書在2016年一稿撰寫的時候,Kylin核心團隊剛剛加入新成立的Kyligence 公司,一切從頭開始,當時把寫書當作了頭等大事,整個六人團隊都參與了其中:韓卿、李棟、李揚、馬洪賓、史少鋒、仲儉,署名“Apache Kylin 核心團隊”。三年後,Kyligence 已經發展到一百多人;在更新第二版的時候,更多年輕小夥伴加入了進來,包括新Kylin Committer/contributor 陳志雄、龍超、翟娜、孫宇婕;BI 專家:何京珂、湯雪;解決方案專家馮禮、李森輝、宗正;技術支持工程師周丁倩,以及市場部美女編輯符雲霞等;此外還有許多同事參與了書稿的審閱。他們都義務將自己的業餘時間貢獻出來,歷時數月完成書稿的更新、修正和校對。