数据分析师

手机号

验证码

30天自动登录

数据分析师

使用MySQL进行分析报告的利弊

来源:CPDA数据分析师网 / 时间:2021-03-04

资料类型
您正在分析什么类型的数据?MySQL旨在管理关系数据。如果您有大量定性数据(例如社交媒体帖子,图像或文本正文),甚至不要考虑使用MySQL,尽管MySQL已采取措施更好地处理这些类型的数据,但还是有一些NoSQL解决方案更适合此任务,例如MongoDB,当您要对数据运行分析查询时,尤其如此。

数据集大小
您要处理多少数据?许多人吹捧着MySQL的局限之一是处理超过1,000,000行的数据集时性能下降。但是,通常,更深入地研究表明,这是由于表设计不正确,硬件资源不足或未优化的查询和索引所致。正如Facebook这样的公司所证明的,MySQL的使用,MySQL可以有效地用于非常大的数据集,因此如果您的项目要处理大约500GB以上的数据集,请考虑花一些时间正确配置它以处理大规模数据(例如,您可能需要比较MySQL存储引擎,以找到适合您的用例的引擎),克服MySQL中大小限制的另一种方法是使用商业智能(BI)工具进行MySQL报告,以减轻数据库本身的负担,这些工具从数据库中逐步读取必要的数据,然后进行转换,分析并将其存储在其服务器上,说到规模,请展望未来几年并考虑公司的成长,在不久的将来处理大型或超大型数据集是否合理?如果是这样,请计划对数据体系结构进行自定义配置,以适应您的增长。

数据新鲜度
实施分析时要理解的一个重要概念是数据新鲜度,换句话说您需要多久更新一次数据仓库和数据集市?您是否每秒需要它,或者隔夜更新就足够了吗?MySQL几乎可以处理您要实现的任何刷新率,但是数据仓库体系结构和硬件的配置都需要更改以符合您的目标,当MySQL安装程序的性能欠佳时,该配置的硬件要求就会被忽略,当MySQL没错时,这导致MySQL在大型数据集上被标记为“慢”或“性能不佳”,规划您的配置,并确保它具有有效运行所需的资源,实施BI工具时,也应牢记这一点,当涉及到数据的新鲜度时,您越频繁地更新数据库,就增加了更多的负载。

速度/可用性
当您的分析师团队对数据进行挖掘,可视化和报告时,您的需求将有多强烈?并发用户将查询多少个数据集?另外,您是否需要分析所有数据或仅分析其中一部分?在分析领域,我们经常收集比任何单个分析所需更多的数据,这意味着我们可以有效地对数据仓库和数据集市进行建模,以程度地减少实际正在使用的结果数据集的大小,从而更快地获得结果,如果您要分析网络流量以提高选择率,则无需在该数据集中包含客户数据(例如姓名,地址或订单历史记录),如果您使用的是BI工具,那么这并不是什么大问题,因为一旦将数据加载到BI系统中,数据库上就不再有任何负载。因此,数据可用于分析的速度取决于BI系统的配置,而不取决于MySQL数据库。

讲故事网络研讨会横幅
MySQL的特殊注意事项
让我们看一下MySQL的几个关键方面,以便更好地了解它如何适合您的计划。

特征与功能
在选择数据库管理系统时,市场上有很多选择,它们都有自己的优势。但是,由于它的低成本(对于社区版免费),庞大的支持社区和灵活性,MySQL是许多应用程序中的数据库选项之一。由于这种流行性,再加上数据分析的蓬勃发展,MySQL的许多用户都要求其功能与时俱进,否则可能会受到开发人员的青睐。这导致以前限制MySQL的许多缺点在版本的DBMS中得以解决,早期版本中的一个问题是不存在以JSON数据类型存储值的本机支持,在版本中,情况不再如此,新的本机二进制格式及其使用的功能允许更有效的处理和存储,从而在处理常用数据类型时提高了性能。

从表面上看,这似乎没有太大的改善
但是鉴于MySQL在当今Web应用程序丰富的世界(JSON是一种广泛使用的数据类型)中的流行,其影响是巨大的。通过在数据的整个生命周期中保持一致的数据类型,许多应用程序将受益于更好的数据完整性,而且众所周知数据完整性是业务指标的关键,弄错了您就有机会犯错,例如失去销售或订购多余的库存,所有这些都会影响您的底线。

分析业务数据
根据您在配置期间选择的存储引擎以及其他因素,对数据进行实际分析可能会花费大量时间,添加专用的BI层是解决这种情况的方法之一,它将正在分析的数据与事务数据库中的数据分开,从而使分析可以完全独立地运行,但是同样不同的BI工具也有其优点和缺点,因此请确保将它们进行比较,以找出适合您的项目的项目,可以缓解这种情况的另一种方法是通过使用处理引擎(例如Apache Spark)来完成繁重的工作并将数据拆分为分布在多个节点上的较小的MySQL数据集市,然后将分析结果存储在那些数据集市中,而不是存储在所有数据本身中,其他可以帮助克服较长分析时间的方法是针对应用程序进行优化,分区使用启用了列和压缩的引擎,复制分片等,如何实现这些功能不在本文的讨论范围之内,但是现在您知道MySQL能够做到这些。

成本每个人都有预算
这个问题的答案可能真的很酷。不计薪水支付开发人员,硬件,维护等的费用,MySQL是免费的,社区版可免费使用,并得到托管公司和分析工具的广泛支持。它也不是那些愚蠢的“免费但功能有限的交易”之一,实际上它非常强大,并且能够使用默认配置来处理许多项目,但是对于大型企业项目,您可能需要付费版本,对于许多分析项目,MySQL可能是有效的解决方案。它具有许多特性,使其成为实施分析项目的理想数据库环境,它非常适合刚入门数据分析的入门级初创企业和中型公司,而且对于较大的应用程序,可以对其进行缩放和优化以使其适合,这正是为什么许多公司选择使用它,以及为什么它得到了来自不同社区的广泛支持的原因。

这种巨大的支持不断推动着MySQL的完善

每个发行的新版本都包含完善的功能,使其成为满足许多数据存储需求的可行解决方案,当然上述所有因素都将决定安装的复杂程度,您的需求越大,则需要的配置就越优化,如果您要进行任何规模的规模操作,请考虑为您的数据体系结构实现专用的BI层。


返回列表