Requires only two passes through external database
Divide database into n partitions, each fits in main memory
Scan 1: Process one partition in memory at a time, finding local large itemsets
Candidate large itemsets are the union of all local large itemsets (superset of actual large itemsets, contains false +)
Scan 2: Calculate support, determine actual large itemsets
If data is skewed, partitioning may not work well. The chance that a local large itemset is a global large itemset may be small.