資料庫內部原理|深入了解分散式資料系統的運作方式
Alex Petrov
買這商品的人也買了...
-
Kafka 技術手冊|即時資料與串流處理 (Kafka: The Definitive Guide)$580$458 -
軟體架構原理|工程方法 (Fundamentals of Software Architecture: A Comprehensive Guide to Patterns, Characteristics, and Best Practices)$680$537 -
資料密集型應用系統設計 (Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems)$980$774 -
內行人才知道的系統設計面試指南$580$458 -
建構微服務|設計細微化的系統, 2/e (Building Microservices: Designing Fine-Grained Systems, 2/e)$880$695 -
Google 的軟體工程之道|從程式設計經驗中吸取教訓 (Software Engineering at Google)$880$695 -
Terraform 建置與執行, 3/e (Terraform: Up and Running: Writing Infrastructure as Code, 3/e)$780$616 -
JavaScript 設計模式學習手冊, 2/e (Learning JavaScript Design Patterns: A JavaScript and React Developer's Guide, 2/e)$580$458 -
Staff 工程師之路|獻給個人貢獻者成長與改變的導航指南 (The Staff Engineer's Path)$580$458 -
程式設計守則|如何寫出更好的程式碼 (The Rules of Programming: How to Write Better Code)$620$490 -
建立演進式系統架構|支援常態性的變更, 2/e (Building Evolutionary Architectures: Automated Software Governance, 2/e)$580$458 -
Clean Code 錦囊妙計 (Clean Code Cookbook : Recipes to Improve the Design and Quality of Your Code)$880$695 -
C 的快速 + Python 的易學 - Go語言全功能開發養成書$880$695 -
Beyond XSS:探索網頁前端資安宇宙$880$695 -
Vue 學習手冊 (Learning Vue: Core Concepts and Practical Patterns for Reusable, Composable, and Scalable User Interfaces)$680$537 -
API 設計模式|簡化整合的訊息交換技術 (Patterns for API Design: Simplifying Integration with Loosely Coupled Message Exchanges)$850$672 -
演算法導論, 4/e (Introduction to Algorithms, 4/e)$1,800$1,422 -
領域故事化:協作 x 視覺化 x Agile,輕鬆打造專業水準的 DDD 軟體 (Domain Storytelling: A Collaborative, Visual, and Agile Way to Build Domain-Driven Software)$650$507 -
營養師不開菜單後的 Next.js 全端轉職攻略:從專案規劃、畫面設計、資安到 SEO,挑戰一人 Side Project (iThome鐵人賽系列書)$680$530 -
可觀測性入門指南:Logs、Metrics、Traces 三大實戰應用,用 24個 Lab 鞏固你的 SRE 技能樹 (iThome鐵人賽系列書)$680$530 -
簡約的軟體開發思維:用 Functional Programming 重構程式 - 以 Javascript 為例 (Grokking Simplicity: Taming Complex Software with Functional Thinking)$1,000$790 -
無瑕的程式碼 軟體工匠篇:程式設計師必須做到的紀律、標準與倫理 (Clean Craftsmanship: Disciplines, Standards, and Ethics)$720$562 -
資料工程基礎|規劃和建構強大、穩健的資料系統 (Fundamentals of Data Engineering)$980$774 -
軟體開發者職涯應變手冊|穿越職涯迷霧的絕佳導航 (The Software Developer's Career Handbook: A Guide to Navigating the Unpredictable)$720$569 -
先整理一下?|個人層面的軟體設計考量 (Tidy First?: A Personal Exercise in Empirical Software Design)$480$379
商品描述
「為了選擇適合的工具來完成工作,我們必須了解其設計背後的概念和演算法。本書是由業界從業者為初學者撰寫的入門書籍,涵蓋了許多相關主題。」
-Michael Klishin
RabbitMQ長期貢獻者
「對於任何從事資料庫技術有關的人來說,這是一本必備的書籍,尤其是在需要做出使用哪些系統的決策時。」
-Nate McCall
Apache Cassandra貢獻者及PMC主席
在選擇、使用和維護資料庫時,了解其內部原理是必不可少的。然而,隨著當今有許多分散式資料庫和工具可供選擇,往往很難了解每個資料庫提供的功能和它們之間的差異。在這本實用指南中,Alex Petrov將引導開發人員深入了解現代資料庫和儲存引擎內部的概念。
在整本書中,您將探索從眾多書籍、論文、部落格文章及幾個開源資料庫的原始碼中所獲取的相關資料。您將發現,許多現代資料庫中,最重要的區別在於決定儲存結構和資料分散方式的子系統中。
您將深入探討以下內容:
‧儲存引擎:了解儲存分類和分類法,深入研究基於B樹(B-tree-based)和不可變的日誌(immutable log-structured)結構儲存引擎。
‧儲存建構塊:了解如何使用輔助資料結構組織資料庫檔案,如頁面快取和緩衝池,來建立高效的儲存系統。
‧分散式系統:逐步學習節點和進程如何連接並建立複雜的通訊模式。
‧資料庫叢集:探索現代資料庫常用的一致性模型,以及分散式儲存系統如何實現一致性。
作者簡介
Alex Petrov 是一位資料基礎架構工程師,對於資料庫和儲存系統非常熱衷,同時也是Apache Cassandra的貢獻者和PMC成員。他擅長於儲存、分散式系統和演算法。
目錄大綱
前言
【第一篇 儲存引擎】
第 01 章 簡介和概述
第 02 章 B 樹基礎
第 03 章 檔案格式
第 04 章 實施 B 樹
第 05 章 交易處理和恢復
第 06 章 B 樹變體
第 07 章 日誌結構化儲存
第一部分結論
【第二篇 分散式系統】
第 08 章 簡介和概述
第 09 章 故障檢測
第 10 章 領導者選舉
第 11 章 複製和一致性
第 12 章 反熵與傳播
第 13 章 分散式交易
第 14 章 共識
第二部分結論
附錄 A 參考文獻
索引

