「读书笔记」《大规模分布式存储系统:原理解析与架构实战》:一

本文涉及的产品
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
全局流量管理 GTM,标准版 1个月
简介: 「读书笔记」《大规模分布式存储系统:原理解析与架构实战》:一

1.1 分布式存储概念

分布式存储系统特性:

  • 可扩展
  • 低成本
  • 高性能
  • 易用

主要挑战 :数据、状态信息的持久化,要求在自动迁移、自动容错、并发读写的过程中保证数据的一致性。

技术点:

  • 数据分布 :如何将数据分布到多台服务器才能保证数据分布均匀?数据分布到多台服务器后如何实现跨服务器读写操作?
  • 一致性 :如何将数据的多个副本复制到多台服务器,即使在异常情况下,也能够保证不同副本之间的数据一致性?
  • 容错 :如何检测到服务器故障?如何自动将出现故障的服务器上的数据和服务迁移到集群中的其他服务器?
  • 负载均衡 :新增服务器和集群正常运行过程中如何实现自动负载均衡?数据迁移过程中如何保证不影响已有服务?
  • 事务与并发控制 :如何实现分布式事务?如何实现多版本并发控制?
  • 易用性 :如何设计对外接口使得系统容易使用?如何设计监控系统并将系统的内部状态以方便的形式暴露给运维人员?
  • 压缩 / 解压缩 :如何根据数据的特点设计合理的压缩、解压缩算法?如何平衡压缩算法节省的存储空间和消耗的 CPU 计算资源?

1.2 分布式存储分类

分布式存储数据结构:

  • 非结构化数据 :办公文档、文本、图片、图像、音频、视频
  • 结构化数据 :关系数据库中,可以用二维关系表结构表示。结构化数据的模式(Schema,包括属性、数据类型以及数据之间的联系)和内容是分开的,数据的模式需要预先定义。
  • 半结构化数据 :如 HTML 文档。自描述的,结构和内容混在一起,没有明显的区分,也不需要预先定义数据的模式结构。

1.2.1 分布式文件系统

以对象形式组织,对象之间没有关联,一般称为 Blob(Binary Large Object,二进制大对象)数据。

分布式文件系统也常作为分布式表格系统 以及分布式数据库的底层存储。

总体看,分布式文件系统存储三种类型的数据:

  • Blob 对象
  • 定长块
  • 大文件

1.2.2 分布式键值系统

用于存储关系简单的半结构化数据,只提供基于主键的 CRUD 功能。

类似传统的哈希表。是分布式表格系统的一种简化实现,一般用作缓存。

** 常见的数据分布技术:** 一致性哈希。

1.2.3 分布式表格系统

用于存储关系较复杂的半结构化数据,支持 CRUD,支持扫描某个主键范围。如:DynamoDB

同一个表格的多个数据行也不要求包含相同类型的列。

1.2.4 分布式数据库

从单机关系数据库扩展而来,用于存储结构化数据。

  • MySQL Sharding 集群,
  • Amazon RDS,
  • 阿里巴巴 OceanBase,
  • 腾讯 TDSQL
  • Tidb
相关文章
|
11天前
|
消息中间件 大数据 关系型数据库
RocketMQ实战—3.基于RocketMQ升级订单系统架构
本文主要介绍了基于MQ实现订单系统核心流程的异步化改造、基于MQ实现订单系统和第三方系统的解耦、基于MQ实现将订单数据同步给大数据团队、秒杀系统的技术难点以及秒杀商详页的架构设计和基于MQ实现秒杀系统的异步化架构。
RocketMQ实战—3.基于RocketMQ升级订单系统架构
|
19天前
|
机器学习/深度学习 文字识别 监控
安全监控系统:技术架构与应用解析
该系统采用模块化设计,集成了行为识别、视频监控、人脸识别、危险区域检测、异常事件检测、日志追溯及消息推送等功能,并可选配OCR识别模块。基于深度学习与开源技术栈(如TensorFlow、OpenCV),系统具备高精度、低延迟特点,支持实时分析儿童行为、监测危险区域、识别异常事件,并将结果推送给教师或家长。同时兼容主流硬件,支持本地化推理与分布式处理,确保可靠性与扩展性,为幼儿园安全管理提供全面解决方案。
|
1月前
|
资源调度 监控 调度
基于SCA的软件无线电系统的概念与架构
软件通信体系架构(SCA)是基于软件定义无线电(SDR)思想构建的开放式、标准化和模块化平台,旨在通过软件实现通信功能的灵活配置。SCA起源于美军为解决“信息烟囱”问题而推出的联合战术无线电系统(JTRS),其核心目标是提升多军种联合作战通信能力。 上海介方信息公司的OpenSCA操作环境严格遵循SCA4.1/SRTF标准,支持高集成、嵌入式等场景,适用于军用通信、雷达等领域。 SCA体系包括目标平台资源层(TRL)、环境抽象层(EAL)、SRTF操作环境(OE)及应用层(AL)。其中,SRTF操作环境包含操作系统、运行时环境(RTE)和核心框架(CF),提供波形管理、资源调度等功能。
【YashanDB知识库】如何排查YMP报错:”OCI版本为空或OCI的架构和本地系统的架构不符“
【YashanDB知识库】如何排查YMP报错:”OCI版本为空或OCI的架构和本地系统的架构不符“
【YashanDB知识库】如何排查YMP报错:”OCI版本为空或OCI的架构和本地系统的架构不符“
|
12天前
|
监控 NoSQL 算法
百万级URL重定向工程:大规模网站架构设计与性能优化实战
本文深入探讨了大规模重定向系统的核心挑战与解决方案,涵盖技术瓶颈分析、分布式架构设计、十亿级URL处理策略、全球化部署方案及全链路监控体系。通过数学建模与性能优化,提出三层架构模型,并结合一致性哈希分片算法实现高效路由。同时,对比不同架构的吞吐量与容灾能力,分享某电商平台实践案例,展示性能显著提升。最后展望重定向即服务(RaaS)未来趋势,包括AI动态路由、量子安全跳转和边缘智能等关键技术,为企业提供扩展性强、稳定性高的系统设计参考。
71 25
|
4天前
|
人工智能 Cloud Native Serverless
从理论到落地:MCP 实战解锁 AI 应用架构新范式 | 免费领取 78 页完整 PPT
本文旨在从 MCP 的技术原理、降低 MCP Server 构建复杂度、提升 Server 运行稳定性等方面出发,分享我们的一些实践心得。
|
7天前
|
人工智能 自然语言处理 API
MCP与A2A协议比较:人工智能系统互联与协作的技术基础架构
本文深入解析了人工智能领域的两项关键基础设施协议:模型上下文协议(MCP)与代理对代理协议(A2A)。MCP由Anthropic开发,专注于标准化AI模型与外部工具和数据源的连接,降低系统集成复杂度;A2A由Google发布,旨在实现不同AI代理间的跨平台协作。两者虽有相似之处,但在设计目标与应用场景上互为补充。文章通过具体示例分析了两种协议的技术差异及适用场景,并探讨了其在企业工作流自动化、医疗信息系统和软件工程中的应用。最后,文章强调了整合MCP与A2A构建协同AI系统架构的重要性,为未来AI技术生态系统的演进提供了方向。
149 4
|
11天前
|
边缘计算 监控 安全
301重定向进阶实战:从性能优化到未来架构演进
本文探讨了百万级流量动态重定向的架构设计与优化方案,结合全球电商平台迁移案例,展示基于Nginx+Lua的动态规则引擎及流量分级策略。同时,深入分析性能优化与安全加固技术,如零延迟跳转、智能熔断机制,并提出混合云环境下的跨平台解决方案。此外,针对SEO数据继承与流量恢复提供三维权重映射模型和自动化监测工具链。最后,展望边缘计算、区块链及量子安全等下一代重定向技术,为企业构建面向未来的体系提供参考。
63 7
|
26天前
|
运维 供应链 前端开发
中小医院云HIS系统源码,系统融合HIS与EMR功能,采用B/S架构与SaaS模式,快速交付并简化运维
这是一套专为中小医院和乡镇卫生院设计的云HIS系统源码,基于云端部署,采用B/S架构与SaaS模式,快速交付并简化运维。系统融合HIS与EMR功能,涵盖门诊挂号、预约管理、一体化电子病历、医生护士工作站、收费财务、药品进销存及统计分析等模块。技术栈包括前端Angular+Nginx,后端Java+Spring系列框架,数据库使用MySQL+MyCat。该系统实现患者管理、医嘱处理、费用结算、药品管控等核心业务全流程数字化,助力医疗机构提升效率和服务质量。
|
1月前
|
消息中间件 安全 NoSQL
布谷直播系统源码开发实战:从架构设计到性能优化
作为山东布谷科技的一名技术研发人员,我参与了多个直播系统平台从0到1的开发和搭建,也见证了直播行业从萌芽到爆发的全过程。今天,我想从研发角度,分享一些直播系统软件开发的经验和心得,希望能对大家有所帮助。

推荐镜像

更多