Go back to the English version of the documentation节点的缓存选项
节点的高速缓存选项 (SPSS Modeler)
Last updated: 2024年6月07日
为优化流程运行,可以在任何非终端节点上建立缓存。 如果已在节点上建立了缓存,则在下一次运行数据流时流过节点的数据会充满缓存。 从那时起,就会从缓存(临时存储)而不是从数据源中读取数据。
对于诸如排序、合并或汇总这样比较耗时的操作,缓存是最有用的。 例如,假设已设置可从数据库中读取销售数据的导入节点,和可按区域汇总销售数据的“汇总”节点。 可以在“汇总”节点而不是在导入节点上建立缓存,因为需要缓存存储的是已汇总的数据而不是整个数据集。
注: 导入节点上的高速缓存 (仅在将原始数据读入 SPSS Modeler时存储其副本) 在大多数情况下不会提高性能。
将使用特殊的圆圈反斜杠图标显示启用了高速缓存的节点。 在节点上缓存数据时,图标会更改为复选标记。
启用缓存
将鼠标悬停在流中的节点上,然后单击溢出菜单 ,然后选择
。您可以随时通过禁用高速缓存来将其关闭。
在数据库中缓存节点
对于在数据库中运行的流,可将中游数据缓存到数据库的临时表中而不是文件系统中。 与 SQL 优化相结合,此操作可以使性能得到显著提高。 例如,可以将合并多个表以创建数据挖掘视图的流程的输出缓存,然后在需要时复用。 通过为所有下游节点自动生成 SQL,性能可得到进一步的提高。
为利用数据库缓存,必须同时启用 SQL 优化和数据库缓存。
启用数据库高速缓存后,您可以在任何非终端节点对数据进行高速缓存,下次运行流时,将直接在数据库中自动创建高速缓存。 如果未启用数据库缓存或 SQL 优化,则会转而将缓存写入文件系统中。
注: 以下数据库支持用于高速缓存的临时表: Db2, Oracle, SQL Server和 Teradata。 其他数据库(例如 Netezza)将使用标准表进行数据库缓存。
刷新缓存
按节点显示的圆反斜杠图标指示其高速缓存为空。 当缓存已满时,该图标将变为复选标记。 如果要替换缓存的内容,必须先刷新缓存,然后重新运行数据流以对其进行重新填充。
将鼠标悬停在流中的节点上,然后单击溢出菜单 ,然后选择
。