import pyspark
from pyspark.sql import SparkSession
from pyspark.conf import SparkConf
import findspark
from pyspark.sql.functions import countDistinct
spark = SparkSession.builder \
.master("local[*]") \
.appName("usres mobile related information analysis") \
.config("spark.submit.deployMode", "client") \
.config("spark.executor.memory","3g") \
.config("spark.driver.maxResultSize", "1g") \
.config("spark.executor.pyspark.memory","3g") \
.enableHiveSupport() \
.getOrCreate()
handset_info =
ora_tmp.select('some_value','some_value','some_value','some_value','some_value','some_value','some_value')
Я настраиваю искру с памятью выполнения 3 ГБ и памятью выполнения PysPark 3 ГБ. Моя база данных имеет более 70 миллионов строк.Покажите, что я вызываю метод
handset_info.show()
, который показывает верхнюю 20 строку в промежутке между 2-5 секундами.Но когда я пытаюсь запустить следующий код
mobile_info_df = handset_info.limit(30)
mobile_info_df.show()
, чтобы показать верхние 30 строк, это занимает слишком много времени (3-4 часа).Логично ли занять столько времени?Есть ли проблема в моей конфигурации.Конфигурация моего ноутбука -
- Core i7 (4 ядра) ноутбук с оперативной памятью 8 ГБ