SQL Server 2005 Analysis Services性能指南 Part 4 - 使用分区提升查询性能

【信息科学与工程学】【数据中心】第三十五篇 云计算数据中心的学科知识04 编号学科(课程)核心知识点在云计算/云存储/云网络/云安全/云MaaS中的作用代表教材/资料/论文 + 数学方程式列表工业界应用D1421​云原生数据库:TiDB​HTAP(混合事务/分析处理)、分布式SQL、水平扩展、强一致(Raft)、自动故障恢复、与MySQL兼容、TiFlash列式引擎提供弹性扩展的分布式数据库;支撑高并发在线交易与实时分析教材:《TiDB in Action》PingCAP(2020) 论文:《TiDB: A Raft-based HTAP Database》(2017) 阅读详情
使用分区提升查询性能

分区是将度量值组数据分散存储到多个物理单元的机制,有效的使用分区可以提高查询和处理性能。这一章讲述如何通过分区提升查询性能。分区对处理和管理数据的好处将在“使用分区提升处理性能”章节详述。

在查询时如何使用分区

当你查询Cube时,存储引擎尝试从存储引擎缓存中查找数据。如果缓存中没有所需的数据,就试图从聚合中查找数据。如果聚合中也没有数据,就必须在分区中扫描事实数据。如果单分区也能够实现存储引擎并行查询,并使用位图索引确定查询哪部分数据,那就没必要再去优化性能了。

所以你可以通过多分区将度量值组分成多个物理单元。存储引擎就同时独立查询每个分区,并且只需要查询跟需求相关的分区。



<!--[if !vml]-->

图 17  多分区智能查询


图17显示了从称为Adventure Works的Cube中按Business Type查询Reseller Sales Amount的事件。Reseller Sales度量值组按照年分成四个分区。因为查询按2003年切片,所以存储引擎可以直接在2003年的分区中查找数据,而不需要扫描其他的分区。SQL Server Profiler跟踪到这个查询说明查询只需要从2003年分区读取数据。

设计分区

如果你清楚用户的查询习惯,你可以按照用户常用的查询模式设计分区。但如果用户没有统一的查询模式,多少就有些困难了。常用的做法是按照时间元素分区,例如日、月、季度、年等。许多查询都涉及到时间,所以按时间分区通常都能提升性能。

当你设计了分区,你必须将源数据表、视图、或源查询绑定到分区。对MOLAP分区,在Cube处理过程中,Analysis Services使用分区中每个属性的最小和最大DataID标识数据片段,以便计算分区中属性的数据分布范围。分区中每个属性的数据范围信息包含在数据片断定义中,数据片断就如同是子立方体。有了这些信息,存储引擎可以在查询时只挑选相关的分区扫描。对ROLAP和主动缓存分区,你必须自己在分区参数中定义片断。

在设计分区时,使用以下的方法创建和维护分区:

<!--[if !supportLists]-->·         <!--[endif]-->当你决定将数据分散到多个分区时,你通常会估量分区的容量和分区的数量。分区容量是分区中数据量和分区聚合文件的大小。尽管分区中的段可以并行查询,但如果聚合文件无法装载到内存,查询效率就非常糟糕。

<!--[if !supportLists]-->·         <!--[endif]-->通常,每个分区的记录不应超过两千万条。而且,分区大小不应超过250MB。如果分区超过这个两个限制中的任何一个,就应考虑将分区分成更小的单元以减少分区扫描时间。多分区通常都是不错的,可过多的分区也会影响性能。

<!--[if !supportLists]-->·         <!--[endif]-->如果你有多个分区,但每个分区小于50MB或少于两百万数据量,可以考虑将它们整合到一个分区。而且,创建少于4,096行记录的分区不是一个好方法,因为存储引擎不会为如此少的数据创建聚合和索引。注意这个数量上限由msmdsrv.ini文件中的IndexBuildThreshold参数控制。实际的生产环境中应该不会少于4,096行记录。

<!--[if !supportLists]-->·         <!--[endif]-->当你定义分区时,不需要保证每个分区都包含一致性的数据集。例如,一个度量值组可以有3个按年的分区,11个按月的分区,三个按周的分区,和1~7天的分区。使用不同级别的数据创建异构分区可以让你更简便的管理新数据装载,因为可以在不影响其他已存分区的情况下处理分区,用户的查询也不会受到干扰。而且,还可以为一组分区设计聚合,共享同级别的数据(详细内容在下一节)。

<!--[if !supportLists]-->·         <!--[endif]-->无论何时你需要为度量值组建立分区,你必须取保为每个分区更新统计信息。更确切地说,确保分区记录计数和属性成员计数能准确性是非常重要的。关于如何更新分区计数,参考前面的“提供Cube数据的统计信息”章节。

<!--[if !supportLists]-->·         <!--[endif]-->对包含Distinct Count汇总函数的度量值组,考虑专门为此度量值组优化。详细信息,参考“优化Distinct Count计算”章节。

多分区的聚合考虑

你可以独立对每个分区使用不同的聚合设计方案。得益于这一特性,你可以为那些需要高度聚合的数据集建立独立的分区。尽管这种的设计可以增强性能,但太多的分区也会产生负担。

为了帮助你进行聚合设计,在此提供了一些建议。当你的分区少于10个,每个度量值组最好不多于2种聚合设计;当分区少于50个,每个度量值组聚合设计要少于3种;多于50个分区,每个度量值组聚合设计不多于4种。

因为每个分区都可以有独立的聚合设计方案,最好根据分区的统计信息,将类似的分区归为一组。这样就可以为一组分区应用一种聚合设计。

考虑这样的例子:一个Cube按月建立了多个分区,新的数据将会装载到当前这个月的分区中,并且这个分区是目前查询最频繁的分区。在这种情况下,通行的聚合策略是对最近的分区执行基于使用优化,而老的、不常使用的分区可以不用过多关注。

最新的聚合设计可以复制到一个基本分区。这个基本分区不包含数据,它仅仅是保存当前的聚合设计。当要增加新分区时(比如新的一个月开始了,建立了一个新的分区),可以把基本分区克隆到新分区,这样新分区可以继续使用之前基于使用优化的聚合设计。在执行了第一次执行了FULL处理后,就可以周期性的增量更新分区。关于处理技术,参考“有效地更新分区”章节。

VLOOKUP_fixed.py 立即下载

相关推荐

YOLO26算法心电图十二导联目标检测+训练好的模型+368张数据集+pyqt可视化界面.zip

附训练好的 YOLO 权重与 PyQt 可视化检测界面,页面底部含可视化效果预览,毕设/课设开箱即用。 【数据集概况】 · 检测类别(中文):[导联I(I), 导联II(II), 导联III(III), 胸导联V1(V1), 胸导联V2(V2), 胸导联V3(V3), 胸导联V4(V4), 胸导联V5(V5), 胸导联V6(V6), 加压肢体导联aVF(aVF), 加压肢体导联aVL(aVL), 加压肢体导联aVR(aVR)] · 训练集:313 张 · 验证集:37 张 · 测试集:18 张 · 总计:368 张 该数据集聚焦于临床心电图信号的精准识别与定位,其核心检测目标为标准12导联心电图中的各个独立导联波形区域,涵盖肢体导联(I、II、III)与加压肢体导联(aVR、aVL、aVF),以及胸前导联(V1至V6),适用于心电图自动分析系统中对各导联位置的快速准确标注与分类。数据采集场景真实还原了医院心电图室或急诊监护环境下的标准心电图记录纸,波形清晰、基线稳定,具有高度临床参考价值。... 【训练曲线与评估图】 【模型训练配置】 参数 | 值 模型 | yolo26n 训练轮数 | 100 epochs 输入尺寸 | 640x640 批次大小 | 24 优化器 | auto 初始学习率 | 0.01 训练设备 【关键指标汇总】 训练了 57 个 epoch,最终轮指标: 指标 | 数值 mAP50 | **0.9708** mAP50-95 | 0.6344 Precision | 0.8990 Recall | 0.9191 train/box_loss | 1.2231 train/cls_loss | 0.9703 val/box_loss | 1.2779 val/cls_loss | 0.... 使用场景:毕业设计、课程设计、深度学习入门、工业场景落地验证。

ssas 分区 设置_如何在Analysis Services多维中对SSAS多维数据集进行分区

ssas 分区 设置 Partitioning is the concept where you divide your data from one logical unit into separate physical chunks. This can have several advantages, such as improved performance or easier maint...

culuo4781的博客 889

企业级AI助手平台 开箱即用的全栈AI平台,支持多智能体协同、Supervisor模式编排、多种决策模式、RAG技术和流程编排能力 支持多厂商大模型统一接入与管理,安全可控的企业知识库与高精度检索优化

企业级AI应用开发框架,支持多厂商大模型统一接入与管理,安全可控的企业知识库与高精度检索优化能力,提供可视化流程编排、自主决策智能体与多智能体协同调度,兼容主流 Agent Skill 协议,帮助企业与开发者零门槛快速构建安全、高效、可落地的AI智能体应用与行业解决方案。

创建并管理SQL Server Analysis Services分区

创建并管理SQL Server Analysis Services分区 创建并管理SQL Server Analysis Services分区(一) 创建并管理SQL Server Analysis Services分区(二) 创建并管理SQL Server A...

dida4700的博客 177

基于动态窗口法DWA的机器人路径规划研究(Matlab代码实现)

内容概要:本文系统研究了基于动态窗口法(DWA)的机器人局部路径规划算法,深入剖析其在动态环境中实现自主避障与实时轨迹优化的核心机制。文章详细阐述了DWA算法的速度空间采样策略、轨迹预测模型、动力学约束处理及多目标代价函数的设计原理,并通过构建完整的Matlab仿真框架验证算法有效性。结合典型场景的仿真实验,展示了机器人在复杂障碍物环境下如何实时生成安全、平滑且符合运动学约束的最优路径,充分体现了DWA在移动机器人导航中的实用性与鲁棒性。; 适合人群:具备机器人运动规划基础知识和Matlab编程能力,从事智能移动机器人、自动驾驶或服务机器人研发的研究生、科研人员及工程技术人员。; 使用场景及目标:①深入理解DWA算法的理论基础与实现细节;②掌握机器人局部路径规划的仿真实现方法;③为实际机器人系统的导航模块开发提供可复用的算法原型与代码参考;④作为进一步研究高级导航算法(如TEB、MPC)的技术基础。; 阅读建议:建议结合提供的Matlab代码逐模块分析与调试,重点关注速度采样、轨迹积分、障碍物距离计算及代价评估等关键环节,通过调整参数在不同地图环境中进行对比实验,以深刻把握算法性能与参数之间的关系,进而提升对实时路径规划系统设计的理解与应用能力。

【轴承故障诊断】用于轴承故障诊断的集中时频分析研究(Matlab代码实现)

内容概要:本文系统研究了用于轴承故障诊断的集中时频分析技术,重点解决了传统时频分析方法在处理非平稳信号时存在的能量分散与分辨率不足等问题。通过引入集中时频分析方法,能够有效聚焦信号能量,精确提取轴承故障特征频率,提升故障识别的准确性与时效性。文章详细阐述了该方法的理论基础,并结合仿真信号与实际实验数据验证其优越性能,同时提供了完整的Matlab代码实现流程,涵盖信号预处理、时频变换、参数优化及结果可视化等环节,便于读者复现与拓展应用。; 适合人群:具备一定信号处理理论基础和Matlab编程能力的研究生、科研人员,以及从事机械设备状态监测、故障诊断与预测性维护工作的工程技术人员。; 使用场景及目标:①应用于电机、风机、齿轮箱等旋转机械的早期轴承故障检测,实现故障预警;②提升工业设备运维系统的智能化水平,支撑预测性维护体系构建;③作为高校或研究机构在信号处理、机械故障诊断等课程中的教学案例与实践素材。; 阅读建议:建议读者结合文中提供的Matlab代码逐段运行与调试,深入理解集中时频分布的生成机制及其关键参数(如核函数选择、平滑窗口大小)对诊断效果的影响,并尝试将其应用于其他类型的机械故障信号分析中,开展对比研究以深化对该方法适用性的认识。

ssas如何创建分区_Analysis Services(SSAS)多维设计技巧–创建尺寸

ssas如何创建分区 In the previous article, Analysis Services (SSAS) Multidimensional Design Tips – Data Source View and Cubes, we discussed best practices for SSAS Multidimensional cubes and data source v...

culuo4781的博客 480

Python结合海康威视工业相机SDK实现高效图像采集与处理

本文详细介绍了如何使用Python结合海康威视工业相机SDK实现高效的图像采集与处理。内容涵盖从环境搭建、SDK核心模块理解,到完整的图像采集流程拆解,包括设备枚举、参数设置、主动取流以及关键的像素格式转换。同时,文章深入探讨了触发模式、参数控制等高级应用,并提供了性能优化建议和可复用的相机操作类封装,帮助开发者快速构建稳定的机器视觉应用。

weixin_29043895的博客 349

如何在SQL Server中自动进行表分区

In this article, we will demonstrate specific ways to automate table partitioning in SQL Server. This article aims to help you avoid manual table activities of partition maintenance by automating ...

culuo4781的博客 3127

避免踩坑!杰理AC63蓝牙名修改常见问题及解决方案(含BLE后缀处理)

本文详细解析了杰理AC63蓝牙设备名称修改的全过程,包括基础操作、BLE后缀处理及高级调试技巧。针对蓝牙名修改中的常见问题,提供了实用的解决方案和代码示例,帮助开发者避免踩坑并实现高效定制。

q6r7s8t9的博客 410

深信服 SANGFOR 设备密码恢复和配置备份恢复

、恢复密码 当我们拿到一台设备要去配置管理的时候,首先是要确认设备的登录IP,其次就是确认设备控制台登录密码。不知情的情况下如何找到设备的登录IP,请参考文档: http://bbs.sangfor.com.cn/forum.php?mod=viewthread&tid=9484 下文中提到的关于“网关升级客户端”的一些功能,也请参考此文档。 那么恢复密码,大家都知道有2种方法:U盘恢复密码、交叉线恢复密码。 1、U盘恢复密码 注意:仅恢复admin密码,不影响配置。 U盘恢复密码的前

李先生在闯荡江湖 1万+

SQL Server 2005 Analysis Services性能指南 Part 3 - 聚合最大化

聚合最大化所谓的聚合,就是预先计算好汇总数据,并将汇总数据物理的存储,这样在查询时就可大大提高性能。更确切地说,一个聚合单元就是与维度属性关联的汇总的度量值。(※注,原文使用的是Aggregation,在汉语中为了跟动词区别开来,翻译时使用了聚合单元,不要跟Cube中的单元Cell搞混) 聚合设计是在所有的聚合单元中挑选出一部分进行物化的过程。虽然物化的聚合单元越多(※注,下文中如无特别说

jackfor001的专栏 869

AWSIM模拟器 新增多相机

本文介绍了基于Unity6引擎对AWSIM自动驾驶模拟器的优化方案,主要针对多相机系统的扩展实现。作者通过修改EgoVehicle.cs和AutowareSimulationDemo.cs核心代码,将原单相机系统升级为5相机配置。关键技术点包括:1)使用List容器管理多个CameraSensor组件;2)完善相机初始化流程;3)配置5个相机UI显示窗口;4)修改ROS话题设置。优化后的系统可支持BEVFusion等多传感器融合算法的测试验证,为Autoware.universe 0.45.0及以上版本提供

W805698955的博客 831

[翻译]SQL Server 2005 Analysis Services性能指南 Part 4 - 使用分区提升查询性能

使用分区提升查询性能 分区是将度量值组数据分散存储到多个物理单元的机制,有效的使用分区可以提高查询和处理性能。这一章讲述如何通过分区提升查询性能。分区对处理和管理数据的好处将在“使用分区提升处理性能”章节详述。 在查询时如何使用分区 当你查询Cube时,存储引擎尝试从存储引擎缓存中查找数据。如果缓存中没有所需的数据,就试图从聚合中查找数据。如果聚合中也没有数据,就必须在分区中扫描事实数据。如...

weixin_33989780的博客 116

基于CAT的VBM和SBM计算学习笔记(二)感兴趣区(ROI)&全脑体积(TIV)

本文介绍了用cat12运算VBM前,如何抓取ROI信息;运算VBM后,如何转化ROI文件和提取全脑体积,为之后的统计分析做好准备。t=N7T8基于CAT的VBM和SBM计算学习笔记(一)VBMhttps://mp.youkuaiyun.com/mp_blog/creation/editor/140665644。

Rose9614的博客 4357

【DeepSeek实战】1、DeepSeek民用级开发全指南:从0到1掌握AI应用开发与模型蒸馏实战

DeepSeek创新性地打破了传统AI开发的技术壁垒,通过双模型架构(DeepSeek-V3和R1)实现普惠化与专业化并重。其核心优势包括:零代码操作、浏览器直接使用、中文提示词控制及低成本(2元/百万token)。用户通过简单三步(注册-配置-使用)即可快速开启AI之旅,平台提供$50免费额度支持2个月高频使用。 四大核心应用场景: 办公自动化:周报撰写、PPT生成、数据分析一键完成 内容创作:提供爆款标题生成、垂直领域写作模板 学习辅助:支持文档解析、错题讲解、知识图谱构建 生活服务:个性化行程规划

2025博客之星Top81。专注AI工程化与架构实战。从分布式思维到模型部署,用工程化视角为你厘清AI落地的真实路径。 1735

SQL Server 2005 Analysis Services性能指南 Part 4 - 使用分区提升查询性

使用分区提升查询性能 分区是将度量值组数据分散存储到多个物理单元的机制,有效的使用分区可以提高查询和处理性能。这一章讲述如何通过分区提升查询性能。分区对处理和管理数据的好处将在“使用分区提升处理性能”章节详述。 在查询时如何使用分区 当你查询Cube时,存储引擎尝试从存储引擎缓存中查找数据。如果缓存中没有所需的数据,就试图从聚合中查找数据。如果聚合中也没有数据,就必须在分区中扫描事实数据。如

idonot的专栏 1014

5、数据计算与处理技巧全解析

本文深入解析了Tableau中的多种数据计算与处理技巧,涵盖LOD计算、日期与字符串处理、计数优化、数据混合限制及自定义总计等核心内容。通过实际案例和流程图,系统讲解了各技巧的应用场景、实现步骤与注意事项,并提供性能优化建议和常见问题解答,帮助用户提升数据分析效率与可视化精度。同时展望了未来数据计算技术的发展趋势,是Tableau用户进阶必备的全面指南。

peach的博客 82

SQL Server 2005 Analysis Services性能指南 Part 1 - 理解查询构架

翻译:Cheney Shue发表于:博客园版权文档中的信息仅代表发表之日止微软公司的观点。因为微软公司需要响应不断变化的市场环境,所以微软公司不能保证发表之日后,文档中信息的正确性。此白皮书仅用于报告目的。微软不为此文档作任何担保。用户有责任遵从版权法。如果没有微软公司的授权,用户不得超出权限以任何形式(包括电子或机械复制、拍照、记录、及其他形式)复制此文档。 此文档可能包含了

jackfor001的专栏 888

Golang内存管理:GC调优实战案例

在Golang编程中,内存管理是一个非常重要的方面。良好的内存管理可以提高程序的性能和稳定性,而GC(垃圾回收)调优则是优化内存管理的关键手段。本文的目的就是通过实际案例,深入讲解Golang中GC调优的方法和技巧,让读者能够在实际项目中更好地进行内存管理和性能优化。范围涵盖了从核心概念的解释到具体代码实现和调优过程的详细分析。本文首先会介绍一些相关的术语和核心概念,让读者对Golang内存管理和GC有一个基本的认识。然后通过故事引入的方式,更加形象地解释核心概念及其相互关系。

AI Agent Harness Engineering 1118

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

[翻译]SQL Server 2005 Analysis Services性能指南 Part 1 - 理解查询构架

Author:        Elizabeth Vitt                         Subject Matter Experts: T.K. Anand Sasha (Alexander) Berger Marius Dumitru Eric Jacobsen Edward Melomed Akshai Mirchandani Mosha Pas...

weixin_33912246的博客 159

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

[翻译]SQL Server 2005 Analysis Services性能指南 Part 3 - 聚合最大化

聚合最大化 所谓的聚合,就是预先计算好汇总数据,并将汇总数据物理的存储,这样在查询时就可大大提高性能。更确切地说,一个聚合单元就是与维度属性关联的汇总的度量值。(※注,原文使用的是Aggregation,在汉语中为了跟动词区别开来,翻译时使用了聚合单元,不要跟Cube中的单元Cell搞混) 聚合设计是在所有的聚合单元中挑选出一部分进行物化的过程。虽然物化的聚合单元越多(※注,下文中如无特别说...

weixin_33824363的博客 139

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

[转翻译]SQL Server 2005 Analysis Services性能指南 Part 3 - 聚合最大化

聚合最大化 所谓的聚合,就是预先计算好汇总数据,并将汇总数据物理的存储,这样在查询时就可大大提高性能。更确切地说,一个聚合单元就是与维度属性关联的汇总的度量值。(※注,原文使用的是Aggregation,在汉语中为了跟动词区别开来,翻译时使用了聚合单元,不要跟Cube中的单元Cell搞混) 聚合设计是在所有的聚合单元中挑选出一部分进行物化的过程。虽然物化的聚合单元越多(※注,下文中如无特别说...

weixin_34302798的博客 123
上一篇: SQL Server 2005 Analysis Services性能指南 Part 2 - 优化维度设计
下一篇: SQL Server 2005 Analysis Services性能指南 Part 3 - 聚合最大化
jackfor001
博客等级 码龄22年 41粉丝 61原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值