Посмотрим содержание и структуру файла, который будем конвертировать в формат parquet:   ! head -n5 /home/sergey/Py_SparkDataFrame_edx_CS105_CS110_CS120/data/201408_status_data.csv «station_id»,»bikes_available»,»docks_available»,»time» «2″,»12″,»15″,»2014-03-01 00:00:02″ «2″,»12″,»15″,»2014-03-01 00:01:03″ «2″,»12″,»15″,»2014-03-01 00:02:03″ «2″,»12″,»15″,»2014-03-01 00:03:02″   Для конвертации нам понадобится определение типов полей («схема»):   from pyspark.sql.types import * customSchema = StructType([ StructField("station_id", IntegerType(),True), StructField("bikes_available", IntegerType(),True), StructField("docks_available", IntegerType(),True), StructField("time", TimestampType(),True), ])   Прочитаем csv…

sc.version ’2.0.0′ from pyspark import SparkContext, HiveContext context = HiveContext(sc) path = «file:///home/sergey/Py_SparkDataFrame_edx_CS105_CS110_CS120/data/201408_status_data.csv» df = context.read.csv(path, header=True).cache() df.printSchema() root |— station_id: string (nullable = true) |— bikes_available: string (nullable = true) |— docks_available: string (nullable = true) |— time: string (nullable = true) df.count() 18342210 df.show(5) +———-+—————+—————+——————-+ |station_id|bikes_available|docks_available| time| +———-+—————+—————+——————-+ | 2| 12| 15|2014-03-01 00:00:02|…

from pyspark.sql import SQLContext sqlContext = SQLContext(sc) Reading csv with customSchema from pyspark.sql.types import * customSchema = StructType([ StructField("id", IntegerType(), True), StructField("bikes_available", IntegerType(), True), StructField("docks_available", IntegerType(), True), StructField("time", TimestampType(), True) ]) path = «file:///home/sergey/Py_SparkDataFrame_edx_CS105_CS110_CS120/data/201408_status_data.csv» df = sqlContext.read.csv(path, header=True, schema=customSchema) df.show(5) +—+—————+—————+———————+ | id|bikes_available|docks_available| time| +—+—————+—————+———————+ | 2| 12| 15|2014-03-01 00:00:…| | 2| 12| 15|2014-03-01 00:01:…|…

© 2014 In R we trust.
Top
Follow us: