0
У меня возникают ошибки памяти при выполнении нескольких декартовых объединений, даже если это действительно небольшие наборы данных. Может ли кто-нибудь объяснить, почему это произойдет?Несколько декартовых объединений pySpark
In [1]: foo = sc.records([{'foo': 123}, {'foo': 321}])
In [2]: bar = sc.records([{'bar': 123}, {'bar': 321}])
In [3]: baz = sc.records([{'baz': 123}, {'baz': 321}])
In [4]: qux = foo.cartesian(bar)\
...: .map(lambda (x,y): x.merge(y))\
...: .cartesian(baz)\
...: .map(lambda (x,y): x.merge(y))
In [5]: qux.collect()
java.lang.OutOfMemoryError: GC overhead limit exceeded