数据仓库: 6- 数据仓库分层

news/2024/9/17 7:33:35/ 标签: 数据仓库, 大数据

目录

    • 6- 数据仓库分层
      • 6.1 简介
      • 6.2 ODS(操作数据存储)层
        • 6.2.1 ODS 层的主要功能
        • 6.2.2 ODS 层的特点
        • 6.2.3 ODS 层的设计要点
        • 6.2.4 ODS 层的应用场景
        • 6.2.5 总结
      • 6.3 DWD(数据明细)层
        • 6.3.1 DWD 层的主要功能
        • 6.3.2 DWD 层的特点
        • 6.3.3 DWD 层的设计要点
        • 6.3.4 DWD 层的应用场景
        • 6.3.5 总结
      • 6.4 DWS(数据服务)层
        • 6.4.1 DWS 层的主要功能
        • 6.4.2 DWS 层的特点
        • 6.4.3 DWS 层的设计要点
        • 6.4.4 DWS 层的应用场景
        • 6.4.5 总结
      • 6.5 ADS(应用数据服务)层
        • 6.5.1 ADS 层的主要功能
        • 6.5.2 ADS 层的特点
        • 6.5.3 ADS 层的设计要点
        • 6.5.4 ADS 层的应用场景
        • 6.5.5 总结
      • end

6- 数据仓库分层

数据仓库分层是数据仓库建设中的一种数据组织和管理方法, 它将数据仓库中的数据按照不同的处理粒度和业务规则划分为多个层次, 每一层都有明确的数据结构和数据含义, 并向上层提供服务 ;

6.1 简介

6.1.1 数据仓库分层的优势
  • 清晰的数据结构: 分层结构使得数据仓库的数据组织更加清晰, 易于理解和维护 ;
  • 提高数据质量: 不同层次的数据经过不同的处理和校验, 可以有效提高数据质量 ;
  • 简化数据处理: 分层结构可以将复杂的业务逻辑分解到不同的层次, 简化数据处理流程 ;
  • 提高开发效率: 分层结构可以提高代码复用率, 降低开发成本, 提高开发效率 ;
  • 支持多种应用场景: 不同层次的数据可以满足不同业务部门和应用场景的需求 ;
6.1.2 常见的数据仓库分层模型
6.1.2.1 四层模型
  • ODS层 (Operation Data Store, 操作数据存储层): 存储原始业务数据, 数据结构与业务系统保持一致, 不做任何清洗和转换, 数据粒度最细 ;
  • DWD层 (Data Warehouse Detail, 数据仓库明细层): 对 ODS 层数据进行清洗、转换、去重、规范化等操作, 并进行轻度聚合, 数据粒度与 ODS 层一致 ;
  • DWS层 (Data Warehouse Service, 数据仓库服务层): 对 DWD 层数据进行主题 oriented 的汇总和绝活, 构建面向业务主题的数据模型, 数据粒度较粗 ;
  • ADS层 (Application Data Service, 应用数据服务层): 储存面向具体应用场景的数据, 例如报表数据、分析模型数据等, 数据粒度最粗 ;
6.1.2.2 三层模型
  • 数据源层: 相当于四层模型中的 ODS 层 ;
  • 数据仓库层: 相当于四层模型中的 DWD 层和 DWS 层 ;
  • 应用层: 相当于四层模型中的 ADS 层 ;
6.1.3 数据仓库分层原则
  • 高内聚低耦合: 每一层的数据模型应该高度内聚, 不同层次之间的数据依赖关系应该尽可能降低 ;
  • 数据不可回流: 数据应该按照层次逐层向上流动, 避免数据混乱和冗余 ;
  • 数据以主题划分: 数据仓库层的数据应该按照业务主题划分, 例如客户主题、商品主题、订单主题等 ;
  • 数据粒度逐渐降低: 数据从 ODS 层到 ADS 层, 数据粒度应该逐渐降低, 聚合程度逐渐提高 ;
6.1.4 数据仓库分层示例

以电商平台为例, 数据仓库分层可以如下设计:

  • ODS层: 存储用户行为日志、订单数据、商品数据等原始数据 ;
  • DWD层: 对 ODS 层数据进行清洗和转换, 例如清洗用户行为日志中的无效数据, 将订单数据和商品数据关联起来登 ;
  • DWS层: 构建用户主题、商品主题、订单主题等数据模型, 例如用户主题包含用户的基本信息、购买行为、活跃度等指标 ;
  • ADS层: 存储面向不同应用场景的数据, 例如报表数据、用户画像数据、推荐系统数据等 ;
6.1.5 总结

数据仓库分层是数据仓库设计中的一种重要方法, 它可以帮助企业更好地组织和管理数据, 提高数据质量, 简化数据处理, 提高开发效率, 支持多种应用场景 ; 在实际应用中, 需要根据企业的具体情况选择合适的分层模型和设计原理 ;

6.2 ODS(操作数据存储)层

ODS 层, 全称 Operation Data Store, 即操作数据存储层, 是数据仓库架构中的第一层, 也是最接近数据源的一层 ; 它扮演者数据仓库的 “数据准备区” 角色, 为数据仓库提供高质量、一致性和易用性的原始数据 ;

6.2.1 ODS 层的主要功能
  • 数据落地: ODS 层的首要任务是将业务系统产生的原始数据, 以最新接近实时的方式同步到数据仓库中 ; 这保证了数据仓库拥有最新的业务数据, 为后续的数据处理和分析提供基础 ;
  • 数据备份: ODS 层相当于原始数据的备份, 及时业务系统出现故障, 数据仓库也能利用 ODS 层的数据进行回复, 保证数安全 ;
  • 数据清洗和预处理: ODS 层可以进行一些简单的数据清洗和预处理工作, 例如去除无效数据、格式转换、空值处理等, 为后续的数据处理减轻负担 ;
  • 数据规范化: ODS 层可以对不同数据源的数据进行规范化处理, 例如统一编码规则、数据字段等, 消除数据的不一致, 提高数据质量 ;
6.2.2 ODS 层的特点
  • 数据结构与源系统一致: ODS 层的数据结构通常与业务系统的数据库结构保持一致, 不做过多的数据模型设计, 方便数据同步和理解 ;
  • 数据粒度最细: ODS 层存储的是最原始、最细粒度的业务数据, 不做任何聚合操作, 保留了数据的完整性和细节信息 ;
  • 数据实时性高: ODS 层的数据通常采用增量或实时同步方式进行更新, 保证数据仓库能够及时获取最新的业务数据 ;
  • 数据生命周期短: ODS 层的数据通常只保留较短的时间, 例如几天或几周, 主要用于支持短期的数据分析和业务监控 ;
6.2.3 ODS 层的设计要点
  • 选择合适的存储引擎: ODS 层的数据量通常较大, 可以选择高性能的列式存储引擎, 例如 ClickHouse、Druid 等, 提高数据查询效率 ;
  • 设计合理的分区策略: 根据业务数据的特点, 设计合理的分区策略, 例如按照时间、业务类型进行分区, 方便数据管理和查询优化 ;
  • 建立数据质量监控机制: 对 ODS 层的数据质量进行监控, 例如监控数据延迟、数据完整性、数据准确性等指标, 及时发现和解决数据质量问题 ;
6.2.4 ODS 层的应用场景
  • 实时数据分析: ODS 层的数据可以用于构建实时报表、仪表盘等, 帮助企业实时监控业务运行状态 ;
  • 数据质量校验: ODS 层的数据可以作为数据质量校验的基准数据, 与其他数据源进行比对, 发现和解决数据质量问题 ;
  • 数据挖掘和机器学习: ODS 层的数据可以作为数据挖掘和机器学习的训练数据, 帮助企业发现业务规律和预测未来趋势 ;
6.2.5 总结

ODS 层是数据仓库的重要组成部分, 它为数据仓库提供高质量、一致性和易用性的原始数据, 是数据仓库建设的基础 ; 在设计和构建 ODS 层时, 需要根据企业的具体情况选择合适的技术方案和设计原则, 才能充分发挥 ODS 层的价值 ;

6.3 DWD(数据明细)层

DWD 层, 全称 Data Warehouse Detail, 即数据仓库明细层, 是数据仓库架构中的第二层, 位于 ODS 层之上 ;

它承接了 ODS 层的数据, 并对其进行更深入的清洗、转换、整合和规范化处理, 为上层的数据仓库服务层 (DWS) 和应用层 (ADS) 提供高质量、一致性和易于使用的数据 ;

6.3.1 DWD 层的主要功能
  • 数据清洗: 对 ODS 层的数据进行更精细的清洗, 例如去重、去除无效数据、处理异常值、填充缺失值等, 提高数据的准确性和一致性 ;
  • 数据转换: 将 ODS 层的数据转换为符合数据仓库模型的格式, 例如进行数据类型转换、编码转换、字段拆分合并等, 方便后续的数据分析和处理 ;
  • 数据整合: 将来自不同数据源的 ODS 层数据进行整合, 例如将用户数据、订单数据、商品数据等关联起来, 形成完整的业务视图 ;
  • 数据规范化: 对数据进行规范化处理, 例如统一数据字段、编码规则、命名规范等, 消除数据的不一致性, 提高数据的可理解和可维护性 ;
6.3.2 DWD 层的特点
  • 数据粒度与 ODS 层一致: DWD 层的数据粒度与 ODS 层保持一致, 仍然是最细粒度的业务数据, 但数据质量更高, 更易于使用 ;
  • 数据结构面向主题: DWD 层的数据通常按照业务主题进行组织, 例如用户主题、订单主题、商品主题等, 方便后续的数据分析和应用 ;
  • 数据冗余度低: DWD 层的数据经过清洗和整合, 冗余度较低, 可以节省存储空间, 提高查询效率 ;
  • 数据历史性: DWD 层的数据通常会保留较长的历史数据, 例如几个月甚至几年, 用于支持历史数据分析和趋势预测 ;
6.3.3 DWD 层的设计要点
  • 选择合适的数据模型: 根据业务需求和数据特点, 选择合适的数据模型, 例如星型模型、雪花模型等, 方便数据查询和分析 ;
  • 设计合理的数据分区: 根据数据质量和查询模型, 设计合理的数据分区策略, 例如按照时间、业务类型等进行分区, 提高数据查询效率 ;
  • 建立数据质量监控机制: 对 DWD 层的数据质量进行监控, 例如监控数据完整性、数据准确性、数据一致性等指标, 及时发现和解决数据质量问题 ;
6.3.4 DWD 层的应用场景
  • 构建数据仓库服务层: DWD 层的数据是构建数据仓库服务层 (DWS) 的基础, DWS 层可以基于 DWD 层的数据进行更复杂的聚合和分析 ;
  • 支持复杂的数据分析: DWD 层的数据可以用于支持各种复杂的数据分析, 例如用户行为分析、商品销售分析、风险控制等 ;
  • 构建数据挖掘和机器学习模型: DWD 层的数据可以作为数据挖掘和机器学习的训练数据, 帮助企业发现业务规律和预测未来趋势 ;
6.3.5 总结

DWD 层是数据仓库中承上启下的重要环境, 它对 ODS 从哪儿给的数据进行深度加工, 为上层应用提供高质量、一致性和易于使用的数据 ;

在设计和构建 DWD 层时, 需要根据企业的具体情况选择合适的技术方案和设计原则, 才能充分发挥 DWD 层的价值 ;

6.4 DWS(数据服务)层

DWS 层, 全称 Data Warehouse Service, 即数据仓库服务层, 是建立在 DWD 层之上的数据仓库层级 ;

它面向具体的业务分析需求, 对 DWD 层的数据进行主题 oriented 的汇总、聚合和轻度维度建模, 提供高性能、易于理解和使用的分析数据服务 ;

6.4.1 DWS 层的主要功能
  • 主题 oriented 的数据整合: DWS 层根据具体的业务分析需求, 将 DWD 层中多个主题的数据进行关联和整合, 例如将用户主题、订单主题、商品主题等数据整合到一起, 形成更完整的业务视图 ;
  • 多维度数据聚合: DWS 层 对 DWD 层的数据进行多维度的汇总和聚合, 例如按照时间、地区、产品等维度对销售数据进行汇总, 方便用户进行多角度的业务分析 ;
  • 轻维度建模: DWS 层会进行轻度维度建模, 例如创建一些常用的维度表和事实表, 但不会像 Kimball 模型那样进行完整的维度建模, 以保持较高的数据处理效率 ;
  • 数据预计算: DWS 层可以预先计算一些常用的指标和报表数据, 例如日活跃数、月销售额等, 提高数据查询效率, 缩短数据分析时间 ;
6.4.2 DWS 层的特点
  • 面向业务主题: DWS 层的数据组织和结构式面向具体的业务分析主题的, 例如用户分析、商品分析、销售分析等, 方便用户快速找到所需的数据 ;
  • 数据粒度较粗: DWS 层的数据粒度比 DWD 层更粗, 通常是按照业务分析的需求进行聚合的, 例如按照天、周、月等时间维度进行聚合 ;
  • 数据冗余度较高: 为了提高查询效率, DWS 层会存储一些冗余数据, 例如预计算的指标和报表数据, 但冗余度通常在可控范围内 ;
  • 数据实时性要求不高: DWS 层的数据通常不需要像 ODS 层和 DWD 层那样实时更新, 可以根据业务需求选择合适的更新频率, 例如每天更新一次或每周更新一次 ;
6.4.3 DWS 层的设计要点
  • 明确业务分析需求: 在设计 DWS 层之前, 需要明确具体的业务分析需求, 例如需要分析哪些指标、需要从那些维度进行分析等, 才能设计出符合需求的数据模型和数据处理流程 ;
  • 选择合适的聚合粒度: 根据业务分析需求和数据量, 选择合适的聚合粒度, 例如如果需要分析每天的销售趋势, 则可以按照天维度进行聚合 ;
  • 设计合理的维度模型: 根据业务分析需求, 设计合理的维度模型, 例如星型模型、雪花模型等, 方便数据查询和分析 ;
  • 优化数据处理效率: DWS 层的数据处理量通常较大, 需要优化数据处理效率, 例如使用高效的 SQL 语句、选择合适的存储引擎、建立索引等 ;
6.4.4 DWS 层的应用场景
  • 构建报表和仪表盘: DWS 层的数据可以用于构建各种报表和仪表盘, 例如销售报表、用户行为报表等, 帮助企业监控业务运行状态, 发现业务问题 ;
  • 支持 ad-hoc(即席查询) 查询: DWS 层的数据可以支持 ad-hoc 查询, 即用户可以根据自己的需求灵活地查询数据, 进行探索性数据分析 ;
  • 构建数据挖掘和机器学习模型: DWS 层的数据可以作为数据挖掘和机器学习的训练数据, 帮助企业发现业务规律和预测未来趋势 ;
6.4.5 总结

DWS 层是数据仓库中面向业务分析的核心层级, 它对 DWD 层的数据进行主题 oriented 的汇总、聚合和轻度维度建模, 提供高性能、易于理解和使用的分析数据服务;

在设计和构建 DWS 层时, 需要根据企业的具体情况选择合适的技术方案和设计原则, 才能充分发挥 DWS 层的价值 ;

6.5 ADS(应用数据服务)层

ADS 层, 全称 Application Data Service, 即应用层数据服务, 是数据仓库架构的最顶层, 直接面向业务应用和数据分析需求 ;

它基于 DWS 层的数据, 进行高度聚合、指标预计算、数据裁剪和格式转换等操作, 为报表工具、分享平台、机器学习模型等提供高性能、易于使用的数据服务 ;

6.5.1 ADS 层的主要功能
  • 高度聚合和指标预计算: ADS 层针对具体的应用场景, 对 DWS 层的数据进行高度聚合和指标预计算, 例如计算销售额、用户留存率等常用的指标, 并将结果存储到 ADS 层, 以提高查询效率 ;
  • 数据裁剪和格式转换: ADS 层根据不同应用的需求, 对 DWS 层的数据进行裁剪和格式转换, 例如只保留报表所需的字段, 将数据转换为 JSON 或 CSV 格式等, 以减少数据传输量, 提高数据加载速度 ;
  • 构建数据集市: ADS 层可以根据不同的业务部门或应用场景, 构建多个数据集市, 每个数据集市只包含特定主题的数据, 例如用户数据集市、商品数据集市等, 方便用户快速找到所需的数据 ;
  • 提供数据 API 接口: ADS 层可以将数据封装成 API 接口, 供其他应用系统调用, 例如报表工具可以通过 API 接口获取 ADS 层的数据, 进行报表展示 ;
6.5.2 ADS 层的特点
  • 面向应用场景: ADS 层的数据组织和结构式面向具体的应用场景的, 例如报表展示、数据分析、机器学习等, 方便应用快速获取所需的数据 ;
  • 数据粒度最粗: ADS 层的数据粒度比 DWS 层更粗, 通常是高度聚合后的指标数据, 例如总销售额、平均订单金额等 ;
  • 数据冗余度最高: 为了提高查询效率, ADS 层会存储大量冗余数据, 例如预计算的指标、不同维度的数据汇总等, 但冗余度通常在可控范围内 ;
  • 数据实时性要求最高: ADS 层的数据通常需要满足较高的实时性要求, 例如报表数据需要实时更新, 以反应最新的业务情况 ;
6.5.3 ADS 层的设计要点
  • 深入理解应用需求: 在设计 ADS 层之前, 需要深入理解应用的需求, 例如需要那些指标、需要从那些维度进行分析、需要多高的数据实时性等, 才能设计出符合需求的数据模型和数据处理流程 ;
  • 选择合适的存储引擎: ADS 层的数据查询通常需要较高的性能, 可以选择高性能的列式存储引擎、内存数据库等, 例如 ClickHouse、Druid、Redis等 ;
  • 优化数据访问方式: ADS 层的数据通常会被频繁访问, 需要优化数据访问方式, 例如建立索引、使用缓存等, 以提高数据查询效率 ;
  • 保障数据安全: ADS 层的数据通常是企业的核心数据资产, 需要保障数据安全, 例如设置访问权限、数据加密等 ;
6.5.4 ADS 层的应用场景
  • 报表展示: ADS 层的数据可以用于构建各种报表, 例如销售报表、用户行为报表等, 帮助企业监控业务运行状态, 发现业务问题 ;
  • 数据可视化: ADS 层的数据可以用于构建数据可视化平台, 例如使用 Tableau、Power BI 等工具, 将数据以图表形式展示出来, 帮助用户更直观地理解数据 ;
  • 机器学习模型训练和应用: ADS 层的数据可以作为机器学习模型的训练数据, 例如构建用户画像模型、推荐系统模型等, 帮助企业实现精准营销、个性化推荐等目标 ;
6.5.5 总结

ADS 层是数据仓库中面向应用的顶层, 它对 DWS 层的数据进行高度聚合、指标预计算、数据裁剪和格式转换等操作, 为报表工具、分析平台、机器学习模型等提供高性能、易于使用的数据服务 ;

在设计和构建 ADS 层时, 需要根据企业的具体情况选择合适的技术方案和设计原则, 才能充分发挥 ADS 层的价值 ;

end


http://www.ppmy.cn/news/1521988.html

相关文章

PHP批量修改MySQL数据表字符集为utf8mb4/utf8mb4_unicode_ci

编码大全 可参考我之前的文章: 快速理解ASCII、GBK、Unicode、UTF-8、ANSI 批量修改 注意这是DDL操作,操作过程会锁表(元数据锁),平均1秒能够转码3张表(数据量不大)。 亲测操作过后没有数据异…

内网隧道:端口转发

目录 LCX端口转发 场景一 场景二 SSH的端口转发 一、本地转发(正向访问A): 二、远程转发(反向访问A) 三.NETSH端口转发 端口转发和端口映射 端口转发,有时被称为做隧道,是安全壳( SSH)为网络安全通信使用的一种方…

[物理专题]经典浮力题目的Fh图像绘制

这段代码用于绘制物体在液体中受到的浮力变化的图像,它有多个好处: 直观展示数据:通过图形化展示,可以直观地看到物体在液体中浸入深度与受到的浮力之间的关系。 教育和学习工具:这种类型的图像常用于教育目的&#x…

tugraph在Ubuntu 20.04上安装

参考文档: https://tugraph-db.readthedocs.io/zh-cn/latest/5.installation%26running/7.tugraph-running.html 介质下载: Releases TuGraph-family/tugraph-db GitHub 安装记录: rootnode11:~# ll total 466780 drwx------ 8 root r…

Unity(2022.3.41LTS) - UI详细介绍- Toggle(切换)

目录 零.简介 一、基本功能 二、属性和设置 三、使用方法 四、优化和注意事项 零.简介 在 Unity 中,Toggle 是一种常用的 UI 组件,用于表示一个布尔值的状态,类似于复选框。 一、基本功能 状态切换:Toggle 有两种状态&…

Java重修笔记 第四十八天 TreeSet 类、TreeMap 类

TreeSet 类 1. TreeSet 底层是 TreeMap 2. 使用默认构造器创建的 TreeSet 对象,添加顺序和取出顺序不是有序的 3. 如果添加的是字符串或数字,它们默认会按照字母顺序或数值顺序进行排序 4. 可以在构造器中传入一个 Comparator 比较器来手动制定比较…

【最新整理】大佬都在用的10款3DMax建筑插件!

在3Dmax建筑领域中,有许多受欢迎的插件能够大大提升设计师的工作效率和创作质量。以下是10款被广泛应用且备受推崇的3Dmax建筑插件: 1.Building(建筑设计插件) 3DMAX参数化建筑建模插件Building,一键生成各种自定义参…

机器人外呼有哪些优势?

机器人外呼,作为一种结合了计算机技术和人工智能技术的自动化工具,具有多重显著优势。以下是其主要优势的详细阐述: ### 1. 高效性 * **大幅提升工作效率**:机器人外呼可以全天候、不间断地进行工作,不受时间、地点和…

Fréchet Inception Distance(FID)原理

原理概述: FID 的核心思想是通过比较真实图像和生成图像在 Inception 模型特征空间中的分布差异,来评估生成模型的性能。它假设从真实数据和生成数据中提取的特征都近似服从高斯分布。 具体步骤: 特征提取:使用预训练的 Incepti…

ansible--yaml

语法 #列表 fruits:-Apple-Orange-banada########################################### fruits顶格写,下面的参数空两个空格,必须得对齐 #字典martin: name: Mysqlenvironoment: dd################################ 第一行的冒号号有空格,…

【网络安全】CSRF漏洞—CSRF基础漏洞防御

CSRF(Cross-Site Request Forgery,跨站请求伪造)是一种常见的网络安全攻击手段,它利用用户已经认证的身份,通过第三方网站诱导用户点击链接或提交表单,从而在用户不知情的情况下,以用户的名义执…

redis分布式锁和lua脚本

业务场景:多个线程对共同资源的访问:库存超卖/用户重复下单的原因 解决方法一:利用jvm内置锁,将非原子性操作变成原子性操作 Synchronized锁的是对象,对象必须是单例的。锁的是this,代表当前所在的类,这个…

06_React ajax

React ajax 一、理解1、前置说明2、常用的 ajax 请求库浏览器插件推荐 二、axios1、跨域实际上是请求发出了,但是没有接收到数据。使用代理服务器进行解决2、React 脚手架配置代理2.1 前端项目在 package.json 中的文件添加配置,可以解决跨域2.2 方式二2…

工厂模式与策略模式(golang示例)

一、工厂模式简介 工厂模式是一种创建型设计模式,主要用于封装对象的创建过程。通过使用工厂模式,客户端代码无需直接实例化对象,而是通过工厂类来创建对象。这样可以将对象的创建与使用分离,从而提高代码的灵活性。 1.1 工厂模…

004: VTK读入数据---vtkImageData详细说明

VTK医学图像处理---vtkImageData类 目录 VTK医学图像处理---vtkImageData类 简介: 1 Mricro软件的安装和使用 (1) Mricro安装 (2) Mricro转换DICOM为裸数据 2 从硬盘读取数据到vtkImageData 3 vtkImageData转RGB或RGBA格式 4 练习 总结 简介:…

Dify 与 FastGPT 流程编排能力对比分析

Dify 与 FastGPT 流程编排能力对比分析 一、引言 在人工智能快速发展的今天,大语言模型(LLM)应用平台正在重塑各行各业的工作流程。其中,Dify 和 FastGPT 作为两款具有重要影响力的工具,凭借各自独特的流程编排能力&a…

SimD:基于相似度距离的小目标检测标签分配

摘要 https://arxiv.org/pdf/2407.02394 由于物体尺寸有限且信息不足,小物体检测正成为计算机视觉领域最具挑战性的任务之一。标签分配策略是影响物体检测精度的关键因素。尽管已经存在一些针对小物体的有效标签分配策略,但大多数策略都集中在降低对边界…

Faker在pytest中的应用

Faker在pytest中的应用主要体现在测试数据的准备上,通过生成逼真的伪数据来模拟真实场景,从而提高测试的覆盖率和可靠性。以下是一些具体的应用例子: 用户信息测试 在测试用户注册、登录等功能时,Faker可以生成大量的用户信息&a…

逻辑代数的基本定律,常用公式

目录 逻辑代数的基本定律 0-1律 同一律 互补律 还原律 交换律 结合律 分配律 摩根定理(反演律) 逻辑代数的常用公式 吸收律 冗余律 思考 异或运算的一些公式 逻辑代数的基本定律 最基本的与或非的运算。 0-1律 同一律 互补律 还原律 交…

统一NLP和目标检测的DETR(一)——self attention、encoder、decoder

主流目标检测算法劣势 YOLO系列,它基于anchor来做,少不了要用MNS,导致速度相对较慢。 但今天介绍一款DETR,基于VIT的目标检测算法。 那么我们需要先深入过一遍VIT。 Vision transform 1、传统RNN网络的问题 单向:只…