Redshift:云端数据仓库颠覆者云和虚拟化
在以前数据仓库极为昂贵。不管部署了哪一种数据库,都要依靠整整一百万美元的最小投资才能让整个系统启动并运行。虽然数据仓库的定义经常有所不同,但是就是一个数据库,包含了制定商业决策所使用的交易数据的抽象。数据分析工具运行数据,输出不同的视图,包括报告和可视化数据。
过去,甲骨文以及其他的大型企业厂商统治了数据仓库世界。随着基于云的解决方案的出现,比如运行在公有云提供商上的数据仓库存储,构建和部署数据仓库的成本显著削减。
亚马逊Redshift服务对于甲骨文就是一记猛击。而且改变了游戏规则,明确了在云端构建数据仓库的可能性。Redshift利用列式存储方法和技术提供快速查询性能,很多技术是取自于企业数据库技术。
列式数据库是一个概念或者架构。很多列式数据库构建于传统的、面向行的数据库管理系统。它们可以在表中用一或者两列简单存储信息,而且增加了访问列式数据的必需层。Redshift就是这项技术的一个实例,但是其独特的地方在于我们可以将其作为公有云服务来消费Redshift。
列式数据库/存储的使用,比如Redshift,改善了跨多个服务器实例的I/O效能和并列查询。因为服务实例是可扩展且按需的,在亚马逊Web服务的世界中,按需求自动扩展服务实例或者自分配服务实例来支持查询是一件非常容易的事情,而且随后可以在操作完成后将资源回归。
Redshift利用标准PostgreSQL、JDBC和ODBC驱动器,可以支持任何现有的支持SQL(结构化查询语言)的客户端。数据加载速度可以根据集群规模线性扩展,可以同Amazon S3、Amazon DynamoDB、Amazon Elastic MapReduce、Amazon Kinesis或者任何基于SSH的主机集成。因此,换句话说,Redshift就是一个声势惊人的列式数据库,且具备高度的可扩展性和更高的成本效益。
核心的考量就是从成本到价值。显然,利用云交付的服务对比自有硬件和软件,云更具优势。Redshift如出一辙,即一个提供高性能和成本效益的稳固的数据仓库。很难发现二者兼备的数据仓库;另外的考量包括集成和数据自身。
要记住,你的大部分数据存储在本地,即便不是全部,某种情况下要考虑转移到Redshift。很容易实现,然而巨大量的数据要按周或者按天转移的话远比你想的要笨重且难以处理。
数据也会成为问题,如果法规迫使你以某种方式处理数据,包括在公有云上发布数据。这些具有法规遵从问题的数据在云计算逐渐成为主流的今天可能会中途退出。在将业务做出转移之前,要检查一下具体的法规。
那么是否采用Redshift呢?大部分时间而言,你应该Redshift,后者确保这是一个核心的考虑。节省的时间和成本是显著地,而且数据仓库不再是财富力强的企业的选择。