原创 Spark入門WordCount案例(Java和scala實現)

import org.apache.spark.SparkConf; import org.apache.spark.SparkContext; import org.apache.spark.api.java.JavaPairRDD;

原创 Spark之reduceByKey詳解

Spark算子reduceByKey詳解reduceByKey與groupByKey不同之處相同之處 reduceByKey與groupByKey 不同之處 reduceByKey,多了一個rdd,MapPartitionsRD

原创 Spark自定義分區解決手機號分區

Spark自定義分區解決手機號分區需求: 自定義分區對手機號按前三位進行分區怎麼分區而HashPartitioner的實現是通過繼承org.apache.spark.Partitioner類,重寫了numPartitions和ge

原创 Spark實現TopN計算

import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} object TopN { def main(args:

原创 SparkStreaming整合Kafka代碼案例1

SparkStreaming整合Kafka代碼maven依賴 代碼 import org.apache.kafka.clients.consumer.ConsumerRecord import org.apache.kafka.c

原创 nginx整合Kafka

nginx整合Kafka 需求: 將網站產生的用戶日誌使用通過nginx寫入Kafka中,不通過log文件和flume採集 前端測試代碼: 使用ajax發送用戶數據 /** * 生命週期函數--監聽頁面初次渲染完成

原创 MySQL事務回顧

事務 一個session中所進行的所有操作,要麼全部成功,要麼全部失敗,作爲單個邏輯工作單位執行的一系列操作,會滿足四大特性: 原子性(Atomicity):事務作爲一個整體被執行 ,要麼全部執行,要麼全部不執行 一致性(Cons

原创 MapReduce規約淺談

MapReduce階段的kv變化 MapReduce是通過inputformat類讀取文件產生K1,V1,map階段讀取數據,產生K2,V2;而Reduce階段通過拉取map階段的數據進行處理產生新的K3,V3 在map階段讀取數

原创 多線程累加計數

多線程累加計數使用Runnable接口使用AtomicInteger加線程池 使用Runnable接口 public class ThreadTest { // 公共變量 int count = 0;

原创 Hive使用窗口函數分時間間隔規劃用戶會話-lag/sum

背景 用戶可能在app上活躍多次,而這多次界定爲半個鍾,也就是說,假如我7點到8點這段期間使用了app且進行了活躍操作,隔了半個鍾後我重新打開了app進行了活躍的操作,假設活躍時間區間爲12點到13點,那麼,7-8點這段時間我們定

原创 hive使用窗口函數實現n分位數據分析

hive使用窗口函數實現n分位數據分析hive使用窗口函數實現n分位背景hivesql實現 hive使用窗口函數實現n分位 實際工作中,我們可能會遇到需要獲取高質量的用戶、主播或者大R的白名單來進行標籤輸入或者精準推送促活之類的需

原创 Scala泛型上下界

上下界 需求: 我們在定義方法/類的泛型時,限定必須從哪個類繼承、或者必須是哪個類的父類。此時,就需要使用到上下界。 上界定義 使用<: 類型名表示給類型添加一個上界,表示泛型參數必須要從該類(或本身)繼承 語法格式 [T <:

原创 Scala函數式編程基礎

/** * 函數式編程 */ object functionProgramming extends App{ val a = List(3, 5, 8, 9, 2) a.foreach(println)

原创 Scala正則表達式

正則表達式正則表達式定義示例一示例二示例三 正則表達式 在scala中,可以很方便地使用正則表達式來匹配數據。 定義 Regex類 scala中提供了Regex類來定義正則表達式 要構造一個RegEx對象,直接使用St

原创 leetcode之重複分數排名

leetcode之重複分數排名題目描述答案解析 題目描述 編寫一個 SQL 查詢來實現分數排名。如果兩個分數相同,則兩個分數排名(Rank)相同。請注意,平分後的下一個名次應該是下一個連續的整數值。換句話說,名次之間不應該有“間隔