微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】
微软PowerBI考试 PL300-选择 Power BI 模型框架
20 多年来,Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据模型的核心。
Power BI 为你在设计模型时提供了一种选择。 你可以使用 Power BI Desktop 来开发模型,还可以使用不同的框架进行模型开发。 这些框架有助于提供强大的性能和/或准实时结果。
介绍 Power BI 模型基础知识
本单元介绍 Power BI 模型的术语。 必须理解这些术语才能为项目选择适当的模型框架。 本单元介绍以下术语:
数据模型
Power BI 数据集
分析查询
表格模型
星型架构设计
表存储模式
模型框架
数据模型
Power BI 数据模型是针对分析进行优化的可查询数据资源。 报表可以使用以下两种分析语言之一来查询数据模型:数据分析表达式 (DAX) 或多维表达式 (MDX)。 Power BI 使用 DAX,而分页报表可以使用 DAX 或 MDX。 “在 Excel 中分析”功能使用 MDX。
Power BI 数据集
在 Power BI Desktop 中开发 Power BI 模型并将其发布到 Power BI 服务中的工作区后,该模型称为数据集。 数据集是一个 Power BI 项目,它是 Power BI 报表和仪表板中可视化效果的数据源。
分析查询
Power BI 报表和仪表板必须查询某个数据集。 当 Power BI 可视化数据集数据时,它会准备并发送一个分析查询。 分析查询从模型生成查询结果,该结果很容易理解,尤其是以可视化的情况下。
分析查询包括按以下顺序执行的三个阶段:
筛选
分组
汇总
筛选(有时称为切片)将查询范围缩小为一部分模型数据。 筛选器值在查询结果中不可见。 大多数分析查询会应用筛选器,因为按时间段(通常还包括其他属性)进行筛选是常见的做法。 筛选以不同的方式发生。 在 Power BI 报表中,可以在报表、页面或视觉对象级别设置筛选器。 报表布局通常包括切片器视觉对象,以便筛选报表页面上的视觉对象。 当模型强制实施行级安全性 (RLS) 时,它会将筛选器应用于模型表以限制对特定数据的访问。 用于汇总模型数据的度量也可以应用筛选器。
分组(有时称为切块)将查询结果划分为组。 每个组也是一个筛选器,但与筛选阶段不同,筛选器值在查询结果中可见。 例如,按客户分组会按客户筛选每个组。
汇总生成单值结果。 通常,报表视觉对象使用聚合函数来汇总数字字段。 聚合函数包括 sum、count、minimum、maximum 等。 可以通过聚合列来实现简单汇总,也可以通过使用 DAX 公式创建度量来实现复杂汇总。
示例:Power BI 报表页面包含一个切片器,用于按一年时间段进行筛选。 其中还有一个柱形图视觉对象显示筛选年份的季度销售额。
在此示例中,切片器按 2021 日历年筛选视觉对象。 柱形图按季度(筛选年份)分组。 每一列是代表可见筛选器的组。 列高度代表筛选年份的每个季度的汇总销售值。
表格模型 Power BI 模型是一种表格模型。 表格模型由一个或多个包含列的表组成。 它还可以包含关系、层次结构和计算。
星型架构设计 若要生成优化且易于使用的表格模型,我们建议生成星型架构设计。 星型架构设计是由关系数据仓库广泛采用的成熟建模方法。 它要求将模型表分类为维度或事实。
维度表描述业务实体(即建模对象)。 实体可以包含产品、人员、地点和包括时间本身的概念。 事实数据表存储观测项或事件,例如,可以是销售订单、库存余量、汇率或温度读数。 事实数据表包含与维度表和数值度量值列相关的维度键列。 事实数据表构成了星形的核心,相关的维度表构成了星形的各个点。
在分析查询中,将会筛选或分组维度表列。 将汇总事实数据表列。
表存储模式
每个 Power BI 模型表(计算表除外)都有一个存储模式属性。 存储模式属性可以是“导入”、“DirectQuery”或“双重”,它决定了表数据是否存储在模型中。
导入 – 查询将检索模型中存储或缓存的数据。
DirectQuery – 查询将传递到数据源。
双重 – 查询将检索存储的数据,或传递到数据源。 Power BI 将确定最有效的计划,并尽可能使用缓存的数据。 模型框架
表存储模式设置决定了模型框架:导入、DirectQuery 或复合框架。 本模块中的以下单元介绍了上述每种框架,并提供了其用法指导。
导入模型包含存储模式属性设置为“导入”的表。
DirectQuery 模型包含存储模式属性设置为“DirectQuery”的表,这些表属于同一个源组。 本模块将在后面的部分介绍源组。
复合模型包含多个源组。
确定何时开发导入模型
导入模型包含存储模式属性设置为“导入”的表。 它还包含可以使用 DAX 公式定义的计算表。
导入模型的优势
导入模型是最常开发的模型框架,因为它们有许多优势。 导入模型:
支持所有 Power BI 数据源类型,包括数据库、文件、源、网页、数据流等。
可以集成源数据。 例如,一个表将关系数据库用作数据源,而相关的表将网页用作数据源。
支持所有 DAX 和 Power Query (M) 功能。
支持计算表。
提供最佳查询性能。 这是因为,模型中缓存的数据已针对分析查询(筛选、分组和汇总)进行优化,并且模型完全存储在内存中。
简而言之,导入模型提供最多的选项和最高的设计灵活性,同时提供优异的性能。 出于此原因,当你“获取数据”时,Power BI Desktop 默认将使用导入存储模式。
导入模型的限制
尽管导入模型有许多引人注目的优势,但也必须记住它的一些限制。 限制与模型大小和数据刷新有关。
模型大小
Power BI 施加数据集大小限制,以便限制模型的大小。 将模型发布到共享容量时,每个数据集的大小限制为 1-GB。 如果超过此大小限制,将无法刷新该数据集。 将模型发布到专用容量(也称为高级容量)时,如果为容量启用了大型数据集存储格式设置,该模型可以会增长到 10 GB 以上。
应始终努力减少表中存储的数据量。 此策略有助于减少模型刷新的持续时间并加快模型查询。 可以应用许多数据缩减技术,包括:
删除不必要的列
删除不必要的行
分组和汇总以提高事实数据表的粒度
优先使用数值数据,以优化列数据类型
优先使用 Power Query 中的自定义列,而不是模型中的计算列
禁用 Power Query 查询负载
禁用自动日期/时间
使用 DirectQuery 表存储,如本模块后面的单元中所述。
数据刷新
导入的数据必须定期刷新。 数据集数据的最新状态取决于上次成功刷新的时间。 若要使数据保持最新,可以设置计划数据刷新,或者报表使用者可以执行按需刷新。
Power BI 对计划刷新操作的执行频率施加限制。 在共享容量中每日最多可执行 8 次,在专用容量中每日最多可执行 48 次。
应该确定是否可以容忍这种延迟程度。 这种判定通常取决于数据的速度(或易变性),以及让用户知道当前数据状态的迫切性。 如果计划刷新限制不可接受,请考虑使用 DirectQuery 存储表或创建混合表。 也可以改用不同的方法,并创建实时数据集。
还必须考虑刷新工作负载和持续时间。 默认情况下,若要刷新某个表,Power BI 会删除所有数据,然后重新加载该表。 这些操作可能会给源系统带来不可接受的负担,尤其是对于大型事实数据表而言。 若要减轻这种负担,可以设置增量刷新功能。 增量刷新将自动化时段分区的创建和管理,并智能化地仅更新那些需要刷新的分区。
如果数据源支持增量刷新,则它可以更快、更可靠地实现刷新,并减少 Power BI 和源系统的资源消耗。
高级数据建模师可以自定义自己的分区策略。 自动化脚本可以创建、管理和刷新表分区。
确定何时开发 DirectQuery 模型
DirectQuery 模型包含存储模式属性设置为“DirectQuery”的表,这些表属于同一个源组。
源组是与数据源相关的一组模型表。 分为两种类型:
导入 – 表示所有导入存储模式表(包括计算表)。 一个模型中只能有一个导入源组。
DirectQuery – 表示与特定数据源相关的所有 DirectQuery 存储模式表。
DirectQuery 模型的优势
开发 DirectQuery 模型可以获得多项优势。
为大型或快速变化的数据源建模
当源数据表现出数量和/或速度方面的特征时,非常适合选择 DirectQuery 模型作为框架。 由于 DirectQuery 表不需要刷新,因此它们很适合用于大型数据存储,例如数据仓库。 将整个数据仓库导入到模型是不切实际且低效的做法,甚至根本做不到。 当源数据快速变化而用户需要查看最新数据时,DirectQuery 模型可以提供准实时的查询结果。
当报表查询 DirectQuery 模型时,Power BI 会将这些查询传递到基础数据源。
强制实施源 RLS
当源数据库强制实施行级安全性 (RLS) 时,DirectQuery 也很有用。 源数据库不会在 Power BI 模型中复制 RLS 规则,而是强制实施其规则。 此方法仅适用于某些关系数据库,它涉及到为数据集数据源设置单一登录。
数据主权限制
如果你的组织实施了限制数据离开所在地的安全策略,则无法导入数据。 可能适合使用连接到本地数据源的 DirectQuery 模型。 (也可以考虑安装 Power BI 报表服务器用于本地报告。)
创建专用数据集
通常,DirectQuery 模式支持关系数据库源。 这是因为,Power BI 必须将分析查询转换为数据源可以理解的本机查询。
但是,可以采用一种非常有效的替代做法。 你可以连接到 Power BI 数据集(或 Azure Analysis Services 模型),并将其转换为 DirectQuery 本地模型。 本地模型是描述一个模型与另一个模型的关系的相关术语。 在这种情况下,原始数据集是远程模型,新数据集是本地模型。 这些模型链接在一起,“链接”是用于描述相关模型的术语。 通过这种方式,最多可以链接三个模型。
这种链接模型的功能支持个性化和/或扩展远程模型的潜力。 可以执行的最简单操作是将对象(例如表或列)重命名,或者向本地模型添加度量。 还可以使用计算列或计算表来扩展模型,或者添加新的导入表或 DirectQuery 表。 但是,这些扩展会导致创建新的源组,这意味着,模型将变成复合模型。
DirectQuery 模型限制
必须记住与 DirectQuery 模型相关的许多限制。 主要限制如下:
并非所有数据源都受支持。 通常,仅支持主要关系数据库系统。 也支持 Power BI 数据集和 Azure Analysis Services 模型。
并非可以执行所有 Power Query (M) 转换,因为这些查询必须转换为源系统可以理解的本机查询。 因此,举例来说,无法使用透视或逆透视转换。
分析查询性能可能不佳,尤其是在源系统未优化(使用索引或具体化视图)或分析工作负载的资源不足的情况下。
分析查询可能会影响源系统的性能。 这可能导致所有工作负载(包括 OLTP 操作)的体验变慢。
提升 DirectQuery 模型性能
如果你有理由开发 DirectQuery 模型,可以通过两种方式来缓解一些限制。
数据源优化
可以优化源数据库,以确保预期的分析查询工作负载性能良好。 具体而言,可以创建索引和具体化视图,并确保数据库为所有工作负载提供足够的资源。
DirectQuery 用户定义的聚合表
可将用户定义的聚合表添加到 DirectQuery 模型。 用户定义的聚合表是隐藏的特殊模型表(来自用户、计算和 RLS)。 如果它们满足针对大型事实数据表执行的较高粒度的分析查询,则它们可以发挥最大的作用。 将聚合表设置为使用 DirectQuery 存储模式后,它可以查询数据源中的具体化视图。 还可以将聚合表设置为使用导入存储模式或启用自动聚合。
确定何时开发复合模型
复合模型包含多个源组。 通常,始终存在导入源组和 DirectQuery 源组。
复合模型的优势
开发复合模型可以获得多项优势。
复合模型提供设计灵活性。 你可以选择使用不同的存储模式来集成数据,并在导入的数据与直通数据之间取得适当的平衡。 通常,对大型数据源使用 DirectQuery 表并通过导入的表提升查询性能,可以使企业模型受益。 本单元稍后将介绍支持此方案的 Power BI 功能。
复合模型还能使 Power BI 有机会通过导入的数据来满足某些分析查询的需求,从而提升 DirectQuery 模型的性能。 查询缓存数据的性能几乎始终比直通查询更好。
最后,当你的模型包含远程模型的 DirectQuery 表(例如 Power BI 数据集)时,你可以使用新的计算列和表来扩展自己的模型。 它会基于核心模型生成专用模型。
复合模型的限制
有几项限制与复合模型相关。
导入(或稍后所述的“双重”)存储模式表仍然需要定期刷新。 导入的数据可能与 DirectQuery 源数据失去同步,因此定期刷新这些数据非常重要。
当分析查询必须合并导入的数据和 DirectQuery 数据时,Power BI 必须合并源组查询结果,这可能会影响性能。 为了帮助避免较高粒度的查询出现这种情况,可将导入聚合表添加到模型(或启用自动聚合),并将相关维度表设置为使用双重存储模式。 本单元稍后将介绍此方案。
链接模型(将 DirectQuery 链接到 Power BI 数据集)时,对上游模型所做的修改可能会破坏下游模型。 请务必先执行 数据集影响分析 来评估修改的影响。
不同源组中的表之间的关系称为受限关系。 如果没有保证的“一”端(“一”端表示列包含唯一值,则模型关系被视为有限;“多”侧表示该列可以包含重复值)。这种情况可能发生在两种情况下。 第一种情况是在关系使用多对多基数类型时发生的,即使一列或两列包含独一无二的值也是如此。 第二种情况是关系跨越不同的源组,这仅在复合模型中发生。 受限关系可能会导致以不同的方式评估模型查询和计算。
通过导入的数据提升 DirectQuery 模型性能
如果你有理由开发 DirectQuery 模型,可以使用涉及到导入表的特定 Power BI 功能来缓解一些限制。
导入聚合表
可以添加导入存储模式用户定义的聚合表或启用自动聚合。 这样,Power BI 会将较高粒度的事实查询定向到缓存的聚合。 若要进一步提升查询性能,请确保相关维度表设置为使用双重存储模式。
自动聚合是一项高级功能。
双重存储模式
双重存储模式表设置为同时使用导入存储模式和 DirectQuery 存储模式。 在查询时,Power BI 将确定可用的最有效模式。 只要有可能,Power BI 就会尝试使用缓存数据来满足分析查询的需求。
双重存储模式表可以很好地与导入聚合表配合工作。 它们使得 Power BI 能够完全从缓存数据满足较高粒度的查询的需求。
通常基于维度表列的切片器视觉对象和筛选器卡片列表可以更快地呈现,因为它们是从缓存数据查询的。
从导入模型提供实时数据
使用增量刷新设置导入表时,可以启用“使用 DirectQuery 实时获取最新数据”选项。
启用此选项后,Power BI 会自动创建一个使用 DirectQuery 存储模式的表分区。 在这种情况下,该表将变为混合表,这意味着,它具有用于存储旧数据的导入分区,以及用于存储当前数据的单个 DirectQuery 分区。
当 Power BI 查询混合表时,查询将为旧数据使用缓存,并直通到数据源以检索当前数据。
只能通过高级许可证使用此选项。
选择模型框架
下面提供了有关为项目选择适当模型框架的一般指导。 这些指导特别适合用于数据量较大、查询吞吐量较高、且快速响应非常重要的企业解决方案。
最重要的是,应该尽可能选择导入模型框架。 此框架提供最多的选择、设计灵活性和快速性能。 请务必应用数据缩减技术,以确保 Power BI 加载尽可能少的数据。
如果你的数据源存储大量数据和/或报表需要提供准实时数据,请选择 DirectQuery 模型框架。
选择复合模型框架可以:
提升 DirectQuery 模型的查询性能。
从导入模型提供准实时的查询结果。
使用其他数据扩展 Power BI 数据集(或 AAS 模型)。
可以使用聚合表(它们可以使用导入存储模式或 DirectQuery 存储模式)来提升 DirectQuery 模型的查询性能。 使用导入聚合表时,请务必设置相关维度表以使用双重存储模式。 这样,Power BI 就可以完全通过缓存来满足较高粒度的查询的需求。
可以通过创建混合表从导入模型中提供准实时的查询结果。 在这种情况下,Power BI 将为当前时段添加一个 DirectQuery 分区。
最后,可以使用 DirectQuery 通过链接到核心模型来创建专用模型。 这种类型的开发通常由业务分析师完成,他们扩展核心模型,而 IT 人员则会交付这些模型并为其提供支持。
欢迎留言讨论~
相关文章:

微软PowerBI考试 PL300-选择 Power BI 模型框架【附练习数据】
微软PowerBI考试 PL300-选择 Power BI 模型框架 20 多年来,Microsoft 持续对企业商业智能 (BI) 进行大量投资。 Azure Analysis Services (AAS) 和 SQL Server Analysis Services (SSAS) 基于无数企业使用的成熟的 BI 数据建模技术。 同样的技术也是 Power BI 数据…...

【人工智能】神经网络的优化器optimizer(二):Adagrad自适应学习率优化器
一.自适应梯度算法Adagrad概述 Adagrad(Adaptive Gradient Algorithm)是一种自适应学习率的优化算法,由Duchi等人在2011年提出。其核心思想是针对不同参数自动调整学习率,适合处理稀疏数据和不同参数梯度差异较大的场景。Adagrad通…...

Xshell远程连接Kali(默认 | 私钥)Note版
前言:xshell远程连接,私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする
日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...

Zustand 状态管理库:极简而强大的解决方案
Zustand 是一个轻量级、快速和可扩展的状态管理库,特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...

盘古信息PCB行业解决方案:以全域场景重构,激活智造新未来
一、破局:PCB行业的时代之问 在数字经济蓬勃发展的浪潮中,PCB(印制电路板)作为 “电子产品之母”,其重要性愈发凸显。随着 5G、人工智能等新兴技术的加速渗透,PCB行业面临着前所未有的挑战与机遇。产品迭代…...

Unity3D中Gfx.WaitForPresent优化方案
前言 在Unity中,Gfx.WaitForPresent占用CPU过高通常表示主线程在等待GPU完成渲染(即CPU被阻塞),这表明存在GPU瓶颈或垂直同步/帧率设置问题。以下是系统的优化方案: 对惹,这里有一个游戏开发交流小组&…...

Appium+python自动化(十六)- ADB命令
简介 Android 调试桥(adb)是多种用途的工具,该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具,其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利,如安装和调试…...
React Native 开发环境搭建(全平台详解)
React Native 开发环境搭建(全平台详解) 在开始使用 React Native 开发移动应用之前,正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南,涵盖 macOS 和 Windows 平台的配置步骤,如何在 Android 和 iOS…...

工业安全零事故的智能守护者:一体化AI智能安防平台
前言: 通过AI视觉技术,为船厂提供全面的安全监控解决方案,涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面,能够实现对应负责人反馈机制,并最终实现数据的统计报表。提升船厂…...

黑马Mybatis
Mybatis 表现层:页面展示 业务层:逻辑处理 持久层:持久数据化保存 在这里插入图片描述 Mybatis快速入门 
从WWDC看苹果产品发展的规律
WWDC 是苹果公司一年一度面向全球开发者的盛会,其主题演讲展现了苹果在产品设计、技术路线、用户体验和生态系统构建上的核心理念与演进脉络。我们借助 ChatGPT Deep Research 工具,对过去十年 WWDC 主题演讲内容进行了系统化分析,形成了这份…...

【WiFi帧结构】
文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成:MAC头部frame bodyFCS,其中MAC是固定格式的,frame body是可变长度。 MAC头部有frame control,duration,address1,address2,addre…...
模型参数、模型存储精度、参数与显存
模型参数量衡量单位 M:百万(Million) B:十亿(Billion) 1 B 1000 M 1B 1000M 1B1000M 参数存储精度 模型参数是固定的,但是一个参数所表示多少字节不一定,需要看这个参数以什么…...
R语言AI模型部署方案:精准离线运行详解
R语言AI模型部署方案:精准离线运行详解 一、项目概述 本文将构建一个完整的R语言AI部署解决方案,实现鸢尾花分类模型的训练、保存、离线部署和预测功能。核心特点: 100%离线运行能力自包含环境依赖生产级错误处理跨平台兼容性模型版本管理# 文件结构说明 Iris_AI_Deployme…...
SciencePlots——绘制论文中的图片
文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了:一行…...

《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》
引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...
k8s从入门到放弃之Ingress七层负载
k8s从入门到放弃之Ingress七层负载 在Kubernetes(简称K8s)中,Ingress是一个API对象,它允许你定义如何从集群外部访问集群内部的服务。Ingress可以提供负载均衡、SSL终结和基于名称的虚拟主机等功能。通过Ingress,你可…...
Spring Boot 实现流式响应(兼容 2.7.x)
在实际开发中,我们可能会遇到一些流式数据处理的场景,比如接收来自上游接口的 Server-Sent Events(SSE) 或 流式 JSON 内容,并将其原样中转给前端页面或客户端。这种情况下,传统的 RestTemplate 缓存机制会…...

React第五十七节 Router中RouterProvider使用详解及注意事项
前言 在 React Router v6.4 中,RouterProvider 是一个核心组件,用于提供基于数据路由(data routers)的新型路由方案。 它替代了传统的 <BrowserRouter>,支持更强大的数据加载和操作功能(如 loader 和…...
逻辑回归:给不确定性划界的分类大师
想象你是一名医生。面对患者的检查报告(肿瘤大小、血液指标),你需要做出一个**决定性判断**:恶性还是良性?这种“非黑即白”的抉择,正是**逻辑回归(Logistic Regression)** 的战场&a…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...
三维GIS开发cesium智慧地铁教程(5)Cesium相机控制
一、环境搭建 <script src"../cesium1.99/Build/Cesium/Cesium.js"></script> <link rel"stylesheet" href"../cesium1.99/Build/Cesium/Widgets/widgets.css"> 关键配置点: 路径验证:确保相对路径.…...

shell脚本--常见案例
1、自动备份文件或目录 2、批量重命名文件 3、查找并删除指定名称的文件: 4、批量删除文件 5、查找并替换文件内容 6、批量创建文件 7、创建文件夹并移动文件 8、在文件夹中查找文件...
PHP和Node.js哪个更爽?
先说结论,rust完胜。 php:laravel,swoole,webman,最开始在苏宁的时候写了几年php,当时觉得php真的是世界上最好的语言,因为当初活在舒适圈里,不愿意跳出来,就好比当初活在…...
MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例
一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

【力扣数据库知识手册笔记】索引
索引 索引的优缺点 优点1. 通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。2. 可以加快数据的检索速度(创建索引的主要原因)。3. 可以加速表和表之间的连接,实现数据的参考完整性。4. 可以在查询过程中,…...

2025年能源电力系统与流体力学国际会议 (EPSFD 2025)
2025年能源电力系统与流体力学国际会议(EPSFD 2025)将于本年度在美丽的杭州盛大召开。作为全球能源、电力系统以及流体力学领域的顶级盛会,EPSFD 2025旨在为来自世界各地的科学家、工程师和研究人员提供一个展示最新研究成果、分享实践经验及…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望
文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...
day52 ResNet18 CBAM
在深度学习的旅程中,我们不断探索如何提升模型的性能。今天,我将分享我在 ResNet18 模型中插入 CBAM(Convolutional Block Attention Module)模块,并采用分阶段微调策略的实践过程。通过这个过程,我不仅提升…...