OLAP引擎底層原理與設計實踐

高英舉 許一騰

  • 出版商: 機械工業
  • 出版日期: 2025-01-01
  • 定價: $654
  • 售價: 8.5$556
  • 語言: 簡體中文
  • 頁數: 445
  • ISBN: 7111769848
  • ISBN-13: 9787111769842
  • 下單後立即進貨 (約4週~6週)

買這商品的人也買了...

相關主題

商品描述

這是一本從OLAP核心概念出發,以Presto為例,從整體執行流程到不同SQL的執行原理,完整呈現OLAP查詢的核心流程和OLAP引擎設計思路,並指導讀者形成OLAP引擎設計解決方案的專業技術工具書。本書不僅面向初級讀者介紹了OLAP查詢的基本原理和Presto使用方法,還從源碼級剖析了OLAP引擎核心原理,包括SQL查詢解析器、優化器、調度器、執行器等核心組件,並將內容擴展到OLAP引擎的常見高性能優化方案上。全書由淺入深,圖文並茂,把晦澀難懂的內容講解得透徹易懂。 本書分為6篇,包括14章。 第一篇(第1章和第2章)總體介紹業界常見的OLAP引擎並分析其優劣,討論OLAP引擎的技術發展趨勢及選型方法,介紹Presto背景知識及其使用方法、技巧。 第二篇(第3章和第4章)串講OLAP查詢執行的整個過程,並概要性介紹查詢解析器、優化器、調度器、執行器等核心模塊的工作原理,目的是讓讀者形成整體認知。 第三篇(第5~8章)以例講理,對多種經典SQL的執行原理進行解析,覆雜度從前到後逐章遞增,包含了投影變換、過濾、行數限定、排序以及多種聚合場景。 第四篇(第9章和第10章)詳解分佈式查詢執行的數據交換機制,涵蓋了查詢規劃、調度、執行的多個階段等重點內容。 第五篇(第11章和第12章)以Presto為例整體介紹流行的OLAP引擎擴展機制——插件體系與連接器。 第六篇(第13章和第14章)主要介紹函數的設計原理與開發實戰,這部分首先介紹函數註冊、解析識別、調用等重要流程,最後從標量函數、聚合函數兩方面入手,用多個實際案例介紹高級API(註解框架)的開發方法以及低級API的底層開發方法。

作者簡介

高英舉,現於某因特網大廠從事時序數據引擎研發工作,有超過12年工作經驗,涉及數據平臺、數據倉庫、OLAP引擎內核等多個領域。熟悉Hadoop、Presto、Elasticsearch、Spark、Flink等大數據技術,在多個因特網大廠的生產環境中有大數據產品大規模使用與深入優化經驗。數據集成流批處理工具Apache SeaTunnel項目創始人、PMC、主要代碼貢獻者。

目錄大綱

序一
序二
序三
序四(原版)
序四(中文版)
前言
致謝一
致謝二
第一篇 背景知識
第1章 OLAP引擎介紹與對比
1.1 OLAP的定義與對比標準
1.1.1 OLAP的定義
1.1.2 OLAP引擎之間的對比標準
1.2 各種OLAP引擎的主要特點
1.2.1 Hive
1.2.2 SparkSQL、FlinkSQL
1.2.3 ClickHouse
1.2.4 Elasticsearch
1.2.5 Presto
1.2.6 Impala
1.2.7 Doris
1.2.8 Druid
1.2.9 總結
1.3 再談對Presto技術發展的理解
1.4 總結、思考、實踐
第2章 Presto基本介紹
2.1 Presto概述:特性、原理、架構
2.1.1 一個高性能、分佈式的SQL執行框架
2.1.2 一套插件化體系
2.1.3 開箱即用的SQL內置函數和連接器
2.2 Presto的應用場景與企業案例
2.2.1 Presto的應用場景
2.2.2 Presto的企業案例
2.2.3 Presto不適合哪些場景
2.3 Presto常見問題及應對策略
2.3.1 查詢協調節點單點問題
2.3.2 查詢執行過程沒有容錯機制
2.3.3 查詢執行時報錯exceeding memory limits
2.3.4 無法動態增刪改或加載數據目錄與UDF
2.3.5 查詢執行結果必須經集群協調節點返回
……
第二篇 核心原理
第3章 分佈式查詢執行的整體流程
第4章 查詢引擎核心模塊拆解
第三篇 經典SQL
第5章 數據過濾與投影相關查詢的執行原理解析
第6章 行數限定與排序相關查詢的執行原理解析
第7章 簡單聚合查詢的執行原理解析
第8章 覆雜聚合查詢的執行原理解析
第四篇 數據交換機制
第9章 數據交換在查詢規劃、調度、執行中的基本原理
第10章 數據交換在查詢調度與執行中的詳細設計
第五篇 插件體系與連接器
第11章 連接器插件體系詳解
第12章 連接器開發實踐:以Example-HTTP連接器為例
第六篇 函數原理與開發
第13章 函數的執行原理
第14章 自定義函數開發實踐