Distributed Database
曾修俊 / 钟安元 / 敖剑Chongqing University Electronic Audio-Visual Publishing House · ChinaSep 2024
Rating 3.4- Word count
- 94K words
- Chapters
- 144
- ISBN
- 9787894464873
Tags
General Computing Graph DatabaseAdvanced TechData ManagementSystem DesignCluster ArchitectureDeveloper HandbookSummary
This book covers the theoretical foundations of NoSQL, an introduction to MongoDB, MongoDB applications and administration, an introduction to HBase, advanced HBase, Redis, graph databases, and NewSQL databases. Through this book, students can master both the knowledge and practical application of distributed databases.Editor's review
Distributed Databases is a technical monograph focused on the core architecture of today's data storage and processing. Written by Zeng Xiujun and published by Chongqing University Electronic Audio-Visual Press, it arrives at a time when data volumes are exploding and application scenarios are growing ever more complex—when distributed databases have moved from optional to foundational for many systems. The book's value lies in its systematic treatment of the core concepts, design principles, and practical considerations of distributed databases, rather than merely showing how to use specific tools.In terms of structure, the book likely follows a path from theory to practice. It should explore in depth such core topics as data sharding, consistency models (e.g., the CAP theorem, ACID versus BASE), replication mechanisms, and distributed transaction processing. For readers who want to understand how distributed databases work rather than merely how to use a particular database, this analysis of underlying principles is especially important. It helps readers build the judgment to understand the design trade-offs and suitable use cases behind different technical approaches such as Spanner, CockroachDB, TiDB, and OceanBase.
As an author, Zeng Xiujun's background typically points to a practitioner with hands-on architecture or R&D experience. This may give the book a strong practical orientation, potentially covering typical challenges in system design, performance trade-offs, and fault tolerance. For mid- to senior-level backend engineers, system architects, and students interested in going deep into the database field, this is an excellent read for building a complete body of knowledge. It does not offer a quick-fix formula, but rather a map for understanding complex systems. Reading it requires some foundational knowledge of databases and networking, but the reward is a solid and deep cognitive framework for modern data architecture—a highly valuable long-term investment in the cloud-native era.
Who it's for
A good fit for
- Mid- to senior-level backend developers who want to understand the design principles of distributed databases deeply rather than merely learn to use tools
- Architects who are selecting technologies or designing system architecture and need to evaluate different distributed database approaches
- Upper-level undergraduates or graduate students in computer-related majors with a strong interest in the underlying implementation of database systems
- Engineers working on data platforms or foundational middleware who need to deepen their theoretical understanding of distributed systems
Not a good fit for
- Beginners who only need to learn how to use a specific database (such as MySQL or Redis) for basic development
- Readers looking for a plug-and-play, step-by-step hands-on manual who are not interested in underlying theory
Reading tips
- Before reading, it is advisable to review the fundamentals of database systems and computer networks to better understand the challenges in a distributed context
- Read in conjunction with the classic papers mentioned in the book (such as Google's Spanner and Amazon's Dynamo papers) to deepen understanding
- When reading about design principles, try to compare them with one or two familiar open-source distributed databases (such as TiDB or CockroachDB) to map theory onto actual implementations
About the publisher
Chongqing University Electronic Audio-Visual Publishing House China · Founded in 2004Chongqing University Electronic Audio-Visual Publishing House focuses on electronic and audio-visual publications in the social sciences, science and technology, and education, and is involved in developing and operating digital teaching platforms and professional teaching-resource databases. Its 169 titles in the catalog cover social sciences, popular science, medicine, management, examinations, and programming design. They include social-science and popular-science works such as Review of Social Research Methods (Vol. 1) and An Illustrated Guide to the Wildlife of Guangdong Grand Canyon (2 vols.), medical humanities titles such as The Cell Renegade and Fatal Redemption, and management and technical textbooks such as Brand Operations and Planning, Digital Electronic Technology (2nd ed.), C# Programming and WinForms Basics, and Data Cleaning Techniques and Applications. Contributors include Zhao Lianfei, Zhao Feng, Hou Yu, Chen Zhe, Peng Meiqian, and Wang Jingping, as well as institutions such as the Guangdong Ruyuan Grand Canyon Provincial Nature Reserve Management Office and Guangzhou Caomufan Environmental Technology Co., Ltd. Owing to limited public information, its publishing profile is best seen as running across academic reviews, nature guides, medical popularization, and information-technology textbooks.
Contents
- 版权信息
- 内容提要
- 前言
- 第1章 NoSQL理论基础
- 1.1 数据库系统
- 1.1.1 数据库系统的基本概念
- 1.1.2 关系型数据库
- 1.1.3 NoSQL数据库的特点
- 1.2 分布式数据库的数据管理
- 1.2.1 分布式数据处理
- 1.2.2 CAP理论
- 1.3 ACID与BASE
- 1.3.1 ACID特性
- 1.3.2 BASE原理
- 1.3.3 最终一致性
- 1.4 NoSQL数据库分类
- 第2章 MongoDB入门
- 2.1 MongoDB简介
- 2.1.1 什么是MongoDB
- 2.1.2 MongoDB特点
- 2.1.3 MongoDB使用原理
- 2.1.4 MongoDB适用场景
- 2.1.5 MongoDB应用案例
- 2.2 MongoDB基本概念
- 2.2.1 文档数据模型
- 2.2.2 文档存储结构
- 2.2.3 数据类型
- 2.3 MongoDB的安装与卸载
- 2.4 数据库与集合的基本操作
- 2.4.1 数据库操作
- 2.4.2 集合操作
- 2.5 MongoDB的文档操作
- 2.5.1 文档的键定义规则
- 2.5.2 插入操作
- 2.5.3 更新操作
- 2.5.4 删除操作
- 2.5.5 查询操作
- 2.6 索引
- 2.6.1 索引简介
- 2.6.2 索引类型
- 2.6.3 索引操作
- 2.7 聚合
- 2.7.1 聚合管道方法
- 2.7.2 map-reduce方法
- 第3章 MongoDB应用与管理
- 3.1 集群架构
- 3.1.1 主从复制
- 3.1.2 副本集
- 3.1.3 分片
- 3.2 MongoDB分布式集群部署
- 3.2.1 分布式集群架构
- 3.2.2 部署副本集
- 3.2.3 部署分片集群
- 3.3 MongoDB编程方法
- 3.3.1 通过Java访问MongoDB
- 3.3.2 通过Python访问MongoDB
- 3.4 MongoDB的可视化工具
- 3.5 MongoDB性能调优
- 3.5.1 部署架构
- 3.5.2 系统优化
- 3.5.3 索引设计
- 3.5.4 监控与备份
- 3.5.5 模式设计
- 3.5.6 程序配置
- 第4章 HBase入门
- 4.1 HBase简介
- 4.1.1 产生背景
- 4.1.2 什么是HBase
- 4.1.3 HBase特点
- 4.1.4 HBase优缺点
- 4.1.5 HBase应用场景
- 4.1.6 HBase数据模型与物理模型
- 4.1.7 HBase框架原理
- 4.2 HBase安装
- 4.2.1 HBase安装准备
- 4.2.2 HBase安装
- 4.3 HBase Shell操作
- 4.3.1 其他操作
- 4.3.2 表的操作
- 4.3.3 数据操作
- 4.4 HBase API
- 4.4.1 使用Java访问HBase
- 4.4.2 使用Python访问HBase
- 第5章 HBase进阶
- 5.1 HBase优化
- 5.1.1 高可用
- 5.1.2 预分区
- 5.1.3 RowKey设计
- 5.1.4 内存优化
- 5.1.5 基础优化
- 5.2 Phoenix
- 5.2.1 Phoenix 定义
- 5.2.2 Phoenix架构
- 5.2.3 Phoenix数据模型
- 5.2.4 安装部署
- 5.2.5 Phoenix表操作
- 5.2.6 Phoenix表和HBase表的关系
- 5.2.7 二级索引
- 5.2.8 Phoenix索引分类
- 5.2.9 Phoenix API
- 第6章 Redis
- 6.1 Redis简介
- 6.1.1 Redis历史与发展
- 6.1.2 Redis是什么
- 6.1.3 Redis特性
- 6.1.4 Redis应用场景
- 6.1.5 Redis架构原理
- 6.2 Redis安装与使用
- 6.2.1 Redis安装
- 6.2.2 Redis命令行客户端
- 6.2.3 配置
- 6.2.4 多数据库
- 6.3 Redis数据类型
- 6.3.1 String
- 6.3.2 Hash
- 6.3.3 List
- 6.3.4 Set
- 6.3.5 SortSet
- 6.4 Redis API
- 6.4.1 使用Java访问Redis
- 6.4.2 使用Python访问Redis
- 第7章 图数据库
- 7.1 Neo4j简介
- 7.1.1 Neo4j产生背景
- 7.1.2 Neo4j是什么
- 7.1.3 Neo4j优缺点
- 7.1.4 Neo4j常用使用场景
- 7.1.5 Neo4j数据模型
- 7.1.6 Neo4j部署模式
- 7.2 Neo4j安装与使用
- 7.2.1 Neo4j安装配置
- 7.2.2 Neo4j使用
- 7.3 Neo4j API
- 7.3.1 使用Python访问Neo4j
- 7.3.2 使用Java访问Neo4j
- 第8章 NewSQL数据库
- 8.1 TiDB数据库
- 8.1.1 TiDB架构
- 8.1.2 TiDB的存储原理
- 8.1.3 TiDB的管理机制
- 8.1.4 TiDB应用案例
- 8.2 OceanBase
- 8.2.1 OceanBase特性
- 8.2.2 OceanBase系统架构
FAQ
What is the main difference between this book and other distributed database books on the market?
This book focuses more on the core design principles and architectural ideas of distributed databases, aiming to build readers' underlying cognitive framework and systematic judgment rather than serving as a tutorial for a specific product. It is better suited to readers who want to understand why systems are designed the way they are.How deep a technical background is required to read this book?
A solid grasp of basic database system concepts (such as transactions, indexes, and locks) and computer networking knowledge is required. Experience using at least one relational database will help. The content is aimed at developers with some experience or students who want to study the subject in depth.Does the book include many code examples and experiments?
As a book on principles, it focuses on explaining architecture and theory. It may include some pseudocode or design examples to illustrate principles, but it is not a hands-on manual dominated by code in specific programming languages (such as Java or Go). The practical portions lean more toward design ideas and solution discussions.This site is an index: you start “Search all sources” in your browser, and the entries it lists all point to third-party sites; please judge their availability yourself.
About the author
曾修俊 AuthorZeng Xiujun: publicly available information is limited, and at present only three works by this author are held in the library, all focused on computer technology and applications. Representative works include Data Cleaning Techniques and Applications, Distributed Databases, and Crawler Application Technology and Development. Judging from the titles, these works address data preprocessing, distributed data storage and management, and web crawler development, making them practical technical titles in the areas of general computing and programming design. These works commonly appear in education-related categories, suggesting that the writing is intended for teaching or introductory technical scenarios and emphasizes the introduction of technical methods and their practical application. Because information about the author's biography, nationality, education, and positions is not found in the library records and cannot be confirmed from public sources, this introduction is based solely on an objective description of the works' subject matter and categories, without any speculation about or supplementation of the author's personal background.
钟安元 AuthorZhong Anyuan is a Chinese author of computer science books, about whom little public information is available; seven of his works are included in this catalog. His writing focuses on computer technology and software development. His representative works cover both foundational and advanced topics such as distributed databases, virtualization technology and applications, and computer graphics and image rendering, as well as practice-oriented teaching and training materials including Unity3D Core Development, a hands-on guide to MySQL database design and implementation, MyBatis Framework Technology, and Advanced Java Web Application Development. Judging from the range of subjects, his books span databases, web development, graphics rendering, and game engine development. Common categories include general computer science, examinations, software learning, and programming design, reflecting an editorial orientation toward university teaching and engineering practice that suits students in relevant courses and developers seeking reference.
敖剑 AuthorAo Jian is a Chinese author of computer and technology books. Publicly available information about him is limited, and his nationality, dates of birth and death, education, and professional background are not clearly documented. Judging from the four works held in the collection, his writing focuses on computer technology and software development, covering distributed databases, ASP.NET Core framework technology, Unity3D core development, and computer graphics and image rendering. These topics span backend architecture, web development, game engine applications, and the fundamentals of graphics. The subjects are largely practical technical themes aimed at readers who wish to study systematically or consult specific development knowledge. His works are often classified under general computing, examinations, and software learning, suggesting they serve both as day-to-day technical references and as materials for related courses and exam preparation. Overall, Ao Jian's writings reflect attention to a range of development technology stacks and can serve as reference reading for understanding the basics and applications of these technologies.