zoukankan      html  css  js  c++  java
  • spark知识点_datasources

      来自官网DataFrames、DataSets、SQL,即sparkSQL模块。

      通过dataframe接口,sparkSQL支持多种数据源的操作。可以把dataframe注册为临时视图,也可以通过关系转换。

      1)默认格式是parquet,这是一种columnar(柱状的,按列的)的格式,按列存储(如Hadoop中)。

      parquet载入后就是dataframe格式,而dataframe可以直接写出到parquet文件。

    df = spark.read.load("examples/src/main/resources/users.parquet")  #默认parquet格式
    df.select("name", "favorite_color").write.save("namesAndFavColors.parquet")

    #可手动设置格式为json,亦可以是jsonparquetjdbcorclibsvmcsvtext等內建格式,如果是其他的则要写全称(i.e., org.apache.spark.sql.parquet)
    df = spark.read.load("examples/src/main/resources/people.json", format="json")  
    df.select("name", "age").write.save("namesAndAges.parquet", format="parquet")

    #可以直接在文件上执行SQL
    df = spark.sql("SELECT * FROM parquet.`examples/src/main/resources/users.parquet`")
     

       2)表分隔(partition)是如Hive的系统中常用的优化途径。分隔后的数据会存放在不同的目录。

      下面的文件就是以gender和country作为分隔字段(列)的。

    path
    └── to
        └── table
            ├── gender=male
            │   ├── ...
            │   │
            │   ├── country=US
            │   │   └── data.parquet
            │   ├── country=CN
            │   │   └── data.parquet
            │   └── ...
            └── gender=female
                ├── ...
                │
                ├── country=US
                │   └── data.parquet
                ├── country=CN
                │   └── data.parquet
                └── ...
  • 相关阅读:
    MVC的一个分页,网上摘录,自己少量修改
    Hibernate调用带返回值的存储过程的方法
    让tomcat启动后自动进行一些操作
    Java中汉字转拼音
    [转]asp.net response.ContentType 下载文件的四种方法
    [转]c3p0详细配置
    js替换换行
    JS省市区联动,可由数据库提取数据至JS
    silverlight导入文件到WebService
    Java生成Guid
  • 原文地址:https://www.cnblogs.com/xiaoxiong-kankan/p/7651915.html
Copyright © 2011-2022 走看看