从百度文件系统看大型分布式系统设计中的定式与创新颜世光 百度 搜索基础架构 从百度文件系统 看大型分布式系统设计 自我介绍 • 颜世光, 专注于大规模分布式系统 • 代表作品 - 百度第三代Spider系统 - 百度文件系统BFS - 万亿量级实时数据库Tera - 集群调度系统Galaxy • 个人主页&Blog - https://github.com/bluebore - http://bluebore.cn 提纲 • • 百度文件系统简介 • 分布式系统设计实践 • 总结与致谢 百度的集群环境 • 单个集群通常几千台机器 • 百度文件系统(BFS)、集群调度系统(Galaxy)、分布式协 调服务(Nexus)是核心服务 • 实时任务与批量任务混合部署 Galaxy master BFS master Nexus lock service 分布式软件栈中的BFS The Baidu Stack 分布式文件系统 BFS 集群调度系统 Galaxy 分布式协调服务 Nexus 分布式数据库 Tera 分布式计算框架 Shuttle Apps(Spider/Index/Search) 数据中心操作系统(DCOS) • 进程调度&内存管理 - Galaxy - 应用部署和任务调度 • 锁和信号量 - Nexus - 分布式锁 - 分布式通知 • 文件系统 - The0 码力 | 24 页 | 937.45 KB | 1 年前3
Curve文件系统元数据管理© XXX Page 1 of 24 Curve文件系统元数据管理(已实现)© XXX Page 2 of 24 1. 2. 3. 4. Inode 1、设计一个分布式文件系统需要考虑的点: 2、其他文件系统的调研总结 3、各内存结构体 4、curve文件系统的元数据内存组织 4.1 inode定义: 4.2 dentry的定义: 4.3 内存组织 5 元数据分片 hardlink:生成一个hardlink /B/E,指向文件/A/C 6、curve文件系统的多文件系统的设计 1、设计一个分布式文件系统需要考虑的点: 文件系统的元数据是否全缓存? 元数据持久化在单独的元数据服务器上?在磁盘上?在volume上? inode+dentry方式?当前curve块存储的kv方式? 是否有单独的元数据管理服务器? 2、其他文件系统的调研总结 fs 中心化元数据 内存namespace元数据 stl unordered_map moose,使用c实现 4、curve文件系统的元数据内存组织 curve文件系统元数据主要有3个类型,inode, dentry, 。 extent 4.1 inode定义: inode定义见:curve文件系统元数据proto(代码接口定义,已实现)© XXX Page 5 of 24 typedef uint64_t0 码力 | 24 页 | 204.67 KB | 6 月前3
Curve文件系统空间分配方案Curve文件系统空间分配方案(基于块的方案,已实现)© XXX Page 2 of 11 背景 本地文件系统空间分配相关特性 局部性 延迟分配/Allocate-on-flush Inline file/data 空间分配 整体设计 空间分配流程 特殊情况 空间回收 小文件处理 并发问题 文件系统扩容 接口设计 RPC接口 空间分配器接口 背景 根据 ,文件系统基于当前的块 ,文件系统基于当前的块进行实现,所以需要设计基于块的空间分配器,用于分配并存储文件数据。 CurveFS方案设计(总体设计,只实现了部分) 本地文件系统空间分配相关特性 局部性 尽量分配连续的磁盘空间,存储文件的数据。这一特性主要是针对HDD进行的优化,降低磁盘寻道时间。 延迟分配/Allocate-on-flush 在sync/flush之前,尽可能多的积累更多的文件数据块才进行空间分配,一方面可以提高局部性,另一方面可以降低磁盘碎片。 几百字节的小文件不单独分配磁盘空间,直接把数据存放到文件的元数据中。 针对上述的本地文件系统特性,Curve文件系统分配需要着重考虑 。 局部性 虽然Curve是一个分布式文件系统,但是单个文件系统的容量可能会比较大,如果在空间分配时,不考虑局部性,inode中记录的extent数量很多,导致文件系统元数据量很大。© XXX Page 3 of 11 假如文件系统大小为1PiB,空间分配粒度为1MiB,inode中存储的0 码力 | 11 页 | 159.17 KB | 6 月前3
Curve文件系统元数据Proto(接口定义)XXX Page 1 of 15 curve文件系统元数据proto(代码接口定义,已实现)© XXX Page 2 of 15 1、代码结构和代码目录 curve文件系统是相对于curve块设备比较独立的一块,在当前curve项目的目录下,增加一个一级目录curvefs,curvefs下有自己独立的proto\src\test。 2、文件系统proto定义 2.1 mds.proto0 码力 | 15 页 | 80.33 KB | 6 月前3
深度学习在百度搜索中的工程实践-百度-曹皓0 码力 | 40 页 | 29.46 MB | 1 年前3
Curve文件系统元数据持久化方案设计0 码力 | 12 页 | 384.47 KB | 6 月前3
百度智能云 Apache Doris 文档位操作函数 字符串函数 条件函数 数学函数 JSON解析函数 类型转换函数 格式转换函数 通用函数 时间和日期函数 BITMAP函数 HLL函数 窗口函数 哈希函数 Baidu 百度智能云文档 目录 2 SQL手册 数据类型 TINYINT数据类型 TINYINT数据类型 长度: 长度为1个字节的有符号整型。 范围: [-128, 127] 转换: Doris可以 +------------------------+ +------------------------+ 1 row in set (0.00 sec) 1 row in set (0.00 sec) Baidu 百度智能云文档 SQL手册 3 BIGINT数据类型 BIGINT数据类型 长度: 长度为8个字节的有符号整型。 范围: [-9223372036854775808, 9223372036854775807] +------------------------------------------+ 1 row in set (0.05 sec) 1 row in set (0.05 sec) Baidu 百度智能云文档 SQL手册 4 转换: Doris不会自动将DOUBLE类型转换成其他类型。用户可以使用CAST()将其转换成TINYINT, SMALLINT, INT, BIGINT, STRING0 码力 | 203 页 | 1.75 MB | 1 年前3
Flutter在百度贴吧的落地实践Flutter在百度贴吧的落地实践 高飞 百度资深研发工程师 自我介绍 自我介绍 高飞 11年加入百度贴吧,资深研发工程师,百度贴吧客户端技术负责人 2016 2011 2012 2018 H5 客户端(工程) 直播(游戏) Flutter 目录 n 为何引入Flutter n 实践之旅 n 总结 目录 n 为何引入Flutter n 实践之旅 n 总结 n 年轻人兴趣社区 Framework 独立Flutter 仓库 一键命令切换 编译产物 (默认) 百度EasyBox FlutterBox 源码接入 工程pubspec.yaml Flutter源码 flutter_manifest.yaml merge pubspec开发需求 n 直接引用 n 源码开发 n 平台差异 百度pub server n 基础package n 业务package n Plugin0 码力 | 36 页 | 14.75 MB | 1 年前3
百度APP基于Istio实现基础架构升级 - lightning talk - MichaelXu#IstioCon 百度APP基于Istio实现 基础架构升级 许超 #IstioCon 背景 l 核心业务线已完成微服务改造,数万个微服务对架构服务治理能力提出了更高的要求。 l 高级架构能力能否多语言、多框架支持? l 运维架构能力是否具备可移植性?是否能低成本复制新的产品线? l 可观测性不足,是否有通用机制提升产品线可观测性? Ø 部分模块上下游超时配置不合理,超时倒挂,集中管理调整成本比较高。 比如常用运维降级、止损能力各个产品线重复建设,方案差异大,OP期望运维能力在不同产品线之间能够通用化, 集中化管理,甚至做到自动决策 Ø 精细故障能力(异常query、注入延迟等)期望能够标准化、低成本跨产品线复制 Ø 百度APP架构缺少上下游模块视图和流量视图,黄金指标不足,导致容量管理压测效率低、混沌工程实施成 本高、故障定位成本高。 #IstioCon 目标 l 服务治理策略平台化 联合公司内部,通过合作共建方式实现完整的Service l 关键技术 Ø 内核劫持,使用Loopback IP 与 服务发现一一对应。 Ø RPC劫持,构建可快速扩展标准方案。 Ø 自身稳定性,降级(兜底)、隔离、监控多种方式保证。 ①bns, 百度内部基础设施层,服务发现。 ②bns-agent,服务发现接入层。 ㊟ 内核劫持:Loopback方案 Ø loopback地址的管理和分配。 Ø 需要打通业务和loopback之间的映射管 理。0 码力 | 9 页 | 2.20 MB | 1 年前3
从高并发到极端并发:百度 Feed 与春晚红包的高可用实践-吴永巍从高并发到极端并发:百度 Feed 与春晚红包的高可用实践-吴永巍0 码力 | 28 页 | 58.98 MB | 1 年前3
共 582 条
- 1
- 2
- 3
- 4
- 5
- 6
- 59













