Curve 分布式存储设计Curve 分布式存储设计 程义 — Curve Maintainer XAgenda 第二 第三 第四 第一 Curve的由来 Curve的设计目标 Curve块存储 和 Curve文件存储 Curve社区Curve的由来 1. 代码复杂/代码量大 2. 运维难度高 3. 无法满足高的性能需求Curve的设计目标 1. Curve云原生软件定义存储 2. Curve块存储 Curve块存储 3. Curve文件存储 4. 高性能,易运维,云原生Curve块存储 1. 高性能分布式共享数据库场景 2. Curve块存储提供底层分布式共享存储 3. Polardb for PostgreSQL提供上层高性能数 据库服务 4. 性能测试 1. benchmarkSQL 每分钟事务数提升39% 2. pgbench 延迟降低21% TPS提升26% 研究现状Curve块存储 研究现状Curve块存储 1. 分布式块存储服务 2. KVM块存储服务 3. iSCSI协议 4. 容器云块存储(CSI) 应用场景Curve块存储 1. 高可用性/高可靠性 (易运维) 2. RAFT一致性协议 3. CopySet分配算法 4. 拓扑结构 5. 高性能 6. chunkfilepool (降低写放大) 7. data stripe (增大并发) 8. zerocopy0 码力 | 20 页 | 4.13 MB | 6 月前3
Raft在Curve存储中的工程实践分布式存储系统,支持 块存储 和 文件存储 2018~2021 Curve块存储 2021~2022 Curve文件存储 • 基于Openstack构建云计算平台 • 底层存储使用Ceph块存储 • 稳定性挑战 • 算力平台kubernetes的迅速发展 • AI/大数据业务的快速增长 • 存储使用Ceph文件存储/HDFS • 成本/性能挑战 Curve块存储和文件存储均采用raft协议整体架构 对接OpenStack平台为云主机提供高性能块 存储服务 • 对接Kubernetes为其提供RWO、RWX等类 型的持久化存储卷 • 对接PolarFS作为云原生数据库的高性能存储 底座,完美支持云原生数据库的存算分离架 构 • Curve作为云存储中间件使用S3兼容的对象 存储作为数据存储引擎,为公有云用户提供 高性价比的共享文件存储 • 支持在物理机上挂载使用块设备或FUSE文件 致已经被提交,系统切换到新的配置(new)。RAFT协议简介 日志压缩 • 日志会不断增长,占用空间 • 采用快照的方式压缩日志 • 在某个时间点,整个系统的状态都以快照的形式写入 到稳定的持久化存储中 • 完成一次快照之后,删除时间点之前的所有日志和快 照。BRAFT简介 • raft协议提出之后,涌现出了非常多的实现,比如etcd,braft,tikv等。 • braft是raft的一0 码力 | 29 页 | 2.20 MB | 6 月前3
新一代云原生分布式存储新一代云原生分布式存储—Curve 上 李小翠 网易数帆存储团队分布式存储介绍 01 存储的发展 | 分布式存储的分类 | 分布式存储的要素 02 03 04 Ceph 架构简介 | 场景介绍 | 使用中的问题 Curve 架构简介 | 数据对比 | 应用情况 FAQ 答疑存储的发展 互联网时代,数据大爆炸 大型主机 成本高 单点问题 扩容困难 各存储设备通过网络互联 各存储设备通过网络互联 大规模 弹性扩容 底层构建在分布式存储之上 云的概念 成本:共用基础设施 弹性:随意扩缩容 速度:更快的构建发布业务 底层构建在分布式存储之上 云原生的概念: 易用性:跨平台,超融合,弹性 小型主机 容量有限分布式存储的分类 按照各种应用场景所需的存储接口分类 对象 存储 文件 存储 块存储 接口为简单的 Get、PUT、DEL 和其他扩展 通常意义是支持 对指定地址空间进行随机读写 传统意义的块存储:磁盘分布式存储的要素 如何构建分布式文件系统? 以分布式块存储为例。 •提供大容量的块设备 •可以在指定地址空间内随机读写 write(offset, len) •服务质量要求:数据不能丢、服务随时可用、弹性扩缩容 要什么 •成百上千台存储节点 •磁盘故障、机器故障、网络故障概率性发生 有什么 分布式存储系统需要满足接口需求,并且有持续监控、错误检测、容错与自动恢复的能力0 码力 | 29 页 | 2.46 MB | 6 月前3
Rust 程序设计语言 简体中文版 1.85.0Rust!本章将介绍一些 Rust 中常见的概念,并通过 真实的程序来展示如何运用它们。你将会学到 let、match、方法(methods)、关联函数 (associated functions)、外部 crate 等知识!后续章节会深入探讨这些概念的细节。在这一 章,我们将主要练习基础内容。 我们会实现一个经典的新手编程问题:猜数字游戏。游戏的规则如下:程序将会生成一个 1 到 100 之间的 println! 占位符打印值 除了位于结尾的右花括号,目前为止就只有这一行代码值得讨论一下了: println!("You guessed: {guess}"); 这行代码现在打印了存储用户输入的字符串。{} 这对大括号是一个占位符:把 {} 想象成小蟹 钳,可以夹住合适的值。当打印变量的值时,变量名可以写进大括号中。当打印表达式的执行 结果时,格式化字符串(format stri 源代码文件。我们正在构建的项目是一个 二进制 crate,它生成一个 可执行文件。 rand crate 是一个 库 crate,库 crate 可以包含任意能被其他程序使用的代码, 但是无法独立执行。 Cargo 对外部 crate 的运用是其真正的亮点所在。在我们使用 rand 编写代码之前,需要修改 Cargo.toml 文件,引入一个 rand 依赖。现在打开这个文件并将下面这一行添加到 [dependencies]0 码力 | 562 页 | 3.23 MB | 22 天前3
Curve核心组件之mds – 网易数帆Curve核心组件之 MDS 陈威Curve 是高性能、高可用、高可靠的分布式存储系统 • 高性能、低延迟 • 可支撑储场景:块存储、对象存储、云原生数据库、EC等 • 当前实现了高性能块存储,对接OpenStack和 K8s 网易内部线上无故障稳定运行一年多 • 已开源 • github主页: https://opencurve.github.io/ • github代码仓库: https://github 概述整体架构 01 02 03 MDS各组件详细介绍 Q&A基本架构 • 元数据节点 MDS 管理元数据信息 收集集群状态信息,自动调度 • 数据节点 Chunkserver 数据存储 副本一致性 • 客户端 Client 对元数据增删改查 对数据增删改查 • 快照克隆服务器MDS各个组件 MDS是中心节点,负责元数据管理、集群状态收集与调度。MDS包含以下几个部分: • 磁盘作为最小的服务单元。TOPOLOGY curve在上物理pool之上又引入逻辑pool的概念,以实现统一存储系统的需求,即在单个存储系统中多副 本PageFile支持块设备、三副本AppendFile(待开发)支持在线对象存储、AppendECFile(待开发)支持 近线对象存储可以共存。 如上所示LogicalPool与pool为多对一的关系,一个物理pool可以存放各种类型的file。当然由于curve支持0 码力 | 23 页 | 1.74 MB | 6 月前3
TGT服务器的优化TGT 服务器的优化块设备协议 • NBD • Linux专有块设备协议 • iSCSI • 广泛支持的外部设备协议(块,磁带等)Curve云原生存储支持块设备 • 通过NBD,只支持Linux • 通过SDK API,目前只支持Linux • PFS • 扩大使用范围 • 通过iSCSI支持更多系统,例如Windows, 类UNIX系统等,使用两项基础 技术 • TCP/IP 输出内核块设备I/O效率高 • 不利于把复杂的存储协议代码搬进内核,例如(curve, brpc, c++, protobuf 等) • TCMU多了一层转接,配置过程复杂,业界踩的坑不够多。 • TCMU的用户态代码会受到框架约束,不够灵活。iSCSI target 服务器 • TGT(STGT) • 比较久的历史,原来叫STGT,后来改成TGT • 纯用户态,不与内核绑定 • 支持复杂的存储系统,例如ceph rbd rbd, sheepdog, glfs • 纯C代码,外加一些脚本 • 完整的源代码和维护工具、手册 • 编写IO驱动比较容易,容易扩展支持新的存储系统 • 代码独立,容易编译、调试、修改,适应性强让TGT支持curve • 编写curve驱动,底层异步提交I/O,pipeline • 利用NEBD PART 1接口,需要与nebdserver运行在同一台机器 • 支持共享打开,两台TGT服务器可以同时打开一个curve卷0 码力 | 15 页 | 637.11 KB | 6 月前3
人工智能安全治理框架 1.02.2 现实域安全风险 (a)诱发传统经济社会安全风险。人工智能应用于金融、能源、电信、交通、 民生等传统行业领域,如自动驾驶、智能诊疗等,模型算法存在的幻觉输出、 错误决策,以及因不当使用、外部攻击等原因出现系统性能下降、中断、失控 等问题,将对用户人身生命财产安全、经济社会安全稳定等造成安全威胁。 (b)用于违法犯罪活动的风险。人工智能可能被利用于涉恐、涉暴、涉赌、 涉毒等传统违法 生产关系的大幅改变,加速重构传统行业模式,颠覆传统的就业观、生育观、 教育观,对传统社会秩序的稳定运行带来挑战。 (c)未来脱离控制的风险。随着人工智能技术的快速发展,不排除人工 智能自主获取外部资源、自我复制,产生自我意识,寻求外部权力,带来谋求 与人类争夺控制权的风险。 4. 技术应对措施 针对上述安全风险,模型算法研发者、服务提供者、系统使用者等需从 训练数据、算力设施、模型算法、产品服务、应用场景各方面采取技术措施予 (b)在设计、研发、部署、维护过程中建立并实施安全开发规范,尽可 能消除模型算法存在的安全缺陷、歧视性倾向,提高鲁棒性。 4.1.2 数据安全风险应对 (a) 在训练数据和用户交互数据的收集、存储、使用、加工、传输、提 供、公开、删除等各环节,应遵循数据收集使用、个人信息处理的安全规则, 严格落实关于用户控制权、知情权、选择权等法律法规明确的合法权益。 (b) 加强知识产权保护,在训练数据选择、结果输出等环节防止侵犯知0 码力 | 20 页 | 3.79 MB | 1 月前3
Curve元数据节点高可用需要解决的问题就是:如何确定主备节点。 2. 技术选型 提供配置共享和服务发现的系统比较多,其中最为大家熟知的就是zookeeper和etcd, 考虑当前系统中mds有两个外部依赖模块,一是mysql, 用于存储集群拓扑的相关信息;二是etcd,用于存储文件的元数据信息。而etcd可以用于实现mds高可用,没必要引入其他组件。 使用etcd实现元数据节点的leader主要依赖于它的两个核心机制: TTL和CAS。TTL(time0 码力 | 30 页 | 2.42 MB | 6 月前3
MySQL 兼容性可以做到什么程度反推出了天价账单也谈所谓的“中间件” 中间件只是起点,PolarDB-X 可能是离终点最近的那个 对近十年的探索以及五年的上云 经验进行重新思考,面向未来设 从运维视角实现计算存储一体化 计新架构 产品形态 基于MySQL XA实现分布式事务 基于外部组件进行扩容 支持扩容 分布式事务 一体化尝试 Review 2.0 开源 2016 2017 2018 2019 2020 2021 2021年10月20日,云栖大会宣0 码力 | 18 页 | 3.02 MB | 6 月前3
【周鸿祎清华演讲】DeepSeek给我们带来的创业机会-360周鸿祎-202502政企、创业者必读政企、创业者必读 一张图读懂一堂DeepSeek课政企、创业者必读 AI给了一个比互联网更大的机会 互联网是连接平台,人工智能是生产力 互联网是赋能性技术,生产力属性较弱 人工智能既能单兵作战,也能外部赋能 互联网创造了能写140个字的推特和分享照片的Instagram AI能帮助人解决登陆火星、能源自由的问题 5政企、创业者必读 大模型是真智能,是人工智能的重大拐点。你相不相信? 大模 图像生成 视频生成 音频生成 A I 数字人 生物制药 新材料研究 脑机接口 基础科学 能源自由 宇宙探索 生命科学 科学 能力 6 AI Fo r Science 知识管理( 内部知识管理、 外部情报分析、 大数据分析、 工作流知识) 专家经验模型( 专业模型训练) 业务流程自动化( A g e n t框架) 组织协同( 工作流) 人机交互 赋能个人和 企业员工 生产力提升 多模态 知识自动汇集,不流失 多模态数据处理和理解 非结构化文档处理和理解 搜索,辅助内部办公和外部客户服务 为业务大模型RAG做准备 内部知识管理 • 把企业内部的碎片化知识, 把专 家头脑中的经验转化为显性知识 管理起来, 如员工邮件、 文档文 件、 聊天记录、 工作记录等 工作流知识管理 1 外部情报分析 • 抓取外部情报, 例如行业报告、 市 场情报等 2 多模态处理 • 用大模型多模态能力把非结构化0 码力 | 76 页 | 5.02 MB | 5 月前3
共 31 条
- 1
- 2
- 3
- 4













