博客
对于高级分析,选择面向列的数据仓库
Fivetran.
博客
对于高级分析,选择面向列的数据仓库

对于高级分析,选择面向列的数据仓库

通过 大卫Kravets,2018年1月31日

Steve Johnson在Flickr上的插图。

听起来像是cliché,但没人能否认我们生活在一个数据驱动的世界里,在这个世界里,分析经常成为商业决策的支柱。数据似乎是新的石油。

在进行高级业务分析时,Fivetran建议将数据存储在面向列的仓库中。“对于99%的用例,您希望您的仓库成为柱状,”说Meel Velliste.他是Fivetran公司的工程副总裁。

由于柱状仓库存储信息的方式,可以显着地压缩数据,因为列通常存储相同的值。对于高级分析,以柱状方式容纳的数据库也在基于行的替代方案中享受另一个好处:查询可能需要花费大量时间来计算。(有关面向列的仓库定价和查询速度的详细分析,请参阅Fivetran Ceo乔治弗雷泽最近的分析亚马逊的Redshift,谷歌BigQuery和Snowflake。)

Fivetran与亚马逊红移谷歌BigQuery雪花。我们也提供了其他几个数据目的地。

在Fivetran,我们为企业提供一个安全的数据管道,以同步和复制数据到中央数据仓库。Fivetran将从公司业务应用程序和服务中复制的数据填充到管道中。我们称之为整合"连接器。“

我们提供几十个连接器,而且他们很容易搞定。Fivetran定期推出新产品。我们最近发布的连接器是与Help Scout的一体化-基于电子邮件的帮助台服务。

在此Fivetran管道的结束时 - 在数据仓库级别,企业可以通过SQL查询和商业智能(BI)软件工具来深入了解其选择的指标。

在执行这些高级分析时,面向列的仓库可能更好地服务于那些BI工具,SQL和其他类型的查询 - 即,如果成本高效和快速的结果是数据库管理系统的终端名(DBMS)。

“通过列存储架构,DBMS只需读取处理给定查询所需的列的值,并且可以避免将内存不相关的属性。”

这句话来自于这一主题的一篇开创性研究论文。”C-Store:一种面向列的DBMS(PDF)虽然这句话发表于2005年,但在今天听起来却是真的。

一个更深的潜水

数据是线性存储的,无论它是存储在面向行还是面向列的数据仓库中。从本质上讲,它只是一长串数据。对我们的分析来说,重要的是理解这串数据是如何排列的。这就是行存储和列存储的最大区别。

现在让我们把它们的区别形象化:

下面是一个简单的电子表格,代表了一个假想公司的所有员工。它包括工人的身份证号码,他们的名字,他们工作的部门,以及他们的年薪。

使用这个电子表格数据,存储在基于行的仓库中的每一行都可以像这样表示给人眼:

现在,我们将查询所有工资的总和。计算机将开始扫描 - 从“工人ID”1,“名称”John,“部门”会计,并拨到约翰的“薪水”为99,000。这台机器将继续扫描Janie的“工人身份证”,直到它终于达到了Jo的111,000“薪水。”

这个扫描必须丢弃它积累的所有无关数据,并保留每个员工的年薪,然后才能最终吐出所有工资的总和。请记住,每条数据都经过扫描,得到99,000 +102,000 +102,000 + 111,000 = 414,000的结论。

这似乎不是什么大问题,因为在这个示例中没有太多的数据需要扫描。但是想象一下,如果有成百上千,上百万甚至数十亿的行需要被扫描。虽然这会让公司规模变得非常大,但它也突显了基于行的数据库管理系统在进行高级分析时的低效。

现在,我们将使用相同的电子表格数据可视化基于列的存储方法。从本质上说,在最基本的解释级别上,原始电子表格的列现在以行的形式存储:

现在,让我们再问一遍同样的薪水问题。所有员工的工资加起来是多少?在这个面向列的存储场景下,扫描的数据是表示工资的区域。这比在基于行存储方法中执行的扫描要小得多。而且,再一次考虑一下,这比基于行的方法更有逻辑性,特别是当高级分析可能涉及涉及令人难以置信的数据量的复杂查询时。

到目前为止,应该很清楚,在执行高级分析时,基于列的存储方法更可取。数据压缩算法在柱状数据库上更有效,因此这些数据库可能比类似大小的基于行的数据库使用更少的磁盘空间。而且,正如我们所看到的,面向列的数据库效率更高。与基于行的替代方案相比,它们可以更快、更有效地为复杂查询提供答案。

免责声明

显而易见的是,我们对面向行的与面向列的数据库的解构充其量是基本的,而简单起见留下了索引的概念。那是因为这个博客文章不是为数据库工程师设计的。他们可能对数据仓库方法都太熟悉了。

这篇简短的论文为分析师和其他人进行了更多的措施,他正在思考建立数据仓库以进行高级分析。它还适用于可以为数据仓库进行账单的公司高管。更重要的是,这是为智力好奇的,并且对于应该最少了解的企业决策者,其中有不同的数据仓库存储路径导航。

想了解更多关于Fivetran的信息,请联系我们免费演示

关于fivetran.:为云构建,FiveTran是最智能的,最快的方法可以使用零配置将数据复制和存储到仓库中。我们的生态系统释放公司以轻松加入数据来源,并使用其选择的工具进行敏捷分析。

在几分钟内开始分析您的数据,而不是几个月

立即启动任何Fivetran连接器。