原创 hadoop中查找某個字符串所在的hdfs位置

在/home/test/2017-08-23這個目錄中查找包含0001a794d86f0844的文件 1、shell for循環 適用於hdfs容量比較小的的 for file in `hadoop fs -ls /home/t

原创 spark讀取kafka兩種方式的區別

參考:http://spark.apache.org/docs/1.4.1/streaming-kafka-integration.html Receiver與Direct方法相比,後者具有以下優點。 簡化並行性 無需創建多個輸

原创 hadoop節點字符編碼導致的reduce重複記錄問題排查

1、背景 組內一個同學反饋:reduce輸出目錄中竟然出現了2條重複的key,理論上同一個key只會有一條記錄。程序是通過mr跑的,代碼如下: mapreduce的邏輯很簡單,其實就是實現一個去重。原因是我們的上游日誌裏經常

原创 論SparkStreaming的數據可靠性和一致性

Driver HA 由於流計算系統是長期運行、且不斷有數據流入,因此其Spark守護進程(Driver)的可靠性至關重要,它決定了Streaming程序能否一直正確地運行下去。 Driver實現HA的解決方案就是將元數據持久

原创 Kafka Mirror Maker Best Practices

Short Description: Best Practices in running Kafka Mirror Maker Article Kafka's mirroring feature makes it possible

原创 Kafka無消息丟失配置

Kafka到底會不會丟數據(data loss)? 通常不會,但有些情況下的確有可能會發生。下面的參數配置及Best practice列表可以較好地保證數據的持久性(當然是trade-off,犧牲了吞吐量)。筆者會在該列表之後對列表中的

原创 Spark中executor-memory參數詳解

我們知道,spark執行的時候,可以通過 --executor-memory 來設置executor執行時所需的memory。但如果設置的過大,程序是會報錯的,如下 那麼這個值最大能設置多少呢?本文來分析一下。 文中安

原创 java jvm gc常用參數

推薦用法-XX:+PrintGCDetails  -XX:+PrintGCDateStamps -XX:+PrintGCTimeStamps -Xloggc:/home/gc.log1、-verbose:gc這個參數會輸出虛擬機中GC的情

原创 Linux下調整/tmp目錄大小

背景: 默認的服務器/tmp目錄空間太小了,動不動就寫滿了。自己調整下。 1、查看/tmp大小 ,見下圖。 只有可憐的1G。同時發現本機的磁盤是通過lvm管理的。 2、查看vg是否有可用空間 ,如下圖。 發現可用空間是0.

原创 MapReduce任務中文部分正常,部分亂碼

集羣上提交的mr任務,發現結果中有的中文正常,有的中文是論碼。 分析了一下,應該是集羣中hadoop節點的編碼配置不一樣。可以加上下面的參數: mapred.child.env="LANG=en_US.UTF-8,LC_ALL=en_US

原创 Spark踩坑記——Spark Streaming+Kafka

前言 在WeTest輿情項目中,需要對每天千萬級的遊戲評論信息進行詞頻統計,在生產者一端,我們將數據按照每天的拉取時間存入了Kafka當中,而在消費者一端,我們利用了spark streaming從kafka中不斷拉取數據進行詞頻統計

原创 Spark1.6內存管理(一)

從1.6.0版本開始,Spark內存管理模型發生了變化。舊的內存管理模型由StaticMemoryManager類實現,現在稱爲“legacy(遺留)”。默認情況下,“Legacy”模式被禁用,這意味着在Spark 1.5.x和1

原创 Hive中虛擬列

參考自:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+VirtualColumns 在hive中直接可以直接使用。 INPUT__FILE__NA

原创 Spark Streaming場景應用|Kafka數據讀取方式

Spark Streaming 支持多種實時輸入源數據的讀取,其中包括Kafka、flume、socket流等等。除了Kafka以外的實時輸入源,由於我們的業務場景沒有涉及,在此將不會討論。本篇文章主要着眼於我們目前的業務場景,只關注Sp

原创 Spark打印每個split及其對應文件

import org.apache.hadoop.io.LongWritable import org.apache.hadoop.io.Text import org.apache.hadoop.mapred.{FileSpli