spark sql常用action

  • 2.4 sparkContext IO:读
  • 2.4.1 textFile
 # Load a text file and convert each line to a Row.
 lines = sc.textFile("examples/src/main/resources/people.txt")
  • 2.4.2 hadoopFile
  • 2.4.3 newAPIHadoopFile
parquet_rdd = sc.newAPIHadoopFile(
        path,
        'org.apache.parquet.avro.AvroParquetInputFormat',
        'java.lang.Void',
        'org.apache.avro.generic.IndexedRecord',
        valueConverter='org.apache.spark.examples.pythonconverters.IndexedRecordToJavaConverter')
  • 2.4.4 pickleFile

    备注:Load an RDD previously saved using RDD.saveAsPickleFile method.

  • 2.4.5 parallelize

  • 2.4.6 broadcast

  • 2.5 sparkSql IO

  • 2.5.1 DataFrameReader

**parquet**
df = spark.read.parquet("examples/src/main/resources/users.parquet")

**JSON**
peopleDF = spark.read.json("examples/src/main/resources/people.json")

**ORC**
df = spark.read.orc("examples/src/main/resources/users.orc")

**JDBC支持的db**
jdbcDF = spark.read \
        .format("jdbc") \
        .option("url", "jdbc:postgresql:dbserver") \
        .option("dbtable", "schema.tablename") \
        .option("user", "username") \
        .option("password", "password") \
        .load()
  • 2.5.2 DataFrameWriter
**parquet**
df.select("name", "favorite_color").write.save("namesAndFavColors.parquet")

**JSON**
 (df.write
        .partitionBy("favorite_color")
        .bucketBy(42, "name")
        .saveAsTable("people_partitioned_bucketed"))

**ORC**
(df.write.format("orc")
        .option("orc.bloom.filter.columns", "favorite_color")
        .option("orc.dictionary.key.threshold", "1.0")
        .save("users_with_options.orc"))

**JDBC支持的db**
  jdbcDF.write \
        .format("jdbc") \
        .option("url", "jdbc:postgresql:dbserver") \
        .option("dbtable", "schema.tablename") \
        .option("user", "username") \
        .option("password", "password") \
        .save()
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值