首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >图形可视化-海量数据的性能问题

图形可视化-海量数据的性能问题
EN

Stack Overflow用户
提问于 2020-10-09 05:03:37
回答 1查看 518关注 0票数 0

我有来自不同DB来源的大量数据(甲骨文、蒙戈、卡桑德拉),也有卡夫卡提供的数据。使用Tableau进行分析,面对海量数据的性能问题。因此,计划以其他方式存储数据,并使用Tableau进行可视化。现在有多个选项,需要一些帮助才能最终确定方法。

选项1:-

读取DB数据并将其存储在Parquet文件中,然后通过Spark或HiveQL或Presto公开它,并让Tableau连接到此SQL。

选项2:-

读取DB数据并将它们存储在S3中的Parquet文件中,然后使用AWS雅典娜进行分析,让Tableau连接到雅典娜。

选项3:-

读取DB数据并将它们存储在S3中的Parquet文件中,然后移动到Redshift进行分析,让Tableau连接到Redshift。

不确定上述任何一种方法是否也是流数据( Kafka )分析的好解决方案。

注意:-我有多个大表,需要连接b/w。

EN

回答 1

Stack Overflow用户

发布于 2020-10-09 07:58:57

据我所知,您有来自不同来源的大量数据,您还可以访问AWS。然后,您计划通过Tableau将这些数据用于分析和仪表盘。

备选案文1和2

您的选项1和2基本上是相同的,因为AWS、雅典娜和Hive基于相同的原则,即通过存储表定义的亚稳态在平面文件上创建表。雅典娜的Presto引擎和星火都是分布式的,并且在海量数据(TB数据)上都是高效的。主要区别在于定价模型(Athena基于每个请求处理的每个数据的价格,是无服务器的,而Spark可能意味着基础设施成本)。

然后,由于它们不是为自助服务BI设计的OLAP系统,所以这两个选项的性能可能不太好(它们更好地用于针对海量数据的临时查询)。

然后,您可能难以使用平面文件和表或其上的视图来管理数据模型(数据存储和压缩不会针对每个表进行优化,这可能会影响Tableau的性能)。

选项3

选项3是更好的,因为它是基于Redshift设计的,旨在支持OLAP系统。您可以将Tableau直接连接到Redshift,但是您会受到延迟的影响,而且根据用户和/或请求的数量,您可能在管理集群负载方面遇到困难。但它可以像你描述的那样起作用。

然后,如果您有性能问题,稍后您将能够从Redshift到Tableau创建数据源提取。您还可以实现一个中间数据库来存储预聚合查询(= datamart),并直接将Tableau连接到Tableau,这将避免每次在Tableau中打开仪表板时在Redshift上执行相同的查询(在这种情况下,Redshift还缓存查询)。

然后,由于需要执行多个联接,您将能够通过设置正确的分区和排序键,使用Redshift优化此类查询的数据存储。

最后,您还可以使用Redshift频谱(通过雅典娜/Glue亚稳态)直接访问Redshift中的平面文件。

文件:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64274185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档