领域驱动设计&中台/基于DDD的领域建模中的模版和工具实践76b3d4f40b277dfbb64/p18_2.jpg) ## 步骤三:识别聚合 ## 什么是聚合 在领域驱动设计中,聚合是一组相关领域对象,其目的是要确保业务规则在领域对象的各个生命周期都得以执行: ▶ 聚合边界内保证业务不变性 (invariant) ▶ 只能通过聚合根修改边界内的对象 ▶ 聚合根有全局标识  ## 个人简介 • 宋涛 • Ping++ DBA • 负责Ping++数据库相关工作、数据库自动化运维建设 ## TiDB在Ping++金融聚合支付业务的实践 • TiDB在Ping++的应用场景分析 TiDB在Ping++的应用场景分析 - OLAP: saas服务下实时数仓的支撑 - HTAP:基于TiDB Docker的聚合支付私有化部署方案 - 关于TiDB的线上运维 - TiDB体系 - 业务零感知运维 ## Ping++原数据架构及瓶颈  815ed87beb3fc1f49/p6_2.jpg) ## 场景二:聚合支付私有化部署方案 服务私有化部署的数据库要求: - 脱离云产品:DRDS • oltp+olap • 海量交易下的单表性能:分库分表? - 高可用:MHA? Innodb Cluster? • 监控、运维方式简单高效 ## 场景二:聚合支付私有化部署方案 ## 基于TiDB Docker的HTAP一站式方案0 码力 | 11 页 | 630.95 KB | 1 年前3
MongoDB入门指南ongoDB手册中Atomicity。 数据聚集 使用mongo命令行进行数据聚合 o 概述 按字段分组并计算总数 过滤并分组文档 使用mongo命令行进行数据聚合 概述 MongoDB可以执行数据聚合,比如按指定Key分组,计算总数,求不同分组的值。 使用 aggregate() 方法执行一个基于步骤的聚合操作(类似于Linux管道)。 aggregate() 接收一个步骤数组成为它的参数,每个步骤描述对数据处理的操作。0 码力 | 29 页 | 735.15 KB | 1 月前3
1. Machine Learning with ClickHouse0 码力 | 64 页 | 1.38 MB | 2 年前3
0. Machine Learning with ClickHouse 0 码力 | 64 页 | 1.38 MB | 2 年前3
Apache Doris 在美团外卖数仓中的应用实践关于Doris的更多技术细节,可参考其官方文档。 ## Doris的特点: • 同时支持高并发点查询和高吞吐的Ad-hoc查询。 • 同时支持离线批量导入和实时数据导入。 • 同时支持明细和聚合查询。 • 兼容MySQL协议和标准SQL。 - 支持Rollup Table和Rollup Table的智能查询路由。 - 支持较好的多表Join策略和灵活的表达式查询。 • 支持Schema在线变更。 显然,上面的计算方式,当数据量越来越大,到几十亿几百亿时,使用的IO资源、CPU资源、内存资源、网络资源会变得越来越多,查询也会变得越来越慢。 于是我们在Doris中新增了一种Bitmap聚合指标,数据导入时,相同维度列的数据会使用Bitmap聚合。有了Bitmap后,Doris中计算精确去重的方式如下: 可以看到,当使用Bitmap之后,之前的PV计算过程会大幅简化,现场查询时的IO、CPU、内存,网络资源也会显0 码力 | 8 页 | 429.42 KB | 2 年前3
领域驱动设计&中台/DDD实践中的那些坑DDD的核心是领域模型吗? 应该全面采用DDD战术建模吗? 具有生命周期绑定的主从关系对象就是聚合吗?  ## 内容大纲 • 战略的坑 - 分析的坑 - 限界上下文的坑 • 聚合的坑 • 仓储的坑 ## 战略的坑 ## 无差别地全面采用DDD战术建模 5e32a8af9b45925f095fdae/p11_2.jpg) 用例模型的操作 领域模型的结构 完整现实的样子 理由一:会有很多用不上的属性和方法,产生不必要的复杂性 理由二:聚合的大小等同于原子不变性约束的边界大小,这与现实世界概念模型的边界也是不一致的 ## 作茧自缚的抽象  超过“Two Pizza”,你的UL规模会很难hold住 ## 聚合的坑 ## 过大的聚合 开始事务 一致性边界=聚合边界 AGR DO1 结束事务 DO2 大聚合带来的问题: • 数据难以分离和扩容 • 性能问题 • 并发冲突问题 ## 如果: AGR存在属性X DO1存在属性Y DO2存在属性Z0 码力 | 28 页 | 2.09 MB | 2 年前3
数字货币交易系统架构 Python实现 黄毅9613708a3c2/p9_2.jpg) ## 交易系统架构设计-关键点 • 内存撮合服务的状态持久化和高可用 消息处理顺序的保证 • 异步服务之间消息传送的可靠性 • K线:实时的分组聚合操作 • 高效利用关系数据库  ## nts/0/1/a/3/01a3b6e6a4062a56456d19613708a3c2/p12_2.jpg) ## 交易系统架构设计-计算K线 ### - 实现为Redis Module的流式聚合组件(https://github.com/cryptorelay/redis-aggregation) $ redis-cli > agg.new agg{btc_usdt} time price0 码力 | 24 页 | 799.65 KB | 2 年前3
Zabbix 5.0 Manual. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1517 5 聚合图形 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . key。 值 模 式 是 通 配 符 表 达 式, 支 持 “ *” 字 符 以 匹 配 任 意 数 量 的 任 何 字 符。 可 以 结 合 DenyKey 定 义 多 个 值 的 匹 配 规 则。 根 据 其 出 现 顺 序 对 192 参数必 项范围 默认值 描述 AllowRoot 否 许 代 理 以 “root” 身 份 运 行。 如 果 禁 用 并 且 代 理 由 “root” 启 动, 值 模 式 是 通 配 符 表 达 式, 支 持 “ *” 字 符 以 匹 配 任 意 数 量 的 任 何 字 符。 可 以 结 合 Al- lowKey 定 义 多 个 值 的 匹 配 规 则。 根 据 其 出 现 顺 序 196 参数必 项范围 默认值 描述 EnableRemoteCommands 否 否 允 许 来 自 Zab- bix server 的 远 程 命 令。 从 Zab-0 码力 | 2715 页 | 28.60 MB | 2 年前3
微服务架构与领域驱动设计 - 王磊一个对象通过ID被唯一标识 Value Object - 值对象 - 通过值确定对象的等价性 Repository - 存储机制 Aggregate - 聚合(根) • 一组实体对象和值对象的集合 - 外部对聚合的访问通过聚合根 Factories - 对象工厂 Domain Services - 业务逻辑 ## 领域驱动设计的架构  Effective: 可以让实践者在数小时内理解复杂业务模型 Engaging: 带着问题的和拥有答案的人一起来构建模型 Efficient: 能快速发现界限上下文以及相关的聚合根等  Alberto Brandolini 寻找命令 谁引起的?  寻找聚合 通过什么产生? 划分子域&界限上下文 












