У меня есть огромный набор данных (около 100 ГБ), основанный на данных блокчейна. Я хочу объединить две таблицы на основе транзакцийHash, что было бы невозможно (O(n^2)) за исключением того, что обе эти таблицы упорядочены по номеру блока, поэтому это можно сделать за O( |A|+|B|)=O(n).
Таблицы будут иметь что-то подобное среди других столбцов
blockNumber
transactionHash
< /tr>
0
1
0x0
1
1
0x1
2
1
0x6< /td>
3
2
0x2
4
2
0x8
5
2
0xf
В pandas я бы использовал pd.merge_ordered, но кажется, что это недоступен в dask.
Как можно:
- а) Реализовывать этот алгоритм самому, что предпринять во внимание и как мне "выровнять" разделы
- b) Использовать альтернативу с другими функциями dask
Я не могу использовать .set_index(), потому что у меня есть два столбца (а не один), и даже установка индекса только для столбца отметки времени приводит к зависанию ядра IPython.
Подробнее здесь:
https://stackoverflow.com/questions/788 ... ge-ordered