数据仓库有着悠久的历史,最初它是作为一种将数据从操作系统转移到决策支持系统的架构概念而诞生的。近些年,云技术的广泛应用,让数据仓库发生了很大变化,也呈现出以往不同的发展趋势。
首先,我们需要理解Data Warehousing是一个将数据仓库作为核心,通过清理、集成和数据整合来准备数据的流程和工具的组合。
数据仓库
使用托管服务
托管服务是高级服务的类型,对特定用例具有挑战性的问题都由云自动处理。数据仓库面临的大部分挑战都与可扩展性,可靠性,安全性,性能和效率相关,而这些主要是由云提供商在使用托管服务时进行管理。
当谈到数据仓库架构时,你可以使用完全托管的ETL服务(例如:Amazon Glue,Azure Data Factory),托管数据仓库服务(例如Amazon RedShift,Azure SQL数据仓库)等等。 在使用这些服务时,还可以在云中找到可互联的服务,以进一步减少实施工作,也可以找到云基础架构和服务供应模板,更简单地设置数据仓储解决方案
此外,大多数的服务都是由云提供商按需提供的,所以使用这些服务还可以降低成本。
生产线数据集市
在大型集中式数据仓库中,分析不同生产线的数据也很重要。数据集市通过包含特定业务部门的汇总数据来提供解决方案。数据集市可以作为数据仓库的中间来源,也可以用作每个业务部门独立分析自己的数据。
数据湖启发
数据湖和数据仓库之间有着根本的区别。但是,我们已经看到Data Lake在数据分析和报告世界中越来越流行。Data Lake和Data Warehousing之间的主要差异之一是Data Lake在读取时定义数据模式,而Data Warehousing在写入时定义模式。尽管Data Lake也有自己的优缺点,但是我们可以从其数据仓储的核心优势中找到灵感。
目前DataLake最受欢迎的技术之一就是利用分布式存储和使用Hadoop文件系统等工具进行处理。这对于数据仓库来说也是有益的,它允许以高效且并行的过程预处理或后处理数据,从而减少时间和成本。
使用列式存储
将来自各种来源的数据存储在数据仓库中非常重要,它可以有效查询分析目的。为此,在检索复杂分析查询时,与基于行的存储相比,使用列式存储可以提高磁盘性能。云中有数据仓库服务,可以以较低的成本提供这些功能(例如 Amazon RedShift)用于存储和查询。使用这些服务不仅降低了建立数据仓库的复杂性,还为访问控制提供了紧密集成,整合了各种数据源等等。
内存分析引擎
执行分析和报告时,使用内存中的处理引擎会更加高效,不仅可以导入大量数据,还可以并行处理以实现快速响应和可视化。云服务(如Microsoft Azure Power BI Embedded和Amazon QuickSight)可随时用于内存分析和可视化。