日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Spark SQL 加载数据

發布時間:2024/9/16 数据库 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spark SQL 加载数据 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

第一種方式:Spark SQL可以將數據文件加載成RDD方式,然后將RDD轉成DataFrame或者DataSet。
第二種方式:從本地或者Cloud(hdfs hive S3等)

將文件加載成RDD

首先打開控制臺,輸入命令打開spark-shell:
./spark-shell --master local[2] --jars /home/iie4bu/software/mysql-connector-java-5.1.35.jar
然后加載本地文件:
val masterlog = sc.textFile("file:///home/iie4bu/app/spark-2.4.5-bin-2.6.0-cdh5.15.1/logs/spark-iie4bu-org.apache.spark.deploy.master.Master-1-manager.out.2")

此時已經將本地文件加載成RDD了,還無法使用SQL進行查詢,因為沒有轉成DataFrame。

將RDD轉成DataFrame

import org.apache.spark.sql.Row val masterRDD = masterlog.map(x => Row(x))import org.apache.spark.sql.types._ val schemaString = "line"val fields = schemaString.split(" ").map(fieldName => StructField(fieldName, StringType, nullable = true))val schema = StructType(fields)val masterDF = spark.createDataFrame(masterRDD, schema) masterDF.printSchema masterDF.show



這樣就可以使用DataFrame中的相關查詢了。也可以將DataFrame注冊成一張表。

將DataFrame注冊成表

masterDF.createOrReplaceTempView("master_logs") spark.sql("select * from master_logs limit 10").show(false)

如果使用JSON或者Parquet,schema信息不需要手寫,spark可以進行推測

使用Spark導入外部數據源,這種方式不需要手動寫schema了:

val usersDF = spark.read.format("parquet").load("file:///home/iie4bu/app/spark-2.4.5-bin-2.6.0-cdh5.15.1/examples/src/main/resources/users.parquet") usersDF.printSchema


生成DataFrame之后,也可以使用創建表來執行sql:

usersDF.createOrReplaceTempView("users_info") spark.sql("select * from users_info where name = 'Ben'").show

更簡單的實現方式

spark.sql("select * from parquet.`file:///home/iie4bu/app/spark-2.4.5-bin-2.6.0-cdh5.15.1/examples/src/main/resources/users.parquet` where name = 'Ben'").show

讀取hdfs或者s3數據

讀取成RDD:

val hdfsRDD = sc.textFile("hdfs://path/file") val s3RDD = sc.textFile("s3a://bucket/object")

直接讀取成DataFrame:

spark.read.format("text").load("hdfs://path/file") spark.read.format("text").load("s3a://bucket/object")

總結

以上是生活随笔為你收集整理的Spark SQL 加载数据的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 在线观看国产麻豆 | 黄色网页观看 | 阿v视频在线免费观看 | 91啪国产 | 91二区 | 人妻毛片 | 国产黄色av | 欧洲一区二区三区四区 | www黄色在线观看 | 色噜噜狠狠一区二区三区果冻 | 日日摸日日添日日躁av | 91av一区二区三区 | 激情噜噜 | 欧美精品一线 | 日本三级一区二区 | av中字在线| 天堂亚洲网 | 97在线视频免费 | 国产美女明星三级做爰 | 亚洲天堂三区 | 欧美一级录像 | 超碰免费在线 | 日韩欧洲亚洲 | 亚洲欧美日韩成人在线 | 在线观看亚洲大片短视频 | 久久综合久久综合久久 | 亚洲男人天堂网站 | 国产伦精品一区二区三区照片91 | 成人免费视频网站在线观看 | 女大学生的家政保姆初体验 | 永久中文字幕 | 无码人妻丰满熟妇区五十路百度 | 国产精品毛片久久久 | 欧美视频在线观看一区二区 | 国产113页 | 深夜精品福利 | 男人天堂综合 | 亚洲一区二区视频在线播放 | 7色av| 少妇被躁爽到高潮无码人狍大战 | 蜜桃视频一区二区在线观看 | 亚洲精品久| 日韩精品中文字幕在线 | 国产精品久久久久久久专区 | 亚洲国产中文字幕 | 国产精品无码一区二区三区免费 | 四虎网站在线 | 精彩久久 | 一极毛片 | 波多野结衣av一区二区全免费观看 | 国产白丝一区二区三区 | 特大黑人巨交吊性xxxxhd | 久久成人精品一区二区 | 男女搞网站 | 欧美另类tv | 一二三区在线视频 | 日韩av影视大全 | 欧美爱爱网 | 亚洲午夜精品一区二区三区他趣 | 日本免费一级片 | 影音先锋在线视频观看 | 三级黄色小视频 | 免费荫蒂添的好舒服视频 | 狠狠躁夜夜躁av无码中文幕 | 性欧美ⅹxxxx极品护士 | feel性丰满白嫩嫩hd | 琪琪色18| 五月天婷婷激情 | 亚洲第一页视频 | 男人的天堂一区 | 伊人宗合 | 日韩精品人妻中文字幕 | 日本成人一二三区 | 欧美性生交xxxxx | 无码人妻精品一区二区三区99不卡 | 都市激情校园春色亚洲 | 国产在线97 | 国产99久久久国产精品免费看 | 国语对白做受69按摩 | 天堂成人网| 精品国产99一区二区乱码综合 | 美国免费黄色片 | 中文字幕激情小说 | 欧美自拍偷拍第一页 | 国产三级一区二区三区 | 久久久久久久久久99 | 亚洲欧美综合 | 成人在线国产精品 | 国产一级免费片 | 精品蜜桃一区二区三区 | 国产又黄又粗又猛又爽 | 性视频播放免费视频 | 久久久激情 | 欧美一区二区三区系列电影 | 国产精品人妻一区二区三区 | 国产一区二区精品在线 | 国产aⅴ激情无码久久久无码 | 日本视频网站在线观看 | 久久免费网 |