pyspark读取textfile形成DataFrame以及查询表的属性信息

Posted qi-yuan-008

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pyspark读取textfile形成DataFrame以及查询表的属性信息相关的知识,希望对你有一定的参考价值。

pyspark可用于读取textfile格式hive表格

1. 查看hive表的属性方法(在hive或者spark-sql命令行均可):

查询建表信息:

show create table database_name.table_name;

查询表的属性信息 (可看到表的格式信息例如,InputFormat):

desc formatted database_name.table_name;

查看表结构:

desc database_name.table_name;

查看分区信息:

show partitions database_name.table_name;

2. 首先导入库文件,进行环境配置

import os
from pyspark import SparkContext, SparkConf
from pyspark.sql.session import SparkSession
from pyspark.sql.types import StructField, StructType, StringType

os.environ["PYSPARK_PYTHON"]="/usr/bin/python3"

conf = SparkConf().setAppName(test_text)
sc = SparkContext(local, test, conf=conf)
spark = SparkSession(sc)

3. 读取textfile格式数据(因为hive表可能以该形式保存)形成DataFrame数据:spark.read.text;类似,读取csv格式可用spark.read.csv

txt_File = r"hdfs://host:port/apps/hive/warehouse/数据库名.db/表名"
df = spark.read.text(txt_File) # DataFrame data

4. 基本操作

df.columns:显示列名

df.take(2):取前2条,Row格式

df.toPandas():将DataFrame格式的数据转成Pandas的DataFrame格式数据

df.collect():收集所有数据

df.show():显示数据

 

参考:

https://www.cnblogs.com/dozn/p/9040237.html

https://blog.csdn.net/u011712163/article/details/89887653

以上是关于pyspark读取textfile形成DataFrame以及查询表的属性信息的主要内容,如果未能解决你的问题,请参考以下文章

如何在 pyspark 中启用 csv 文件的多行读取

在 PySpark 中读取文本文件时有没有办法控制分区数

使用Pyspark读取S3上随机的文件样本

python pyspark textFile

PySpark如何读取具有多种编码的字符串的文件

使用 PySpark 从 Amazon S3 读取文本文件