 新一代分布式高性能图数据库的构建 - 沈游人新一代分布式图数据库需具备的特性 特性 信 雅 达 • 高可用 • 一致性(事 务) • 高性能 • 低资源消耗 • 易用 • 功能丰富 AtlasGraph 关键特性 云原生 Cloud-Native Graph Database 支持弹性伸缩,有 效利用硬件资源,高可用,高 可靠,故障自愈,低成本运维 HTAP Hybrid Transactional/Analytical Processing ,高性能图计算引 擎,预置 20 余种图计算算法 ,可扩展的分析引擎支持更复 杂的数据挖掘和机器学习场景 MPP Massively Parallel Processing 架构,大规模集群 分布式存储及并行计 算, Shared Nothing 模式支 持存储计算分离 高性能 基于 Rust 开发的分布式存储引 擎及图计算引擎,精细的内存 管理设计,内置索引系统,支 持毫秒级的并发查询响应速度 HTTP/RPC Spark 连接器 Python UDF 执行器 索引管理 一致性存储 RAFT 分片管理 元数据 集群管理 用户权限 GNN 应用层 Atlas 图平台 Atlas Studio Atlas Client 基础 设施 Docker/K8S/VM X86/ARM - 基于 RUST 语言保证性能优势 - 分布式架构性能可线性扩展 - 针对大规模图优化的存算引擎0 码力 | 38 页 | 24.68 MB | 1 年前3 新一代分布式高性能图数据库的构建 - 沈游人新一代分布式图数据库需具备的特性 特性 信 雅 达 • 高可用 • 一致性(事 务) • 高性能 • 低资源消耗 • 易用 • 功能丰富 AtlasGraph 关键特性 云原生 Cloud-Native Graph Database 支持弹性伸缩,有 效利用硬件资源,高可用,高 可靠,故障自愈,低成本运维 HTAP Hybrid Transactional/Analytical Processing ,高性能图计算引 擎,预置 20 余种图计算算法 ,可扩展的分析引擎支持更复 杂的数据挖掘和机器学习场景 MPP Massively Parallel Processing 架构,大规模集群 分布式存储及并行计 算, Shared Nothing 模式支 持存储计算分离 高性能 基于 Rust 开发的分布式存储引 擎及图计算引擎,精细的内存 管理设计,内置索引系统,支 持毫秒级的并发查询响应速度 HTTP/RPC Spark 连接器 Python UDF 执行器 索引管理 一致性存储 RAFT 分片管理 元数据 集群管理 用户权限 GNN 应用层 Atlas 图平台 Atlas Studio Atlas Client 基础 设施 Docker/K8S/VM X86/ARM - 基于 RUST 语言保证性能优势 - 分布式架构性能可线性扩展 - 针对大规模图优化的存算引擎0 码力 | 38 页 | 24.68 MB | 1 年前3
 王宜国 - 基于 Rust 编程语⾔构建 Amphitheatre CLI  Desktop  Server 的全平台实践经验Share Redis ETCD 可让您完全跳过镜像构建, 使⽤新代码更新正在运⾏的容器, 只需⼏秒钟⽽不是⼏分钟。 本地开发实时部署到远程集群 如何⼯作的? Kubernetes 集群 更改 资源定义 ⻆⾊定义 执⾏资源 资源定义 资源定义 更改 ⽂件 更改 ⽤户 触发 ⽂件 更改 frontend 12h shopping-cart 15m catalogue ⽬录时,Amphitheatre 终端软 件会识别 .devcontainer 规范,借助内置的 Syncthing 将变化的代码增量同步到 Amphitheatre 集群内,让你 可实时构建并预览到效果。 为了加速构建,集群内将直接编译并替换掉当前可执 ⾏的进程,⽽⾮全量构建镜像再发到到镜像仓库,然 后再拉取镜像替代旧的 Pod 等⼀系统慢⻓的流程。 Buildpacks How Buildpacks kube-rs 编写 Kubernetes Controller 及资源操作 Operator (CRD Controller) Cluster CRD reconcile Reconcile Period (60s) Kubernetes 资源布局示意 kube-rs: Kubernetes 资源操作 使⽤⾃定义资源时,通过 kube-derive 的 proc_macros ⾃动⽣成代码。0 码力 | 34 页 | 10.81 MB | 1 年前3 王宜国 - 基于 Rust 编程语⾔构建 Amphitheatre CLI  Desktop  Server 的全平台实践经验Share Redis ETCD 可让您完全跳过镜像构建, 使⽤新代码更新正在运⾏的容器, 只需⼏秒钟⽽不是⼏分钟。 本地开发实时部署到远程集群 如何⼯作的? Kubernetes 集群 更改 资源定义 ⻆⾊定义 执⾏资源 资源定义 资源定义 更改 ⽂件 更改 ⽤户 触发 ⽂件 更改 frontend 12h shopping-cart 15m catalogue ⽬录时,Amphitheatre 终端软 件会识别 .devcontainer 规范,借助内置的 Syncthing 将变化的代码增量同步到 Amphitheatre 集群内,让你 可实时构建并预览到效果。 为了加速构建,集群内将直接编译并替换掉当前可执 ⾏的进程,⽽⾮全量构建镜像再发到到镜像仓库,然 后再拉取镜像替代旧的 Pod 等⼀系统慢⻓的流程。 Buildpacks How Buildpacks kube-rs 编写 Kubernetes Controller 及资源操作 Operator (CRD Controller) Cluster CRD reconcile Reconcile Period (60s) Kubernetes 资源布局示意 kube-rs: Kubernetes 资源操作 使⽤⾃定义资源时,通过 kube-derive 的 proc_macros ⾃动⽣成代码。0 码力 | 34 页 | 10.81 MB | 1 年前3
 基于Rust-vmm实现Kubernetes运行时Senior Software Engineer at Tencent Rich experience in Container and Kubernetes field, promote lots of K8S production practice in Tencent Motivation https://kccncchina2018english.sched.com/event/FuLz/lay kubelet kubelet io.kubernetes.cri-o.TrustedSandbox=true containerd- shim-kata-v2 O C I C R I K8s Runtime io.kubernetes.cri-o.TrustedSandbox=false Firecracker- containerd runnc+Nabla OCI Solution0 码力 | 27 页 | 34.17 MB | 1 年前3 基于Rust-vmm实现Kubernetes运行时Senior Software Engineer at Tencent Rich experience in Container and Kubernetes field, promote lots of K8S production practice in Tencent Motivation https://kccncchina2018english.sched.com/event/FuLz/lay kubelet kubelet io.kubernetes.cri-o.TrustedSandbox=true containerd- shim-kata-v2 O C I C R I K8s Runtime io.kubernetes.cri-o.TrustedSandbox=false Firecracker- containerd runnc+Nabla OCI Solution0 码力 | 27 页 | 34.17 MB | 1 年前3
 基于 Rust Arrow Flight 的物联网和时序数据传输及转换工具 霍琳贺Visualization Tool Grafana Web Based Management Tool 21,400+ 4,600+ 18,500+ 社区版开源 2019.07.12 集群版开源 2020.08.03 云原生版开源 2022.08.13 注 : GitHub 为截止 2023 年 5 月数据 TDengine 的 核 心 代 码 全 部 开 源 www.github `location` VARCHAR(24)) TDengine - 业务模式 开源版 企业版 云服务版 核心功能开源 • SQL 支持 • 无模式写入 • 缓存 • 流计算 • 数据订阅 • 集群、高可用 高可靠、线性扩展 + 专业技术服务 • 边云数据复制 • 跨云 / 异地数据复制 • 增量备份 • 多级存储 • 工业数据接入 全托管时序数据 管理云服务平台 • 全托管服务 差 • 大量设备大量数据归集存储,存储压力大 • 数据总线 / 消息队列消息接入,定制化程度要求高 • 数据业务逻辑自定义需求强 • 一定的实时数据分析能力 taosX - 功能路线图 集群运维 数据接入 流式处理 流式处理 数据分享 开放平台 • Backup/Restore • Replication • Migration • Data Sources • IoT Protocols0 码力 | 29 页 | 2.26 MB | 1 年前3 基于 Rust Arrow Flight 的物联网和时序数据传输及转换工具 霍琳贺Visualization Tool Grafana Web Based Management Tool 21,400+ 4,600+ 18,500+ 社区版开源 2019.07.12 集群版开源 2020.08.03 云原生版开源 2022.08.13 注 : GitHub 为截止 2023 年 5 月数据 TDengine 的 核 心 代 码 全 部 开 源 www.github `location` VARCHAR(24)) TDengine - 业务模式 开源版 企业版 云服务版 核心功能开源 • SQL 支持 • 无模式写入 • 缓存 • 流计算 • 数据订阅 • 集群、高可用 高可靠、线性扩展 + 专业技术服务 • 边云数据复制 • 跨云 / 异地数据复制 • 增量备份 • 多级存储 • 工业数据接入 全托管时序数据 管理云服务平台 • 全托管服务 差 • 大量设备大量数据归集存储,存储压力大 • 数据总线 / 消息队列消息接入,定制化程度要求高 • 数据业务逻辑自定义需求强 • 一定的实时数据分析能力 taosX - 功能路线图 集群运维 数据接入 流式处理 流式处理 数据分享 开放平台 • Backup/Restore • Replication • Migration • Data Sources • IoT Protocols0 码力 | 29 页 | 2.26 MB | 1 年前3
 Rust在物理引擎研发中的应用 崔汉青全部用户之间、用户与道具 和场景间均可实时物理交互 横向扩展能力 单个节点的计算复杂度和 网络通信复杂度,不会随 集群总规模的上升而上 升,集群可线性扩容 单机架构 同屏大规模物理量模拟 单机渲染帧率3fps VS Motphys 分布式架构 10倍于上述场景中的物理量 单机渲染帧率 25fps 物理集群帧率 50fps 此时物理模拟已不是算力瓶颈 Unity 测试案例 Thank you! Motphys0 码力 | 22 页 | 1.18 MB | 1 年前3 Rust在物理引擎研发中的应用 崔汉青全部用户之间、用户与道具 和场景间均可实时物理交互 横向扩展能力 单个节点的计算复杂度和 网络通信复杂度,不会随 集群总规模的上升而上 升,集群可线性扩容 单机架构 同屏大规模物理量模拟 单机渲染帧率3fps VS Motphys 分布式架构 10倍于上述场景中的物理量 单机渲染帧率 25fps 物理集群帧率 50fps 此时物理模拟已不是算力瓶颈 Unity 测试案例 Thank you! Motphys0 码力 | 22 页 | 1.18 MB | 1 年前3
 刘用涛 CnosDB时序数据库的Rust实践DN2 DN3 DN4 vnode vnode vnode vnode vnode vnode vnode vnode vnode... ...... ...... Time Line Meta集群:schema,tenant信息,分片信息 数据节点:存储 vnode数据 Raft write point replica set ...... bucket bucket replica0 码力 | 26 页 | 3.28 MB | 1 年前3 刘用涛 CnosDB时序数据库的Rust实践DN2 DN3 DN4 vnode vnode vnode vnode vnode vnode vnode vnode vnode... ...... ...... Time Line Meta集群:schema,tenant信息,分片信息 数据节点:存储 vnode数据 Raft write point replica set ...... bucket bucket replica0 码力 | 26 页 | 3.28 MB | 1 年前3
 Rust分布式账务系统 - 胡宇审计监管:交易日志不可篡改,交易历史可回溯 条件事务:根据一定的条件决定事务执行与否 高可用:在部分节点失效的情况下,依旧可以提供正确的 服务 超低延迟:实时交易,超低响应延迟 水平扩展性:利用分布式事务实现钱包集群的的水平扩 展,应对高达 100 万 TPS 的流量 可演化性:业务逻辑与底层 API 解耦,当业务发生改变 时,底层 API 不用改变 分布式账务系统 设计理念 - Rust 是我们可靠的基石0 码力 | 27 页 | 12.60 MB | 1 年前3 Rust分布式账务系统 - 胡宇审计监管:交易日志不可篡改,交易历史可回溯 条件事务:根据一定的条件决定事务执行与否 高可用:在部分节点失效的情况下,依旧可以提供正确的 服务 超低延迟:实时交易,超低响应延迟 水平扩展性:利用分布式事务实现钱包集群的的水平扩 展,应对高达 100 万 TPS 的流量 可演化性:业务逻辑与底层 API 解耦,当业务发生改变 时,底层 API 不用改变 分布式账务系统 设计理念 - Rust 是我们可靠的基石0 码力 | 27 页 | 12.60 MB | 1 年前3
 Rust 语言学习笔记绑定 首先必须强调下,准确地说 Rust 中并没有变量这一概念,而应该称为标识符, 目标资源(内存,存放 value)绑定到这个标识符。 { let x: i32; // 标识符 x, 没有绑定任何资源 let y: i32 = 100; // 标识符 y,绑定资源 100 } Rust 并不会像其他语言一样可以为变量默认初始化值,Rust 明确规定变量的初 中,和“绑定”概念相辅相成的另一个机制就是“转移 move 所有 权”,意思是,可以把资源的所有权(ownership)从一个绑定转移(move)成另 一个绑定,这个操作同样通过 let 关键字完成,和绑定不同的是,=两边的左值 和右值均为两个标识符: 语法: let 标识符 A = 标识符 B; // 把“B”绑定资源的所有权转移给“A” move 前后的内存示意如下: Before move: move 后,如果变量 A 和变量 B 离开作用域,所对应的内存会不会造成“Double Free”的问题?答案是否定的,Rust 规定,只有资源的所有者销毁后才释放内 存,而无论这个资源是否被多次 move,同一时刻只有一个 owner,所以该资源 的内存也只会被 free 一次。 3.1.4 Copy 特性 举例如下: let a: i32 = 100; let0 码力 | 117 页 | 2.24 MB | 1 年前3 Rust 语言学习笔记绑定 首先必须强调下,准确地说 Rust 中并没有变量这一概念,而应该称为标识符, 目标资源(内存,存放 value)绑定到这个标识符。 { let x: i32; // 标识符 x, 没有绑定任何资源 let y: i32 = 100; // 标识符 y,绑定资源 100 } Rust 并不会像其他语言一样可以为变量默认初始化值,Rust 明确规定变量的初 中,和“绑定”概念相辅相成的另一个机制就是“转移 move 所有 权”,意思是,可以把资源的所有权(ownership)从一个绑定转移(move)成另 一个绑定,这个操作同样通过 let 关键字完成,和绑定不同的是,=两边的左值 和右值均为两个标识符: 语法: let 标识符 A = 标识符 B; // 把“B”绑定资源的所有权转移给“A” move 前后的内存示意如下: Before move: move 后,如果变量 A 和变量 B 离开作用域,所对应的内存会不会造成“Double Free”的问题?答案是否定的,Rust 规定,只有资源的所有者销毁后才释放内 存,而无论这个资源是否被多次 move,同一时刻只有一个 owner,所以该资源 的内存也只会被 free 一次。 3.1.4 Copy 特性 举例如下: let a: i32 = 100; let0 码力 | 117 页 | 2.24 MB | 1 年前3
 Rust语言核心竞争力-庄晓立需要大批量部署,必须控制硬件成本 • 受限于成本控制,硬件性能不强 • 受限于电池供电,功耗不能高 这就要求系统和应用软件要高效利用硬件 程序运行在VM上,或后台跑GC 白白浪费了宝贵的CPU和内存资源 Rust在系统编程领域 面临极其强大的竞争对手 嵌入式 C/Rust 系统编程 C/C++/C++1x/Rust Web开发 Java/Php/Python/Js 其他领域 (通俗地说) Zero-cost abstractions • 无垃圾收集器(GC) • 无虚拟机(JVM/.Net) • 无解释器(Python/JS) • 运行效率很高(与C语言相当) • 充分高效利用CPU和内存等系统资源 零运行时 零开销原则/zero-overhead principle • What you don't use, you don't pay for • What you do use, • “没有GC”居然被当作一项特性(20年来GC几乎是标配) • GC的优势:简化内存管理,基本保证内存安全 • GC的劣势:运行时开销较大,占用CPU和内存较多 • GC不能管理内存以外的其他资源(file/socket/stream) • 在系统编程领域,GC的运行时开销几乎难以容忍 • GC的终极目的是安全地释放内存 • Rust通过Ownership和RAII也能达到此目的,且性能更好0 码力 | 51 页 | 1.09 MB | 1 年前3 Rust语言核心竞争力-庄晓立需要大批量部署,必须控制硬件成本 • 受限于成本控制,硬件性能不强 • 受限于电池供电,功耗不能高 这就要求系统和应用软件要高效利用硬件 程序运行在VM上,或后台跑GC 白白浪费了宝贵的CPU和内存资源 Rust在系统编程领域 面临极其强大的竞争对手 嵌入式 C/Rust 系统编程 C/C++/C++1x/Rust Web开发 Java/Php/Python/Js 其他领域 (通俗地说) Zero-cost abstractions • 无垃圾收集器(GC) • 无虚拟机(JVM/.Net) • 无解释器(Python/JS) • 运行效率很高(与C语言相当) • 充分高效利用CPU和内存等系统资源 零运行时 零开销原则/zero-overhead principle • What you don't use, you don't pay for • What you do use, • “没有GC”居然被当作一项特性(20年来GC几乎是标配) • GC的优势:简化内存管理,基本保证内存安全 • GC的劣势:运行时开销较大,占用CPU和内存较多 • GC不能管理内存以外的其他资源(file/socket/stream) • 在系统编程领域,GC的运行时开销几乎难以容忍 • GC的终极目的是安全地释放内存 • Rust通过Ownership和RAII也能达到此目的,且性能更好0 码力 | 51 页 | 1.09 MB | 1 年前3
 Rust与算法 - 谢波……………… …………………………….. 1 6 11 15 21 • 背景介绍 • 算法相关知识 • Rust 实现数据结构 • Rust 实现算法 • 总结及学习资源 背景介绍 • 个人信息 • 写作动机 • 可参考点 • 为什么 背景介绍 # 个人职业 # 与 Rust 结缘 # 前 GPT 时代作品 个人信息 结算及大数据系统研发工程师 疫情下的明智选择 Rust , Rust 中国 大会也才第三届,期待 Rust 中国大会第十届 Rust 处于起步阶段 中文圈学习资料或书籍少,有部分是翻译国外产品,能 不能中国人向国外输出作品 Rust 缺少学习资源 Rust 未来大有可为 Rust 在操作系统,数据库,各种框架和工具上应用范围 广 写作动机 当情况不明时,抱着一个纯粹的目标干事就行了,其他 的留给时间检验。不懂就学,技术写作更像一种共创, + 1; • V+E = 32 • 2E – F + 2 = 32 总结及学习资源 • 算法总结 • 学习资源 总结及学习资源 Rust 算法总结 • 复杂度分析及算法优化 • 别自己实现,用标准库 • 利用 Rust 特性实现高效算法 • 技术在进步,用新工具辅助学习 Rust 学习资源 # 社区/公众号 社区: Rust 语言中文社区、乐酷 Rust 技术论坛 公号:觉学社、0 码力 | 28 页 | 3.52 MB | 1 年前3 Rust与算法 - 谢波……………… …………………………….. 1 6 11 15 21 • 背景介绍 • 算法相关知识 • Rust 实现数据结构 • Rust 实现算法 • 总结及学习资源 背景介绍 • 个人信息 • 写作动机 • 可参考点 • 为什么 背景介绍 # 个人职业 # 与 Rust 结缘 # 前 GPT 时代作品 个人信息 结算及大数据系统研发工程师 疫情下的明智选择 Rust , Rust 中国 大会也才第三届,期待 Rust 中国大会第十届 Rust 处于起步阶段 中文圈学习资料或书籍少,有部分是翻译国外产品,能 不能中国人向国外输出作品 Rust 缺少学习资源 Rust 未来大有可为 Rust 在操作系统,数据库,各种框架和工具上应用范围 广 写作动机 当情况不明时,抱着一个纯粹的目标干事就行了,其他 的留给时间检验。不懂就学,技术写作更像一种共创, + 1; • V+E = 32 • 2E – F + 2 = 32 总结及学习资源 • 算法总结 • 学习资源 总结及学习资源 Rust 算法总结 • 复杂度分析及算法优化 • 别自己实现,用标准库 • 利用 Rust 特性实现高效算法 • 技术在进步,用新工具辅助学习 Rust 学习资源 # 社区/公众号 社区: Rust 语言中文社区、乐酷 Rust 技术论坛 公号:觉学社、0 码力 | 28 页 | 3.52 MB | 1 年前3
共 27 条
- 1
- 2
- 3













