基于 Rust Arrow Flight 的物联网和时序数据传输及转换工具 霍琳贺云服务版 核心功能开源 • SQL 支持 • 无模式写入 • 缓存 • 流计算 • 数据订阅 • 集群、高可用 高可靠、线性扩展 + 专业技术服务 • 边云数据复制 • 跨云 / 异地数据复制 • 增量备份 • 多级存储 • 工业数据接入 全托管时序数据 管理云服务平台 • 全托管服务 • VPC 对等连接 • 多云部署( AWS/Azure/ GCP) CONTENTS 05 2023.09 Usability Functionality taosX - 集群运维 • 数据库复制 • 全量 / 增量备份 • 数据导入 / 导出 • 数据库迁移 • 异地容灾 taosX - 数据接入 Comming Soon taosX - 流式处理 taosX - Transformer • Parse {"parse": {"field1": { "cast":0 码力 | 29 页 | 2.26 MB | 1 年前3
新一代分布式高性能图数据库的构建 - 沈游人AtlasGraph 架构及实现 新一代图技术应用特征简介 Takeaway AtlasGraph 架构概览 存储层 副本管理 CRAQ 图原生存储 索引 LSM-Tree 容灾保障 ( BR ) 元数据层 事务管理 MVOCC 计算层 Cypher AST 优化器 图计算 内存加速引 擎 服务接口 HTTP/RPC Spark 图平台,实现无代码图分析 - Query 性能分析模块,启发式提示优化 - 内置多种分析函数,面向分析师友好 -MVOCC 保证事务一致性 - 多副本管理保证数据服务高可用 - 在线备份提供容灾保障 高速 易用 可靠 Why Rust ? Performance • Blazingly fast and memory-efficient • No runtime or garbage 图平台,实现无代码图分析 - Query 性能分析模块,启发式提示优化 - 内置多种分析函数,面向分析师友好 -MVOCC 保证事务一致性 - 多副本管理保证数据服务高可用 - 在线备份提供容灾保障 高速 易用 可靠 Photo / image / chart 团队成员来自清华、北大、人大、北邮等高校,对图技 术、存储技术充满热爱 Young 、 Passion 、 Techie0 码力 | 38 页 | 24.68 MB | 1 年前3
谈谈MYSQL那点事如果既不是很强的一致性又不是很弱的一致性,那 么我们就采取中间的策略,就是在同机房再部署一个 S1(R) ,作为备库,提供读取服务,减少 M1(WR) 的 压力,而另外一个 idc 机房的 M2 只做 standby 容灾方 式的用途。 当然这里会用到 3 台数据库服务器,也许会增加采 购压力,但是我们可以提供更好的对外数据服务的能力和 途径,实际中尽可能两者兼顾。 MySQL 架构设计—高可用架构0 码力 | 38 页 | 2.04 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 13 C++ STL 容器全解之 vector是不需要重 新分配内存的,也就不会移动元素导致指 针失效。 vector 容器: capacity 函数查询实际的最大容量 • 可以用 capacity() 函数查询已经分配内存的大小,即最大容 量。 • 而 size() 返回的其实是已经存储了数据的数组长度。 • 可以发现当 resize 指定的新长度一个超过原来的最大容量时 时,就会重新分配一段更大容量的内存来存储数组,只有这时 存的时候,我们就能轻松看到。 • 不过这个只能 Linux 系统可以用哦 。 vector 容器: push_back 的问题 • 由于不知道你究竟会推入多少个元素, vector 的初始容 量是零,而 push_back 和 resize 一样,每次遇到容量 不足时,都会扩容两倍,如图。 • 这也体现了实际容量 (capacity) 和数组大小 (size) 分离 的好处,如果死板地让分配的内存容量始终等于当前数 的值,重复的次数(长度)也是参数里指定。 • a.assign(n, val) 基本和 a = vector(n, val) 等价,唯 一的区别是后者会重新分配内存,而前者会保留原来的容 量。 • void assign(size_t n, int const &val); vector 容器: assign 函数 • assign 还可以直接接受一个初始化列表作为参数。 • 0 码力 | 90 页 | 4.93 MB | 1 年前3
Rust 异步并发框架在移动端的应用 - 陈明煜普通优先级线程 Set core-affinity IO & CPU 融合 北向接口融合:异步并行迭代器 将 Rayon 并行迭代器异步化 可以对 Rust 常规数据容器生成并行迭代器,对容 器内的数据进行异步并行的操作 Fusion of IO/CPU intensive IO & CPU 融合 Fusion of IO/CPU intensive IO & CPU 融合 Fusion 单个数据执行用户业务逻辑 IO & CPU 融合 南向调度融合 IO & CPU 通过设置不同优先级,进 入不同线程池调度 线程池根据负载监控(任务平均等待 时间等数据)进行线程池动态扩缩 容。 任务窃取 Fusion of IO/CPU intensive 结构化并发 Structured Concurrency 核心在于通过一种父子结构化的方法实现并发程序,用具有明确入口点和出口0 码力 | 25 页 | 1.64 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 14 C++ 标准库系列课 - 你所不知道的 set 容器C++ 标准库系列课 - 你所不知道的 set 容 器 by 小彭老师( @archibate ) 课件 & 代码: https://github.com/parallel101/course 上期回顾: https://www.bilibili.com/video/BV1qF411T7sd 课程安排 1. vector 容器初体验 & 迭代器入门 (BV1qF411T7sd) 2. 你所不知道的 中 pair 的定义 • pair 类似于 python 里的元组,不过固定只能有两个元素,自从 C++11 引 入了能支持任意多元素的 tuple 以来,就没 pair 什么事了……但是为了兼 容 pair 还是继续存在着。 pair 是个模板类,根据尖括号里你给定的类型来 替换这里的 _T1 和 _T2 。例如 pair就会变成: • struct pair 0 码力 | 83 页 | 10.23 MB | 1 年前3
夏歌-使用Rust构建LLM应用如何用 Rust 实现的 构建和部署 AI 相关工作流的 serverless 平台 • 上传 Rust function ,平台负责将 Rust 编译成 Wasm ,并运行在 WasmEdge 安全容 器中 • 平台封装了一些常用 LLM 和 SaaS 的 API ,并发布成了 crate ,比如 ChatGPT 、 telegram 、 GitHub 、 Discord 、向量数据库比如 qdront0 码力 | 36 页 | 38.31 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - Zeno 中的现代 C++ 最佳实践 这样 main 里面就可以仅通过函数名从 functab 访问到他们,从而 catFunc 和 dogFunc 甚至不需要在头文件里声明(只需 要他们的函数签名一样即可放入 function 容 器)。 静态初始化的顺序是符号定义的顺序决定的,若在不同文件则顺序可能打乱 • 你可能已经兴冲冲地把 dogFunc 和 catFunc 挪到另一个文件,然后把 functab 声明为0 码力 | 54 页 | 3.94 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 10 从稀疏数据结构到量化数据类型以利用这一点实现稀疏? • 而当我们试图用 malloc 分配一段 4TB 的 内存,却出错了,明明说是惰性分配的? • 这是因为 glibc 在操作系统上做了很多事, 他会判断申请的大小是否超过了现有内存容 量,目的是为了防止用户犯错。 • 因此,想要追求稀疏的我们,最好想办法绕 开 glibc ,直接和操作系统打交道。 解决:绕开 glibc ,直接调用操作系统的 mmap 分配 • 那么就要用到0 码力 | 102 页 | 9.50 MB | 1 年前3
C++高性能并行编程与优化 - 课件 - 05 C++11 开始的多线程编程不接受参数,仅仅作为同步用, 不传递任何实际的值。 第 3 章:互斥量 多线程打架案例 • 两个线程试图往同一个数组里推数据。 • 奔溃了!为什么? • vector 不是多线程安全( MT-safe )的容 器。 • 多个线程同时访问同一个 vector 会出现 数据竞争( data-race )现象。 std::mutex :上锁,防止多个线程同时进入某一代码段 • 调用 std::mutex0 码力 | 79 页 | 14.11 MB | 1 年前3
共 11 条
- 1
- 2













