續 Day 15 依賴線性一致性的場景 鎖和 leader 選舉 若系統是 single-leader,一個選 leader 的方式是使用鎖,所有節點都嘗試...
昨天提到了怎麼開發預測模型,但模型絕對不是開發完就好,後續還有非常多的事情得做。 Deployment 模型在部署時真的非常麻煩。 Build 出來的模型往往...
儘管都是模型,但預測模型目的在於預測未來,所以開發方式也會和描述型模型有所差異。 Initiation 起始階段要確認的事情跟之前差不多。 商業意圖是否明確:商...
Linearizability 線性一致性 (Linearizability) 的概念就是原來有多份副本的資料庫變成只有一份,這樣就不會有往不同副本讀取資料卻得...
特別把描述模型和預測模型分開來寫是因為兩者在開發與驗證階段有不小的差異。(https://ubiq.co/analytics-blog/create-opera...
終於要開始講建立分散式容錯系統會用到的演算法和協定啦!Day 14 ~ Day 20 的內容都是假設 Day 8 ~ Day 13 的鬼故事會發生,像封包遺失、...
接續上篇 介紹一下一般開發 ETL 的流程。每隻 ETL 都可以看作是獨立的程式,有獨立的開發流程。 Implment 設計原型 跟一般的軟體開發一樣,先從最關...
續 Day 12 今天的特別理論和抽象,所以懶得看就跳過吧! 系統模型和現實 (System Model and Reality) 很多演算法是被設計來解決...
加工資料泛指各種處理資料的行為,這部分要一篇文章寫完真滴難,所以就也只能蜻蜓點水的各介紹一點,讓大家有個整體的概觀。 Initiate 在啟動階段,目標當然是弄...
前幾天講了跟分散式系統有關的網路不可靠、時鐘不可靠的鬼故事,不可靠的東西這麼多,我們要如何判斷真與假呢?在分散式系統中,我們可以陳述我們對行為所做的假設(系統模...
不同類型的資料產品在其各自專案週期有需要注意的地方,以下我們將說明在處理原始資料時,各階段應該做的事情 Initiate 在初始階段,最重要的就是要了解搜集資料...
接續 Day 10 時鐘同步和精度 (CLock Synchronization and Accuracy) 昨天講的 單調遞增時鐘 (Monotonic...
(https://www.manmonthly.com.au/news/graphene-helps-enhance-wear-resistance-minin...
不可靠的時鐘 (Unreliable Clocks) 時鐘對應用程式來說很重要,它可以回答以下問題: 這個 request 該 timeout 了嗎? 服務的...
資料的最終目的就是替代人力。 (https://qz.com/217199/softbanks-humanoid-robot-will-be-great-for...
不可靠的網路 (Unreliable Networks) 從 2020 Day 21 - Replication 之後的文章,我們的分散式系統都是都是聚焦在 無...
前面我們花了好幾篇的篇幅在介紹原始資料、加工資料、資料模型,但這些都還沒有辦法讓資料真正發揮價值,要讓資料發揮價值一定是要將「資料」與「決策」相互結合。我們接下...
之前的文章我們大多都是在談系統 出錯 了怎麼辦,諸如 節點掛掉怎麼做、做副本 (replication) 時 Lag 怎麼辦 等等等等;一切就只是希望讓工程師們...
大部分的人對於資料開始產生興趣,不外乎就是因為想要預測未來。 (https://www.livebitcoinnews.com/bitcoin-price-an...
續 Day 6。 強列建議閱讀本文之前要先去看 Day 4 - Snapshot Isolation。 3. 序列化快照隔離 SSI (Serializab...
昨天談到 write skew 和 phantoms ,是 2 種特別難重現的 競爭條件 (race condition) 情況,也就代表無法針對這些情況做測試...
這邊指的模型不只是最近很潮的機器學習或深度學習,而是廣泛指透過資料建立用來代表現實的抽象概念(白話來說就是一堆數學)。模型並不是資料本身,但好的模型會能表現資料...
即便是相同原料經過不同師傅的手藝也會呈現不同的味道(昨天吃的游壽司) 當資料經過基本篩檢後,也會根據後續使用的需求將資料聚合(資料聚合就是將資料從細的顆粒度聚合...
續 Day 3 Snapshot Isolation 和 Repeatable read 先來看個 read committed 等級的隔離下會發生的靈異現...
前言 如果兩個 transaction 沒有接觸到相同的資料,則它們可以很愉快的 並發 (concurrent) 執行,因為他們彼此不依賴。 並發的問題只會發生...
原始資料可能來自非常多不同的地方,我們可以根據資料產生的方式來加以分類 感應器資料 這邊泛指各種 Sensor 測量得到的資料。Sensor 是普遍用來將資訊資...
單物件 (Single-Object) 和多物件 (Multi-Object) 操作 多物件 (Multi-Object) 操作 ACID 的原子性和隔離性能讓...
此系列是 資料工程師修煉之路 的後半部份,一樣是 Design Data Intensive Applications 的摘要 + 經驗分享,所有的圖片都是...
Request Routing partitioning 的最後一個段落想講的問題:如果我想寫入或讀取 foo 這個 key,我該連哪個節點? 我們稱這個一般化...
Rebalancing Partitions 每經過一段時間,資料庫可能會因為以下幾件事情改變: 為了想提高查詢的吞吐量,所以你加了 CPU。 資料的大小增加...