我正在制作一组Talend作业,我将根据作业的需要以不同方式查询同一组表。这些表很大。如果在运行作业之前我查询所有表并从数据库中获取所有数据并将它们存储在一个文件中,然后将这些文件用于Talend作业中的各种查询,那会不会很好这些文件将存储在将运行作业的同一位置,而DB服务器将位于其他位置。如果我没有错,那么DBs本身就会实现某种缓存和索引,以便更快地进行查询和优化。那么,是否值得将它们存储在一个文件中,然后在Talend Jobs中查询它们?我正在使用Oracle DataBase。
答案 0 :(得分:0)
我不会这样做。
根据您的许可证,您可以使用内存中的表。尽管如此,正如您所说,根据查询的大小,可能会有一些缓存。
我会避免它,因为它可能会导致各种各样的问题:
但是,这个或其他数据库中的临时表可能是一个想法。
所以重负荷只会发生一次,我觉得这是一个好主意。然后进一步处理将在临时表上进行。之后,在所有进程完成后,此临时表将被删除。