配置值說(shuō)明spark.sql.parquet.adaptiveFileSplittrue不知道spark.sql.adaptive.hashJoin.enabledtrue標(biāo)...
配置值說(shuō)明spark.sql.parquet.adaptiveFileSplittrue不知道spark.sql.adaptive.hashJoin.enabledtrue標(biāo)...
多Leader備份(Multi-Leader Replication) 這章當(dāng)目前位置我們都在討論單Leader的備份架構(gòu),這個(gè)方案用的很普遍,但也有些問(wèn)題。因?yàn)橹挥幸粋€(gè)Le...
備份落后的問(wèn)題 備份的原因不僅僅是容錯(cuò)性,像前面說(shuō)到的,減小延遲和擴(kuò)展性也是目標(biāo)。Leader-based的備份會(huì)把所有的寫(xiě)請(qǐng)求通過(guò)一個(gè)節(jié)點(diǎn)完成,但是讀請(qǐng)求可以調(diào)用其他本分節(jié)...
備份意味著把你的數(shù)據(jù)的多個(gè)副本放置在不同的機(jī)器上,這些機(jī)器通過(guò)網(wǎng)絡(luò)連接。如第二章綜述所講,備份的好處有以下幾點(diǎn) 允許你的數(shù)據(jù)離你的用戶(hù)在地理位置上更近,從而減小延遲 允許你的...
之前的第一部分我們都在講的是單機(jī)的數(shù)據(jù)系統(tǒng)。第二部分我們上一個(gè)臺(tái)階,當(dāng)有多臺(tái)機(jī)器的時(shí)候,我們需要如何進(jìn)行數(shù)據(jù)的存儲(chǔ)和查詢(xún)?為什么我們需要一個(gè)多機(jī)分布式的數(shù)據(jù)庫(kù)呢?原因如下 擴(kuò)...
消息隊(duì)列數(shù)據(jù)流 這部分會(huì)簡(jiǎn)要介紹一種異步消息傳遞系統(tǒng),在某種意義上講是在數(shù)據(jù)庫(kù)和RPC的折中方案。他與RPC相似點(diǎn)在于都是一個(gè)客戶(hù)端用一個(gè)很短的延遲將請(qǐng)求傳遞給另一個(gè)進(jìn)程。他...
Avro Avro是2009年發(fā)起的一個(gè)hadoop的子項(xiàng)目,他也是一種二進(jìn)制的編碼方式,但是和Thrift和Protocol Buffer不盡相同,它誕生之初就是因?yàn)門(mén)hr...
綜述 我們的應(yīng)用往往不可避免的需要進(jìn)行更新,添加新的功能。在第一章講過(guò)了應(yīng)用具有可進(jìn)化性,也就是說(shuō)我們的應(yīng)用應(yīng)該在設(shè)計(jì)之初就擁抱變化。大多數(shù)情況下,一旦功能發(fā)生變化,底層的數(shù)...
面向列的存儲(chǔ) 如果你的數(shù)據(jù)倉(cāng)庫(kù)有超過(guò)PB級(jí)的數(shù)據(jù)以及有超過(guò)幾千億行記錄,那如何高效的存儲(chǔ)和查詢(xún)對(duì)你來(lái)說(shuō)就是一個(gè)技術(shù)活了。屬性表相對(duì)來(lái)說(shuō)就要小很多了,往往也就是百萬(wàn)級(jí)。所以我們...
事務(wù)型處理與統(tǒng)計(jì)分析的區(qū)別 早期的數(shù)據(jù)庫(kù)是服務(wù)于商業(yè)社會(huì)的,每次數(shù)據(jù)庫(kù)讀寫(xiě)就意味著某種交易。隨著數(shù)據(jù)庫(kù)的應(yīng)用逐漸從商業(yè)領(lǐng)域擴(kuò)展到無(wú)所不在,過(guò)去一系列操作必須在一個(gè)邏輯單元完成...
B樹(shù)和LSM樹(shù)的對(duì)比 整體來(lái)說(shuō),B樹(shù)的實(shí)現(xiàn)比LSM更成熟,LSM在寫(xiě)上明顯更快,但是B樹(shù)在讀上會(huì)比LSM快很多,因?yàn)長(zhǎng)SM樹(shù)需要去確認(rèn)多個(gè)SSTable是否包含某個(gè)key。但...
總述 總的來(lái)說(shuō),數(shù)據(jù)庫(kù)只需要做兩件事情,當(dāng)你給他數(shù)據(jù)的時(shí)候,他要把數(shù)據(jù)存起來(lái),當(dāng)你隨后找他要的時(shí)候,它還能正確的把數(shù)據(jù)吐給你 第二章我們討論了數(shù)據(jù)模型和查詢(xún)語(yǔ)言,講述了你向數(shù)...
圖數(shù)據(jù)模型 總述 在前面發(fā)現(xiàn),不同的數(shù)據(jù)模型中在處理多對(duì)多的關(guān)系時(shí),處理方式和性能有著很大的不同。如果你的應(yīng)用有大量的一對(duì)多的關(guān)系,并且記錄之間沒(méi)什么關(guān)系,那文檔關(guān)系庫(kù)就很適...
數(shù)據(jù)查詢(xún)語(yǔ)言 數(shù)據(jù)庫(kù)的查詢(xún)語(yǔ)言——SQL 與關(guān)系數(shù)據(jù)庫(kù)一起走入人們視野的還有一種新的查詢(xún)數(shù)據(jù)的方式, 說(shuō)明型語(yǔ)言,最經(jīng)典的莫過(guò)去SQL。要想了解SQL或者說(shuō)明型語(yǔ)言的強(qiáng)大之處...
總敘 數(shù)據(jù)模型可以說(shuō)是開(kāi)發(fā)軟件中最重要的東西,因?yàn)樗粌H僅影響我們的程序如何編寫(xiě),更重要的是他影響你如何去思考解決問(wèn)題的方法 絕大多數(shù)的應(yīng)用都是分層構(gòu)建數(shù)據(jù)模型的,對(duì)于某一層...
可維護(hù)性 重要的觀(guān)點(diǎn),針對(duì)一個(gè)應(yīng)用而言,他的大部分時(shí)間不在最初的開(kāi)發(fā)時(shí)間上,而是在后期維護(hù)上,修bug,適應(yīng)新平臺(tái),加新功能,償還技術(shù)債務(wù)等 減少維護(hù)成本的幾個(gè)設(shè)計(jì)原則 * ...
## 數(shù)據(jù)敏感應(yīng)用的普遍功能以及問(wèn)題 ## 常有功能 1. 存儲(chǔ)數(shù)據(jù)(database) 2. 緩存(cache) 3. 根據(jù)關(guān)鍵詞查找(search indexes) 4....
這些年我們聽(tīng)到了大量與存儲(chǔ)和處理數(shù)據(jù)相關(guān)的技術(shù),NoSQL, BigData, 服務(wù)擴(kuò)展性,分區(qū)分組,ACID,CAP理論, 云服務(wù),mapreduce,實(shí)時(shí)處理。為什么會(huì)有...