
大数据查询怎样才能避免越来越慢_数据分析师培训
大多数大型组织都实现了一个或多个大数据应用程序。随着他们积累越来越多的金融交易、销售数据和客户交互,他们就可以生成更加准确的销售预报和预测客户需求趋势。这将转换为更大的市场份额和更高的收益。
然而,随着积累的数据越来越多,内部用户和分析师会执行更多的报表和预报。这些都会导致额外的查询、分析及报表。这个循环还在继续:数据增长带来更好的分析,而分析又会产生更多的报表。最终,大数据应用程序会充满大量的数据,从而影响查询性能。
如何避免这个问题呢?
大数据信息获取与存储
信息技术(IT)支持人员可以从几个方面去主动解决大数据应用程序的性能问题。第一个是数据获取与存储,有时候也称为提取、转换与加载(ETL)。
大数据应用程序会将它们的数据存储在一个大型数据库或者一个特殊的混合硬件/软件设备中。有时候也会混合使用这两种方法。大型数据库可能是关系数据库(如IBM DB2)或数据库机器(Teradata)。设备是一种整合大规模并行I/O通道和超大磁盘阵列的新数据存储手段。在很多时候,它们还需要与一个现有数据仓库协同工作,因为可能组织中大量现有分析数据都已经存储在这个数据仓库中。
数据的最后一个方面是帮助我们确定需要对运营数据执行多少预处理。这有时候称为数据整理。常见的例子包括处理缺失或无效的数据,将代码替换为描述性分类数据,以及为具有唯一自然键的实体分配代理键。
数据从运营系统和外部数据源到达应用程序。IT必须保证来自运营系统的数据元素的正确性,其格式要适合批量加载。数据通道既要有足够快的数据传输速度,也要有足够大的带宽去支持多数据流的交行传输。大数据应用程序的日常增长每天都会增加GB数量级的数据。
一定要保证这些数据能够快速高效地传输。
大多数据数据库管理系统(DBMS)和设备都有一些用于加载数据的专有工具。这些工具有时候要求输入数据使用一种固定的格式。要检查这些需求及其他选项,确定是否有一些方法可以保证数据加载速度满足要求。对于关系数据库,有一种常用方法是合适分区表。例如,在表中定义用4个分区来存储一天的数据。这样IT人员就可以设计一个加载流程来并发加载4个分区。
最后一领域是数据存档和净化。虽然表面上数据量越多就自然可以推出分析更好,但是一些历史数据可能变老或失效。例如,一些已停止销售产品的销售数据,公司停止服务地区的客户数据等。这些数据应该净化或存档。净化可以减少所需要的数据存储量,而存档则允许在将来需要数据时重新加载数据。无论是哪一种情况,减小工作数据库的大叔都可以加快查询速度,因为它不再需要过时的数据。
大数据用户
谁是你的用户,他们如何查询你的数据?典型的用户是一位业务分析师和主题专家,他们理解你的业务数据,具有高明又高效地访问大数据应用程序的技术知识。这可能意味着他们精通SQL等查询语言。另一个方法是安装分析软件,展示图形化业务数据视图,并且基于用户界面来构建查询。
在许多组织中,他们安装的第一个大数据应用程序就是为了解决一些特殊问题,或者为了分析预定问题,即用例。分析师已经知道哪一些查询可以产生有用且可操作的智能。
接下来,第一次分析的结果是产生“如果……将会怎么样(what if)”的问题,这会导致需要访问更多数据的更多查询。随着这些查询提供数量更多的有用结果,管理层自然会开始将它们调整为常规报表。
IT支持人员必须规划查询在数量与复杂度方面的增长需求。这比规划未来数据存储容量增长要复杂得多。复杂查询要求数据库管理系统选择一条高效的数据访问路径。这可能要求增加给数据库一些提升性能的特性,如索引或数据分区。有可能多个查询使用同一个数据集合,如按区域划分的销售数据或按月份及客户类型划分的客户数据。在这些情况下,就有可能预先计算好这些数据集合,将它们单独存储在不同的位置,从而大大提升查询性能。
另一个关注的问题是系统资源。可能有一些资源是有限的或受性能约束,如CPU或磁盘存储。这一类资源的可用性将决定大多数可见的性能指标和查询耗时。
IT人员应该监控资源消耗和收集常规性能测量数据。将这些指标制成分时图表就可能反映出一些趋势。在一些时候,使用一种资源就有可能减轻另一种资源的结束。例如,如果CPU资源紧张,导致查询速度变慢,那么就可以给数据表增加索引。这样会占用更多的磁盘存储空间,但是可以加快数据访问速度。其他可用的方法包括增加专用于排序处理的磁盘存储,给DBMS增加内存,以便有更多的内存用于缓冲数据。
大数据查询
这自然就到了使用查询优化方法的时候。大多数DBMS都有一个分析查询访问路径的特性,它称为解释。解释的输入是一个查询,它会分析多个可能的数据访问路径,然后每一个路径指定成本,然后执行具有最低成本的访问路径。在这里,成本是指数据查询时所需要的CPU使用率和磁盘I/O。
这种查询路径优化要求DBMS提供一个关于数据库或设备所存储数据的统计模板。这种统计信息包括每一个数据元素的最大值和最小值、平均值、最常见值及其他数据分布信息。
假设有一个表包含按日期划分的销售数据,其中交易日期从01-01-2014到12-31-2014。只查询01-01-2014的数据查询可能只需要访问数据表中很小的一部分;因此,这时很可能需要增加一个索引访问路径。
类似地,在上面这个表中,假设将数据分割为12个数据集或分区,其中每一个分区对应一个月份。那么查询一月份数据的查询可能只需要访问其中一个分区,从而筛选数据时不需要扫描整个数据表。
显然,分析的需求会对所生成查询的类型产生重大影响;同时,可用的存储方法和数据访问路径将会影响查询性能。最明显的结论是IT支持人员必须与分析人员紧密协作,定期开会一起审查报表需求和文档可行的数据访问策略。此外,IT人员还应该开发一种捕捉所有已提交查询的方法,这样通过对它们分析就可能得到通用模式。
小结
为了避免大数据应用程序潜在的性能问题,IT人员应该主动与分析人员协调,收集数据访问指标。在技术方面,要用文档记录数据提取、转换和加载流程,确定有一些方法可以提升数据查询速度或处理更大的数据容量。要考虑净化过时数据,并且确定是否有一些提升数据性能的通用手段,如分区或索引会很有效。
开发一个用户库概要。用户数量有多少,他们创建查询的技术水平有多高,以及他们提交查询的频率有多快?这些数据在将来是否会继续增长?
捕捉用户查询,执行解释流程,然后保存访问路径。要用这些数据去分析性能问题和趋势。
要监控用于支持大数据应用程序的系统资源。预报趋势,特别是那些已经或可能会成为约束的资源。在这些情况下,要使用现有资源开发一些方法,抵消其中一些约束。
最后,要定期与业务分析人员会面,讨论你得到的结果和将来可能的变化。这种交流和协调是与用户保持良好关系的重要条件。
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
Python HTTP 请求工具对比:urllib.request 与 requests 的核心差异与选择指南 在 Python 处理 HTTP 请求(如接口调用、数据爬取 ...
2025-09-12解决 pd.read_csv 读取长浮点数据的科学计数法问题 为帮助 Python 数据从业者解决pd.read_csv读取长浮点数据时的科学计数法问题 ...
2025-09-12CDA 数据分析师:业务数据分析步骤的落地者与价值优化者 业务数据分析是企业解决日常运营问题、提升执行效率的核心手段,其价值 ...
2025-09-12用 SQL 验证业务逻辑:从规则拆解到数据把关的实战指南 在业务系统落地过程中,“业务逻辑” 是连接 “需求设计” 与 “用户体验 ...
2025-09-11塔吉特百货孕妇营销案例:数据驱动下的精准零售革命与启示 在零售行业 “流量红利见顶” 的当下,精准营销成为企业突围的核心方 ...
2025-09-11CDA 数据分析师与战略 / 业务数据分析:概念辨析与协同价值 在数据驱动决策的体系中,“战略数据分析”“业务数据分析” 是企业 ...
2025-09-11Excel 数据聚类分析:从操作实践到业务价值挖掘 在数据分析场景中,聚类分析作为 “无监督分组” 的核心工具,能从杂乱数据中挖 ...
2025-09-10统计模型的核心目的:从数据解读到决策支撑的价值导向 统计模型作为数据分析的核心工具,并非简单的 “公式堆砌”,而是围绕特定 ...
2025-09-10CDA 数据分析师:商业数据分析实践的落地者与价值创造者 商业数据分析的价值,最终要在 “实践” 中体现 —— 脱离业务场景的分 ...
2025-09-10机器学习解决实际问题的核心关键:从业务到落地的全流程解析 在人工智能技术落地的浪潮中,机器学习作为核心工具,已广泛应用于 ...
2025-09-09SPSS 编码状态区域中 Unicode 的功能与价值解析 在 SPSS(Statistical Product and Service Solutions,统计产品与服务解决方案 ...
2025-09-09CDA 数据分析师:驾驭商业数据分析流程的核心力量 在商业决策从 “经验驱动” 向 “数据驱动” 转型的过程中,商业数据分析总体 ...
2025-09-09R 语言:数据科学与科研领域的核心工具及优势解析 一、引言 在数据驱动决策的时代,无论是科研人员验证实验假设(如前文中的 T ...
2025-09-08T 检验在假设检验中的应用与实践 一、引言 在科研数据分析、医学实验验证、经济指标对比等领域,常常需要判断 “样本间的差异是 ...
2025-09-08在商业竞争日益激烈的当下,“用数据说话” 已从企业的 “加分项” 变为 “生存必需”。然而,零散的数据分析无法持续为业务赋能 ...
2025-09-08随机森林算法的核心特点:原理、优势与应用解析 在机器学习领域,随机森林(Random Forest)作为集成学习(Ensemble Learning) ...
2025-09-05Excel 区域名定义:从基础到进阶的高效应用指南 在 Excel 数据处理中,频繁引用单元格区域(如A2:A100、B3:D20)不仅容易出错, ...
2025-09-05CDA 数据分析师:以六大分析方法构建数据驱动业务的核心能力 在数据驱动决策成为企业共识的当下,CDA(Certified Data Analyst) ...
2025-09-05SQL 日期截取:从基础方法到业务实战的全维度解析 在数据处理与业务分析中,日期数据是连接 “业务行为” 与 “时间维度” 的核 ...
2025-09-04在卷积神经网络(CNN)的发展历程中,解决 “梯度消失”“特征复用不足”“模型参数冗余” 一直是核心命题。2017 年提出的密集连 ...
2025-09-04