【发布时间】:2019-01-24 08:58:34
【问题描述】:
我有 8 个不同的表,每个表有 2400 万到 4000 万条记录。其中一个表是主表,用于连接其他 7 个表。
我的问题是,在处理如此大的数据集时,使用哈希合并是否可行?我尝试了一种我在网上学到的散列技术,但我的系统在加载主表本身时内存不足。
在 SAS 中还有其他合并大型数据集的有效方法吗?
另外,谁能帮我用一个 sn-p 将这些表合并在一起。它们都基于不同的属性与主表合并。
注意:每个场景中都有多对一的合并
【问题讨论】:
-
这个问题已经成熟,可以结束了。请添加有关您的系统资源、数据集(表)结构和演示问题的代码的信息。如果未使用的多余信息存储在散列中,则列数可能是资源占用因素。一些用例使用 SET 迭代主表,而将其他表加载到散列中。是否尝试使用 MERGE 语句或 SQL 连接并认为解决方案不足?
-
根据您所说的,您最好使用多部分联接,该联接可以是哈希表、合并语句或 SQL 联接的混合,具体取决于要求。