Если я создаю 10 RDD в моей pySpark оболочке из HDFS, это означает, что все эти 10 РДД данные будут находиться на Спарк памяти?
Да, Все 10 РДУ данные будут распространяться в искровых рабочих машин RAM. но не обязательно для всех машин, должен иметь раздел каждого RDD. выключение RDD будет иметь данные в памяти только в том случае, если какое-либо действие выполняется на нем, так как оно лениво оценивается.
Если я не удаляю RDD, это будет в памяти навсегда? не
Спарк Автоматически unpersist ДРР или Dataframe, если они больше не используются. Чтобы узнать, кэшируется ли RDD или Dataframe, вы можете войти в таблицу Spark UI -> Storage и просмотреть сведения о памяти. Вы можете использовать df.unpersist()
или sqlContext.uncacheTable("sparktable")
, чтобы удалить df
или таблицы из памяти. link to read more
Если мой размер набора данных превышает размер доступной оперативной памяти, где данные в будут сохранены?
Если РДД не помещается в памяти, некоторые разделы не будут кэшироваться и будут пересчитаны на лету каждый раз, когда они необходимы. link to read more
Если мы говорим РДД уже в оперативной памяти, а это означает, что в памяти, что необходимость сохраняться()? --as на комментарий
Чтобы ответить на ваш вопрос, когда любое действие срабатывает на РДУ, и если это действие не может найти память, она может удалить некэшированный/unpersisted РДА.
В общем, мы сохраняются RDD, которые нужно много вычислений и/или перетасовки (по умолчанию искра не проходят перемешиваются РДУ, чтобы избежать дорогостоящей сети I/O), так что, когда любое действие, совершаемое на сохранялось RDD, просто он будет выполнять это действие, а не вычислять его снова с начала в соответствии с графиком линии, check RDD persistence levels here.
В памяти есть да RAM. RDD ленивы. В RDD есть 2 операции, называемые преобразованиями и действиями, если не принято действие (для ex: count), которое они не будут действовать и вычислять. При запуске задания мы будем выделять память (которая является памятью исполнителей в ОЗУ) через spark-submit или каким-либо другим способом. Порекомендовал бы [это] (https://www.tutorialspoint.com/apache_spark/apache_spark_rdd.htm) –