新一代分布式高性能图数据库的构建 - 沈游人新一代分布式高性能图数据库的构建 北京海致星图科技有限公司 2023-06-18 沈游人 数据库与大数据专场 海致简介—企业级知识图谱开创者 专业顶尖技术团队支撑 超 700 人团队,其中 80% 为技术人员,创始团队在完成全球第一个中文知 识图谱网站研发后,探索知识图谱技术在企业领域的应用。 2021 年,海致院 士专家工作站成立,站内清华大学计算机博士生占比达 90% 以上。 专注于数据智能技术赋能中国数字经济发展 海致高性能图计算院士专家工作站 郑纬民 - 海致科技首席科学家 中国工程院院士、清华大学计算机科学与技术系教 授、中国计算机学会前理事长,中国计算机系统结构 的学科带头人,我国高性能计算和存储系统等方面的 泰斗和先行者。 2021 年 3 月 25 日,海致科技与清华大学计算机科学与技术系共同建设高性能图计算院士专家工作站 。 高性能图计算是高性能计算、图计算两项技术融合产生的新的技术方向,满足人们对更大规模、更复 术方向,满足人们对更大规模、更复 杂数据的实时处理和存储需求,是计算机领域竞争新战略制高点。 产学结合、协同创新,打造全球领先的国产自研图数据库 AtlasGraph ,培育世界级的图计算软硬件 生态体系,保持对全球科技竞争的战略均衡。 海致高性能图计算院士专家工作站 海致获得“ 2021 年 CCF 科学技术奖科技进步卓越奖” CCF 科学技术奖被认为是计算机科学与技术领域最具影响力的专业奖项之一,0 码力 | 38 页 | 24.68 MB | 1 年前3
Hello 算法 1.2.0 简体中文 Rust 版艺、 到解放生产力的工业产品、再到宇宙运行的科学规律,几乎每一件平凡或令人惊叹的事物背后,都隐藏着精 妙的算法思想。 同样,数据结构无处不在:大到社会网络,小到地铁线路,许多系统都可以建模为“图”;大到一个国家,小 到一个家庭,社会的主要组织形式呈现出“树”的特征;冬天的衣服就像“栈”,最先穿上的最后才能脱下; 羽毛球筒则如同“队列”,一端放入、另一端取出;字典就像一个“哈希表”,能够快速查找目标词条。 . . . . . . . . . . . . . . . . . 192 第 9 章 图 194 9.1 图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 9.2 图的基础操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 9.3 图的遍历 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 9.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .0 码力 | 387 页 | 18.51 MB | 10 月前3
Hello 算法 1.1.0 Rust版艺、 到解放生产力的工业产品、再到宇宙运行的科学规律,几乎每一件平凡或令人惊叹的事物背后,都隐藏着精 妙的算法思想。 同样,数据结构无处不在:大到社会网络,小到地铁线路,许多系统都可以建模为“图”;大到一个国家,小 到一个家庭,社会的主要组织形式呈现出“树”的特征;冬天的衣服就像“栈”,最先穿上的最后才能脱下; 羽毛球筒则如同“队列”,一端放入、另一端取出;字典就像一个“哈希表”,能够快速查找目标词条。 . . . . . . . . . . . . . . . . . 192 第 9 章 图 194 9.1 图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195 9.2 图的基础操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 9.3 图的遍历 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 9.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .0 码力 | 388 页 | 18.50 MB | 1 年前3
Hello 算法 1.0.0 Rust版. . . . . . . . . . . . . . . . . 191 第 9 章 图 193 9.1 图 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 9.2 图的基础操作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198 9.3 图的遍历 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205 9.4 小结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 数据结构:基本数据类型和数据结构的分类方法。数组、链表、栈、队列、哈希表、树、堆、图等数据 结构的定义、优缺点、常用操作、常见类型、典型应用、实现方法等。 ‧ 算法:搜索、排序、分治、回溯、动态规划、贪心等算法的定义、优缺点、效率、应用场景、解题步骤 和示例问题等。 第 0 章 前言 hello‑algo.com 3 图 0‑1 本书主要内容 0.1.3 致谢 本书在开源社区众多贡献者的共同0 码力 | 383 页 | 17.61 MB | 1 年前3
Rust 程序设计语言 简体中文版 1.85.0阅读专门介绍程序设计的书籍。 如何阅读本书 本书大体上假设你按从头到尾的顺序阅读。后面的章节建立在前面章节概念的基础上。前面的 章节可能不会深入介绍部分主题,而是留待后续章节重新讨论。 本书分为两类章节:概念章节和项目章节。在概念章节中,我们学习 Rust 的某个方面。在项 目章节中,我们应用目前所学的知识一同构建小型程序。第二、十二和二十一章是项目章节; 其余都是概念章节。 第一章介绍如何安装 时也有类型推断。当我们写出 let guess = String::new() 时,Rust 推断出 guess 应该是 String 类型,并不需要我们写出类型。另一方面,secret_number,是数字类型。几个数字类 型拥有 1 到 100 之间的值:32 位数字 i32;32 位无符号数字 u32;64 位数字 i64 等等。 Rust 默认使用 i32,所以它是 secret_number 的类型,除非增加类型信息,或任何能让 42/562Rust 程序设计语言 简体中文版 数据类型 在 Rust 中,每一个值都有一个特定 数据类型(data type),这告诉 Rust 它被指定为何种数 据,以便明确数据处理方式。我们将看到两类数据类型子集:标量(scalar)和复合 (compound)。 记住,Rust 是 静态类型(statically typed)语言,也就是说在编译时就必须知道所有变量的 类型。根据值及其使用方式0 码力 | 562 页 | 3.23 MB | 1 月前3
Rust 程序设计语言简体中文版先阅读专门介绍程序设计的书籍。 如何阅读本书 本书大体上假设您按从头到尾的顺序阅读。后面的章节建立在前面章节概念的基础上。前面的 章节可能不会深入介绍部分主题,而是留待后续章节重新讨论。 本书分为两类章节:概念章节和项目章节。在概念章节中,我们学习 Rust 的某个方面。在项 目章节中,我们应用目前所学的知识一同构建小型程序。第 2、12 和 20 章是项目章节;其余 都是概念章节。 第 1 章介绍如何安装 3 . 2 . 数 据 类 型 数据类型 ch03-02-data-types.md commit d0acb2595c891de97a133d06635c50ab449dd65c 在 Rust 中,每一个值都属于某一个 数据类型(data type),这告诉 Rust 它被指定为何种数 据,以便明确数据处理方式。我们将看到两类数据类型子集:标量(scalar)和复合 (compound)。 `no_type_annotations` due to previous error 你会看到其它数据类型的各种类型注解。 标量类型 标量(scalar)类型代表一个单独的值。Rust 有四种基本的标量类型:整型、浮点型、布尔类 型和字符类型。你可能在其他语言中见过它们。让我们深入了解它们在 Rust 中是如何工作的。 整型 整数 是一个没有小数部分的数字。我们在第二章使用过 u32 整数类型。该类型声明表明,它 关联的值应该是一个占据0 码力 | 600 页 | 12.99 MB | 1 年前3
简谈 Rust 与国密 TLS - 王江桐AES128,但 是更多次轮询 是 TLCP、消息加解密,用于替代 DES/AES 等国际算法 Sm7 / 分组加解密 分组加 密 128 否,仅以 IP 核的形 式存在于芯片中 卡证类、票务类、支付与通卡类 应用 Sm9 GM/T 0044-2016 ISO/IEC 10118-3:2018 标识密码算法:签名 校验,密钥交换,密 钥封装与加解密 非对称 加密 128 是 TLCP,适用于新兴应用的安全保 椭圆曲线可使用更少的运算位数来达成与RSA相等的 安全性 • 椭圆曲线与RSA的安全性都依赖于离散对数问题的复 杂程度 • 离散对数问题:已知数A,B,且A = B^n,求数 n SM2 加解密算法:流程图 Flowchart of SM2 Encrypt and Decrypt Algorithm Rust China Conf 2022 – 2023, Shanghai, China SM3 Introduction • SM7 为分组加密算法,对称加密,分组长度为128比特,密钥长度为128比特。 • 保证信息机密性。 • 该算法不公开,应用包括身份识别类应用(非接触式 IC 卡、门禁卡、工作证、参赛证 等),票务类应用(大型赛事门票、展会门票等),支付与通卡类应用(积分消费卡、校 园一卡通、企业一卡通等)。 SM9 Introduction of SM9 Rust China Conf 2022 –0 码力 | 44 页 | 3.70 MB | 1 年前3
Rust 语言学习笔记的通用控制结构。和 C 和 C++ 风格的编程语言一样,代码段放在花括号中。 Rust 使用实现(implementation)、特征(trait)和结构化类型 (structured type)而不是类(class)。这点,与基于继承的 OO 语言 C++, Java 有相当大的差异。而跟 Ocaml, Haskell 这类函数式语言更加接近。 Rust 做到了内存安全而无需 .NET 和 Java is_she_love_me = false; let mut is_he_love_me: bool = true; 当然,bool 类型被用的最多的地方就是在 if 表达式里了 2.4.2.2 数字类型 和其他类 C 系的语言不一样,Rust 用一种符号+位数的方式来表示其基本的数 字类型。 可用的符号有 i、f、u 可用的位数,都是 2 的 n 次幂,分别为 8、16、32、64 及 size。 因为浮点类型最少只能用 的地址返回,但局部变量 a 存在栈中,在离开作用域 后,局部变量所申请的栈上内存都会被系统回收,从而造成了 Dangling Pointer 的问题。这是一个非常典型的内存安全问题。很多编程语言都存在类 似这样的内存安全问题。 再来看变量 c,c 的值是常量字符串,存储于常量区,可能这个函数我们只调用 了一次,我们可能不再想使用这个字符串,但 xyz 只有当整个程序结束后系统 才能回收这片内存,这点让程序员是不是也很无奈?0 码力 | 117 页 | 2.24 MB | 1 年前3
洛佳 组件化驱动、ROM运行环境与RustSBI寄 存 器 表 示 封装寄存器、位域表示和数据结构 分享性外设:以GPIO为例 • 从前级环境获取所有权,如从ROM 运行环境的#[entry]获得; • 配置GPIO状态后,只有对应外设类 型允许的操作函数能通过编译,否则 拒绝编译,避免不安全行为; • 开源标准抽象的功能,使用抽象规定 的调用方法。本芯片外设专属的功能 也可通过专有函数使用; • 用户代码简短易懂,容易编写和调 RustSBI原型设计系统 构 建 原 型 在 组 件 化 驱 动 、 R O M 运 行 环 境 基 础 上 , 快 速 构 建 完 整 的 原 型 引 导 程 序 产 品 快 速 选 型 图 形 化 界 面 选 取 功 能 , 配 置 可 保 存 , 使 用 轻 便 。 多 语 言 支 持 , 利 于 国 际 化 S B I 功 能 快 速 添 加 需 要 的 机 器 态 S B0 码力 | 21 页 | 3.12 MB | 1 年前3
Comprehensive Rust(简体中文) 202412能够在资源匮乏的设备(如手机)上运行。 • 没有运行时和垃圾收集。 • 关注程序可靠性和安全性,而不会牺牲任何性能。 4.2 Rust 的优势 Rust 有一些独特的卖点: 23 • 内存安全:在编译时可防止所有类内存 bug – 不存在未初始化的变量。 – 不存在“双重释放”。 – 不存在“释放后使用”。 – 不存在 NULL 指针。 – 不存在被遗忘的互斥锁。 – 不存在线程之间的数据竞争。 – 不存在迭代器失效。 不用在这里占用过多时间。所有这些要点均会在后面进行详细讲解。 应该问问学生们都使用过哪些语言。根据答案侧重讲解 Rust 的不同特性: • 使用过 C 或 C++:Rust 利用借用检查消除了一类 运行 。你可以达到堪比 C 和 C++ 的性能, 而没有内存不安全的问题。并且你还可以得到些现代的语言构造,比如模式匹配和内置依赖管理。 • 使用过 Java、Go、Python、JavaScript ("cat", 2))); } • Rust 会根据参数类型和返回值推理出 T 的类型。 • 这与 C++ 模板类似,但 Rust 会立即编译部分通用函数,因此该函数必须对所有符合约束条件的类 型都有效。例如,请尝试修改 pick 函数,如果 n == 0,则返回 even + odd。即使仅使用带有整 数的“pick”实例化,Rust 仍会将其视为无效。C++ 可让您做到这一点。 740 码力 | 359 页 | 1.33 MB | 10 月前3
共 22 条
- 1
- 2
- 3













