我正在设计一种自定义报告工具(不是用于数据仓库(,我的脑海中脑海中有正常的分析仪表板。到目前为止,我计划将PostgreSQL用作报告数据库,因为我拥有所有基本的分析功能。但是当涉及在原始数据上进行一些floting hounding时,响应时间太糟糕了。对于每个用户操作,查询在PostgresDB上运行并不那么有效。
诸如Tableau提取物之类的内存方法非常适合这些用例。我有可能在Postgres和报告层之间使用Presto实现类似的东西,因此Presto将在原始数据的顶部运行查询并产生更快的结果?
假设我在谈论表"订单"并搜索某些特定项目类别,并在子类别上再次过滤,依此类推,presto是否会为每个用户操作提交每个查询Presto层中已经存在吗?
如果Presto不是正确的解决方案,是否存在任何DB/引擎来解决类似于Tableau提取物类似的内存动态报告?
Presto在单个RDBMS实例之上部署时不会产生太多价值(此处:PostgreSQL(。Presto仍然需要从基础数据库中获取数据,并且会受到您的PostgreSQL效率的约束。
但是,使用Presto,您可以使用其他数据存储 - 例如您可以尝试Presto的内置内存连接器或使用一些NOSQL数据库快速访问单个记录。
另外,您应该考虑是否以不同的方式建模数据可能会带来一些改进。也许您可以使用一些立方体/数据集市(例如DRUID(解决方案,以更快地访问聚合结果。如果您使用Presto作为数据虚拟化层,则保留更改基础技术的自由,而无需同时更改您的自定义报告工具。
presto具有poptrgres的支持
另外,您可以寻求调整索引和其他Postgres参数,以便从该数据库中获得更好的性能。