今天來細看 DataOps 的原則,盡量會搭配過去實作的經驗一起做說明。 1. 持續地滿足客戶需求 我們最優先的任務是透過及早並持續地交付有價值的分析洞察來滿足...
續 Day 20 Fault-Tolerant Consensus 共識問題通常可以公式化成:一個或多個節點可以提議,然後共識演算法從其提議中做決定。 舉個...
分散式 transaction 和共識 (Distributed Transactions and Consensus) 共識是分散式計算中重要的基礎問題,目標...
資料可以是資產、也可以是負債。 當組織積累了太多無用、甚至錯誤的資料時,資料不但不能提供價值,反而需要花更多力氣與時間去儲存、除錯、整理它,變成了負債。 為了讓...
前面花了不少篇幅在討論資料產品的開發,接下來將花一些篇幅討論資料產品的治理方式。 在做資料產品治理時,有一個很重要的觀念「將資料當作資產」。如果前面介紹過的,資...
[Day 19] Consistency and Consensus (3-3) - Total Order Broadcast 續 Day 18 Tota...
如同前面所說,資料模型需要運用到實際環境中才會發揮價值 Initiation 延續之前輔助決策的初始條件,如果想使用資料來做自動決策,最重要的一樣是要釐清想解決...
續 Day 17 序列號排序 (Sequence Number Ordering) 使用 timestamp 是排序事件的好方法,我們曾在 2021 Day...
如同前面所說,資料模型需要運用到實際環境中才會發揮價值 Initiation 延續之前模型的初始條件,如果想使用資料來輔助決策,最重要的就是要釐清想解決的問題是...
順序這件事在 Design Data Intensive Applications 這本書中重複到提到了很多次,代表了它是重要的基礎知識,2020 年寫到現在...
昨天提到了怎麼開發預測模型,但模型絕對不是開發完就好,後續還有非常多的事情得做。 Deployment 模型在部署時真的非常麻煩。 Build 出來的模型往往...
續 Day 15 依賴線性一致性的場景 鎖和 leader 選舉 若系統是 single-leader,一個選 leader 的方式是使用鎖,所有節點都嘗試...
儘管都是模型,但預測模型目的在於預測未來,所以開發方式也會和描述型模型有所差異。 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...