在这个存储库中,作者提到我们可以 OLAP
方块 Cassandra
或者 S3
:
一旦数据进入redshift,我们的主要目标是让bi应用程序能够连接到redshift集群并进行一些分析。bi应用程序可以直接连接到redshift集群,也可以通过中间阶段,在中间阶段,数据以olap多维数据集表示的聚合形式存在。
怎么可能?那怎么办?我遗漏了什么基本概念吗?据我所知 OLAP
多维数据集是一种特殊的数据结构,存在于 OLAP
数据库。他指的是特定的预先计算好的 dimensions
以及 facts
储存在 OLTP
-面向对象的数据库,比如 Cassandra
?
1条答案
按热度按时间u0sqgete1#
olap的主要功能包括:
旋转
切片
切割
钻孔
以及
Redshift
我能做到。它的架构旨在解决
OLAP
以及BI
任务。请参阅亚马逊红移开发人员指南amazonredshift是专门为在线分析处理(olap)和商业智能(bi)应用程序设计的,这些应用程序需要对大型数据集进行复杂的查询。因为它满足了非常不同的需求,所以amazonredshift使用的专用数据存储模式和查询执行引擎与postgresql实现完全不同。例如,在线事务处理(oltp)应用程序通常以行的形式存储数据,amazonredshift以列的形式存储数据,使用专门的数据压缩编码来优化内存使用和磁盘i/o。为了提高性能,省略了一些适合小规模oltp处理的postgresql特性,例如二级索引和高效的单行数据操作。
但是条款之间的界限是非常平滑的。
正如diana shealy所说:
停止滥用oltp作为olap
市场上oltp和olap之间存在很多混淆,由于商业olap的高价格,初创公司和预算有限的开发人员继续滥用oltp数据库作为olap数据库。虐待分为两类:
一个通常是多分片的mysql数据库,使用应用层脚本来执行历史事件数据分析。尽管这种设置非常常见,但它是进行分析的效率最低的方法之一。mysql没有针对读取大范围数据进行任何优化,对分析函数的支持也很弱。因为有多种选择,避免这种“便宜”的解决方案,因为你最终会在其他地方付出代价。
使用postgresql作为olap层。这是一个比上面更合法的选择,因为postgres的坚实的分析用户定义函数(udf)启动一个分析平台。此外,由于它的c-store扩展,postgresql可以变成一个列式数据库,使它成为商业olap的一个经济实惠的替代品。
最后,如果您正在考虑从OLTP(被滥用为OLAP)转移到“真正的”OLAP(如redshift),我建议您学习如何使用redshift的copy命令,以便可以开始在redshift中查看数据。
至于你的问题:
怎么可能?
可能是因为
Redshift
体系结构(列数据库)和分析功能,例如:窗口函数
数据仓库体系结构
演出
柱状存储器
内部架构和系统操作
工作量管理
聚合函数
那怎么办?
有关amazonredshift数据仓库系统体系结构的详细说明,请参见系统和体系结构概述。
(本文前面已经提到了一些链接)
基本概念?
我遗漏了什么基本概念吗?
我建议更多地依赖于具体解决方案的技术细节,而不是营销术语。最后,实际任务不是通过软件命名或营销来解决的,而是通过它的真正功能来解决的。
db景观中真正重要的是考虑两个定理:
帽定理
根据
Iron triangle
在cap定理中,您可以从三个db架构组件中选择两点:一致性可用性*持久性饼状定理
亚马逊的rick houlihan就db archotecture的选择发表了演讲。除了cap定理,他还提出了pie定理:
饼图定理假定,您可以从数据系统中的三个理想特性中选择两个:
图案灵活性
效率
无限规模
以及
Redshift
正在打开PI
结构尺寸PIE triangle
###数据结构据我所知,olap多维数据集是存在于olap数据库中的一种特殊数据结构。他可能是指存储在面向oltp的数据库中的维度和事实的特定预先计算的组合,比如cassandra?
两者
OLAP
聚合数据结构和Redshift
分发样式的目标只有一个:使查询更快。列数据库、分布、并行查询和其他特性适合于分析任务。升级版
在你的评论中
Cassandra
可以作为OLAP
服务。Cassandra
以及S3
可用于存储预先计算的维度聚合数据。