原创 數據結構之Treap樹
本文轉載自:http://blog.csdn.net/yang_yulei/article/details/46005845 之前我們講到二叉搜索樹,從二叉搜索樹到2-3樹到紅黑樹到B-樹。 二叉搜索樹的主要問題就是其結構與數據相關
原创 詳解LSM Tree
裝載自:http://www.cnblogs.com/fxjwind/archive/2012/08/14/2638371.html http://www.igvita.com/2012/02/06/sstable-and-lo
原创 數據結構之AVL樹
原創文章,轉載請註明: 轉載自董的博客 本文鏈接地址: http://dongxicheng.org/structure/avl/ 1. 概述 AVL樹是最早提出的自平衡二叉樹,在AVL樹中任何節點的兩個子樹的高度最大差別爲
原创 Spark-Sql源碼解析之六 PrepareForExecution: spark plan -> executed Plan
在SparkPlan中插入Shuffle的操作,如果前後2個SparkPlan的outputPartitioning不一樣的話,則中間需要插入Shuffle的動作,比分說聚合函數,先局部聚合,然後全局聚合,局部聚合和全局聚合的分區規則是不
原创 Spark-Sql源碼解析之一 引言
1.1 Demo 以一個Spark-Sql的例子開始: public class TestSparkSql { public static void main(String[] args) { Logger l
原创 Spark-Sql源碼解析之五 Spark Planner:optimized logical plan –> spark plan
前面描述的主要是邏輯計劃,即sql如何被解析成logicalplan,以及logicalplan如何被analyzer以及optimzer,接下來主要介紹邏輯計劃如何被翻譯成物理計劃,即SparkPlan。 lazy val sparkP
原创 kafka源碼解析Word版
免積分下載:http://download.csdn.net/detail/wl044090432/9487835 目錄內容: Kafka源碼解析 目錄 Kafka源碼解析... 1 一. kafka誕生的背景...
原创 數據庫常見索引解析(B樹,B-樹,B+樹,B*樹,位圖索引,Hash索引)
B樹 即二叉搜索樹: 1.所有非葉子結點至多擁有兩個兒子(Left和Right); 2.所有結點存儲一個關鍵字; 3.非葉子結點的左指針指向小於其關鍵字的子樹,右指針指向大於其關
原创 kafka源碼解析之目錄索引
源碼系列: kafka源碼解析之一kafka誕生的背景 kafka源碼解析之二kafka內部的專業術語 kafka源碼解析之三Broker的啓動 kafka源碼解析之四Broker的模塊組成 kafka源碼解析之五Broker處理的
原创 Spark-Sql源碼解析之八 Codegen
Codegen,動態字節碼技術,那麼什麼是動態字節碼技術呢?先看來一段代碼,假設SparkPlan爲Sort case class Sort( sortOrder: Seq[SortOrder], global: Bool
原创 數據結構之紅黑樹
轉載自董的博客 本文鏈接地址: http://dongxicheng.org/structure/red-black-tree/ 1. 簡介 紅黑樹是一種自平衡二叉查找樹。它的統計性能要好於平衡二叉樹(AVL樹),因此,紅黑
原创 Spark-Sql源碼解析之四 Optimizer: analyzed logical plan –> optimized logical plan
Optimizer的主要職責是將Analyzer給Resolved的Logical Plan根據不同的優化策略Batch,來對語法樹進行優化,優化邏輯計劃節點(Logical Plan)以及表達式(Expression),也是轉換成物理執
原创 Spark-Sql源碼解析之七 Execute: executed Plan -> RDD[Row]
SparkPlan如何執行呢,SparkPlan是如何轉變爲RDD[Row]的呢?首先看一段代碼: SQLContext sqlContext = new SQLContext(jsc); DataFrame dataFrame = sq
原创 Spark-Sql源碼解析之三 Analyzer:Unresolved logical plan –> analyzed logical plan
Analyzer主要職責就是將通過Sql Parser未能Resolved的Logical Plan給Resolved掉。 lazy val analyzed: LogicalPlan = analyzer.execute(logical
原创 Spark-Sql源碼解析之二 Sqlparser:sql –> unresolved logical plan
前面章節講解了Spark-SQL中的核心流程,接下來主要講解如何將sql語句轉化爲UnResolved Logical Plan(包含UnresolvedRelation、 UnresolvedFunction、 UnresolvedAt