У меня настроен следующий скрипт:
conf = SparkConf().setAppName("GetAif")
sc = SparkContext(conf=conf)
sqlContext = SQLContext(sc)
schemaString = "c1 c2 id c3 c4 gender"
fields = [StructField(field_name, StringType(), True) for field_name
in schemaString.split()]
custschema = StructType(fields)
data_extract = sqlContext.read \
.format('com.databricks.spark.csv') \
.option("header", "true") \
.option("mode", "DROPMALFORMED") \
.option("delimiter", ',') \
.option("inferSchema", "false") \
.load('/data/dataset.csv',
schema = custschema) \
.selectExpr("id", "gender)
конечная цель - извлечь переменные пола и идентификатора в одном анализе данных.Я довольно новичок, чтобы зажечь, поэтому я устанавливаю, что я хочу минимизировать свои операции.
Я пытался использовать:
sc.textFile(/dataset.txt)
и несколько операций после этого, но это, похоже, усиливало плохую производительность из-за количества операций.
Есть ли лучший способ, которыйпотенциально может быть чище?