筆者最近在做一些任務(wù)的優(yōu)化,大多的場景是因?yàn)椴捎胷ow_number()進(jìn)行分組去重,所以耗時(shí)特別高。樣例代碼如下: 原因 要做這個(gè)操作,不得不做的就是shuffle,而且因...
筆者最近在做一些任務(wù)的優(yōu)化,大多的場景是因?yàn)椴捎胷ow_number()進(jìn)行分組去重,所以耗時(shí)特別高。樣例代碼如下: 原因 要做這個(gè)操作,不得不做的就是shuffle,而且因...
再次溫故一下設(shè)計(jì)模式,這次將比較容易混淆的幾個(gè)放在一起比較一下,這4個(gè)都是結(jié)構(gòu)型的。
毛選中的大多數(shù)文章都是很簡短的,中心明確,沒有廢話。以這篇為例:怎樣分析農(nóng)村階級(一九三三年十月)[https://www.marxists.org/chinese/maoz...
筆者之前對策略模式和模板方法的理解有些模糊,正好有空查查資料搞清楚兩者之間的區(qū)別。一句話來說就是: 策略模式:把具體實(shí)現(xiàn)都留給子類或者實(shí)現(xiàn)類。重子類 模板方法:父類定好算法框...
Rust編譯器不會(huì)保證類型的布局,但是提供了一個(gè)屬性用來對類型添加布局要求,如下所示: #[repr(C)]提供了兼容C/C++編譯器的類型布局,當(dāng)你在使用FFI的時(shí)候會(huì)很有...
筆者今天遇到一個(gè)數(shù)據(jù)需求,計(jì)算從2024年1月1日到今天為止每一天的累計(jì)UV,即每一天都是一個(gè)從2024年1月1日累計(jì)到那一天的UV。 暴力法 一種從結(jié)果結(jié)果的辦法就是制作一...
筆者在這篇文章[http://www.itdecent.cn/p/3fc9b458bdab]中提到了如何使用SQL來完成時(shí)間段的一個(gè)合并,在完成該任務(wù)的同時(shí)不禁感嘆為啥提供...
問題:現(xiàn)有一堆的時(shí)間段,s表示開始時(shí)間,e表示結(jié)束時(shí)間。需要將所有時(shí)間段合并。合并規(guī)則: 如果2個(gè)時(shí)間段有重疊則合并成一個(gè)時(shí)間。 不重疊則作為一個(gè)單獨(dú)的時(shí)間段。
今天寫SQL的時(shí)候有個(gè)邏輯是要取2個(gè)時(shí)間窗口有交集的數(shù)據(jù),過濾條件如下:2個(gè)時(shí)間窗大小 [start_time1, end_time1] 和 [start_time2, en...
數(shù)據(jù)湖自身會(huì)提供一些元數(shù)據(jù)的信息,我們可以利用這些信息進(jìn)行快速粗略的數(shù)據(jù)校驗(yàn) 分區(qū)數(shù)據(jù)數(shù)校驗(yàn) 以Iceberg為例,catalog.db.tb2.partitions可以得到...
筆者從事大數(shù)據(jù)行業(yè),最近對Rust語言比較感興趣,特地關(guān)注了一下Rust在大數(shù)據(jù)生態(tài)中的建設(shè)情況,以下是一些由Rust編寫的大數(shù)據(jù)框架,感興趣的同學(xué)可以關(guān)注相關(guān)項(xiàng)目: Apa...
近期組內(nèi)產(chǎn)品分享了關(guān)于指標(biāo)的一些內(nèi)容,其中最令我印象深刻的就是指標(biāo)體系的構(gòu)建,雖說在日常的業(yè)務(wù)開發(fā)中很多概念,比如活躍,留存,激活等都是明白的,但是這些離散的東西很難構(gòu)成一個(gè)...
今天在看《Computer Networks:A Systems Approach》,讀到這段的時(shí)候有些感觸,基本涵蓋了整個(gè)軟件架構(gòu)(開發(fā))的整個(gè)過程。 To start u...
block、packet與chunk 在DFSClient寫HDFS的過程中,有三個(gè)需要搞清楚的單位:block、packet與chunk; block是最大的一個(gè)單位,它是...
一、背景 線上環(huán)境下,jvm經(jīng)常發(fā)生full gc;運(yùn)維監(jiān)控方面,服務(wù)健康檢測不健康;用戶體驗(yàn)方面,經(jīng)常出現(xiàn)大量的慢接口調(diào)用。經(jīng)觀察,這三者是伴隨發(fā)生的。起初,我們從慢接口入...
故事背景 數(shù)據(jù)處理邏輯:將一個(gè)json的數(shù)組從map結(jié)構(gòu)里面扣出來然后將json數(shù)組里面的每一個(gè)元素和map結(jié)構(gòu)里面的其他元素重新組成一個(gè)新的map,存入一個(gè)新表實(shí)現(xiàn)方式:采...
問題 使用SparkSQL將上述的數(shù)據(jù)根據(jù)嵌套提取成3列 解答 主要采用Spark 3.1.0新增的json_object_keys函數(shù)拿到key值,然后依次提取,最后輸出如...