【发布时间】:2016-12-29 14:02:58
【问题描述】:
我开始使用 Tableau,我有一个项目涉及存储为 JSON 的多个网站日志。我每天都有一个日志,持续大约一个月,每个日志的重量约为 500-600 Mb。
是否可以在 Tableau 中打开(并加入)多个 JSON 文件?如果是,如何?我可以并行加载它们,但不能加入它们。 编辑:我可以加载多个 JSON 文件并定义它们的关系,所以这没关系。我仍然有内存问题:
我担心加入他们之后,我将没有足够的内存来让它工作。加载的文件是否存储在内部数据库的 RAM 中?
最好的方法是什么?我应该先合并所有 JSON,还是将它们加载到数据库中并使用连接到 Tableau 的连接器?如果是这样,什么是 DB 的好选择?
我知道其中一些问题是基于意见的,但我对此一无所知,我确实需要一些指导才能开始。
【问题讨论】:
-
你想加入他们还是联合他们?我相信 Tableau 的 JSON 驱动程序的 UNION 功能(还)不可用。对于如此庞大的数据量,您可能希望提前对其进行预处理、过滤、聚合和索引 - 使用数据库,例如 Parquet 和 Spark 和/或 Tableau 数据提取
-
我每天都有相同的数据,所以我需要一个联合。使用数据库时,tableau 如何使用内存?它是在开始时加载所有内容,还是在需要时检索和聚合?
-
Tableau 向数据库发送查询,然后根据查询结果集呈现可视化。返回的数据量取决于查询,查询取决于您在 Tableau 中指定的内容。 Tableau 会缓存结果,您还可以创建一个提取作为持久的、可能过滤和聚合的缓存。见stackoverflow.com/a/31171086/441979
-
如果我使用到数据库的连接就是这种情况,但是如果我加载本地文本文件(JSON 或 csv)会发生什么? tableau 是将其存储在数据库中,还是将所有内容加载到内存中?
-
对于文本文件和数据提取,Tableau 今天通过其数据引擎进程将它们加载到内存中——未来会被新的内存数据库取代。虽然概念是相同的,但 Tableau 向数据源发送一个返回结果集的查询。对于您正在谈论的大小的数据,您可能需要使用某种数据库进行测试,如果它的容量超过了内存中舒适的容量
标签: json tableau-api