在线观看 国产-在线高清一级欧美精品-在线高清国产-在线福利视频-久久观看视频-久久观看

下載吧 - 綠色安全的游戲和軟件下載中心

軟件下載吧

當(dāng)前位置:軟件下載吧 > 數(shù)據(jù)庫 > MS_SQL > Spark SQL 2.4.8 操作 Dataframe的兩種方式

Spark SQL 2.4.8 操作 Dataframe的兩種方式

時間:2024-02-07 12:09作者:下載吧人氣:25

一、測試數(shù)據(jù)

7369,SMITH,CLERK,7902,1980/12/17,800,20
7499,ALLEN,SALESMAN,7698,1981/2/20,1600,300,30
7521,WARD,SALESMAN,7698,1981/2/22,1250,500,30
7566,JONES,MANAGER,7839,1981/4/2,2975,20
7654,MARTIN,SALESMAN,7698,1981/9/28,1250,1400,30
7698,BLAKE,MANAGER,7839,1981/5/1,2850,30
7782,CLARK,MANAGER,7839,1981/6/9,2450,10
7788,SCOTT,ANALYST,7566,1987/4/19,3000,20
7839,KING,PRESIDENT,1981/11/17,5000,10
7844,TURNER,SALESMAN,7698,1981/9/8,1500,0,30
7876,ADAMS,CLERK,7788,1987/5/23,1100,20
7900,JAMES,CLERK,7698,1981/12/3,9500,30
7902,FORD,ANALYST,7566,1981/12/3,3000,20
7934,MILLER,CLERK,7782,1982/1/23,1300,10

二、創(chuàng)建DataFrame

方式一:DSL方式操作

  • 實(shí)例化SparkContext和SparkSession對象
  • 利用StructType類型構(gòu)建schema,用于定義數(shù)據(jù)的結(jié)構(gòu)信息
  • 通過SparkContext對象讀取文件,生成RDD
  • 將RDD[String]轉(zhuǎn)換成RDD[Row]
  • 通過SparkSession對象創(chuàng)建dataframe
  • 完整代碼如下:
package com.scala.demo.sql

import org.apache.spark.{SparkConf, SparkContext}
import org.apache.spark.sql.{Row, SparkSession}
import org.apache.spark.sql.types.{DataType, DataTypes, StructField, StructType}

object Demo01 {
  def main(args: Array[String]): Unit = {
    // 1.創(chuàng)建SparkContext和SparkSession對象
    val sc = new SparkContext(new SparkConf().setAppName("Demo01").setMaster("local[2]"))
    val sparkSession = SparkSession.builder().getOrCreate()

    // 2. 使用StructType來定義Schema
    val mySchema = StructType(List(
      StructField("empno", DataTypes.IntegerType, false),
      StructField("ename", DataTypes.StringType, false),
      StructField("job", DataTypes.StringType, false),
      StructField("mgr", DataTypes.StringType, false),
      StructField("hiredate", DataTypes.StringType, false),
      StructField("sal", DataTypes.IntegerType, false),
      StructField("comm", DataTypes.StringType, false),
      StructField("deptno", DataTypes.IntegerType, false)
    ))
    // 3. 讀取數(shù)據(jù)
    val empRDD = sc.textFile("file:///D:\TestDatas\emp.csv")

    // 4. 將其映射成ROW對象
    val rowRDD = empRDD.map(line => {
      val strings = line.split(",")
      Row(strings(0).toInt, strings(1), strings(2), strings(3), strings(4), strings(5).toInt,strings(6), strings(7).toInt)
    })

    // 5. 創(chuàng)建DataFrame
    val dataFrame = sparkSession.createDataFrame(rowRDD, mySchema)

    // 6. 展示內(nèi)容 DSL
	dataFrame.groupBy("deptno").sum("sal").as("result").sort("sum(sal)").show()
  }
}
標(biāo)簽MSSQL,SQLServer,技術(shù)文檔,數(shù)據(jù)庫,SQLSERVER

相關(guān)下載

查看所有評論+

網(wǎng)友評論

網(wǎng)友
您的評論需要經(jīng)過審核才能顯示

熱門閱覽

最新排行

公眾號

主站蜘蛛池模板: 亚洲综合色网站 | 亚洲美女自拍偷拍 | 中文字幕亚洲综合久久2 | 羞羞视频免费在线观看 | 羞羞视频免费网站日本 | 日韩欧美一区二区久久 | 国色天香精品亚洲精品 | 以色列电影 | 国产网站免费在线观看 | 久久综合五月开心婷婷深深爱 | 亚洲精品人成网在线播放影院 | 中文字幕第二十页 | 欧美日本在线播放 | 全部免费国产潢色一级 | 亚洲综合激情九月婷婷 | 小草在线免费视频 | 亚洲国产欧美精品一区二区三区 | 日日av| 欧美色伊人 | 最新亚洲手机在线人成网站 | 91精品乱码一区二区三区 | 亚洲精品成人av在线 | 中文字幕99在线精品视频免费看 | 波多野结衣www | 国产福利一区二区在线观看 | 五月天色丁香 | 免费自拍偷拍 | 久久精品视频一区二区三区 | 亚洲天堂网2018 | 久久亚洲日本不卡一区二区 | 羞羞视频在线观看入口 | 久久精品国产精品亚洲精品 | 羞羞视频在线播放 | 欧美日韩一区在线观看 | 偷自拍第一页 | 一区二区三区精品 | 五月开心六月伊人色婷婷 | 九九综合九九综合 | 亚州免费一级毛片 | 国产精品视频分类 | 伍月婷婷|