原创 Spark sql操作Hive
這裏說的是最簡便的方法,通過Spark sql直接操作hive。前提是hive-site.xml等配置文件已經在Spark集羣配置好。 val logger = LoggerFactory.getLogger(SevsSpark4.get
原创 Spark2.0操作ES
ES提供了支持包來方便的操作ES。首先添加ES的依賴maven: <dependency> <groupId>org.elasticsearch</groupId> <artif
原创 Timsort工作原理
Timsort是spark中用作外部排序的機制。一個典型的應用是在spark sql中用來做Order操作的實現。Order時候將行記錄插入到ExternalSorter中,ExternalSorter用timsort排序數組,返回排序後的
原创 simhash短文本去重
simHash的java實現: import com.hankcs.hanlp.seg.common.Term; import com.hankcs.hanlp.tokenizer.StandardTokenizer; import
原创 Spark保持HDFS示例
def saveAsNewAPIHadoopFile( path: String, keyClass: Class[_], valueClass: Class[_], outputForm
原创 SparkStreaming
Spark Streaming的內核機制。後臺線程負責接收源數據的流,收到的數據保存到BlockManager,並按照時間間隔封裝成批量RDD,在RDD上執行各種操作。 每種數據源提供自己的Receiver的實現,將接收的數據調用store
原创 Spark隨機森林RandomForest
位於ml/tree/impl/目錄下。mllib目錄下的隨機森林算法也是調用的ml下的RandomForest。ml是mllib的最新實現,將來是要替換掉mllib庫的。 RandomForest核心代碼 train方法
原创 maven編譯scala,依賴包打包到jar裏
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://w
原创 Spark源碼之提交App的流程
有多種方式的提交,如Repl提交,rest的提交,本地提交等。 submit過程,在master節點提交jar包,在分配task的時候將jar包和參數裏的依賴包路徑等在子節點下載,最後執行task。 master在調度到LaunchDriv
原创 Flink操作mysql kafka和hbase
主程序 package com.streaming.flink; import java.util.Properties; import org.apache.flink.api.common.functions.FlatM
原创 Echarts製作動態K線圖和分時圖
1 K線圖 <!DOCTYPE html> <html lang="en"> <#include "../header.ftl"> <body> <#include "../nav.ftl"> <div class="cont
原创 Kafka命令行
kafka命令行: $ bin/kafka-console-producer.sh --broker-list dpnode05:6667 --topic "testThis is the first message" $ bin/kafk
原创 SpringBoot整合Mybatis
spring boot中使用mybatis有不少坑,特別是不同版本之間的兼容性等。這裏使用spring boot 1.5.9.版本和mybatis-spring-boot-starter 1.3.0版本。 mavne文件: <?xml ve
原创 Spark Catalyst
解析sql的庫。 主要類 名稱 說明 CodeGenerate 代碼生成器,主要對Expression生成對應的java代碼,輸出ExprCode。裏面包含了一系列的ExprCode子類。 ExprCode
原创 Spark源碼之BlockManager
BlockManager是分佈式塊存儲管理。核心機制是每個節點存儲自己的內存空間和磁盤空間。BlockManagerMaster負責與其他節點的BlockManager通信並負責塊在節點間的複製。BlockInfoManager負責管理塊的