Реализация объединения сегментов слияния сортировки в C ++ - PullRequest
0 голосов
/ 17 июня 2020

Я пытаюсь реализовать Sort Merge Bucket Join (особенность куста) в c ++.

Для начала предположим, что у меня есть 100 небольших файлов, содержащих, скажем, 10 миллионов строк целых чисел каждый, которые вместе представляют собой столбец, скажем, столбец 1 из 1 миллиарда строк таблицы и аналогично еще 100 похожих файлов, представляющих аналогичный столбец, скажем, столбец 2 другой таблицы.

Я хочу по существу отсортировать оба столбца и записать только эти значения в другой файл (ы), где значения в столбце 1 = значения в столбце 2.

Уловка в том, что я не хотите прочитать более 10 миллионов целых чисел каждого столбца в ОЗУ.

Мне удобно объединять столбцы, если они отсортированы, но я не знаю, как отсортировать весь столбец, не имея на самом деле целого столбца в моей оперативной памяти.

I знаю, что эта техника реализована в улье, но я плохо разбираюсь в ней, и я не могу найти ни одной статьи по inte rnet, которая могла бы мне помочь.

И это само собой разумеется, я хочу выполнить это работайте максимально эффективно.

Как я могу go об этой проблеме? Или как улей это удалось?

...