2016-10-17 7 views

cevap

6

Ben PySpark işçiler arasında yayın değişkenleri paylaşmak için paylaşılan bellek herhangi bir biçimde kullanmaz inanıyoruz.

Unix benzeri sistemlerde, are loaded değişkenleri, çalışanın ana işlevine, yalnızca after forking daemon'dan çağrılır; böylece ana işlem alanından erişilemez.

Büyük değişkenlerin ayak izini harici hizmet kullanmadan azaltmak istiyorsanız, bellek eşlemeli dosya destekli nesneleri kullanmanızı tavsiye ederim. Bu şekilde örneğin NumPy arrays'u verimli bir şekilde kullanabilirsiniz. Aksine, yerel (JVM) Spark uygulamaları, tek bir yürütücü JVM'deki çoklu yürütücü iş parçacıkları arasındaki yayın değişkenlerini gerçekten paylaşır.