数据蛙数据分析每周作业

python对hdfs/spark读写操作(hdfs/pyspa

2018-12-19  本文已影响3人  Great_smile

(一)、库安装

基于python3.5/python3.6

pip3 install hdfs
pip3 install pyspark

(二)、加载数据到hdfs

利用python,通过hdfs模块,连接集群,然后上传数据到hdfs目录。
关于python读写hdfs数据,请参照:hdfs数据读写

from hdfs.client import Client#hdfs模块
client = Client("http://192.177.6.17:50070",root="/",session=False)#服务器IP,端口,关闭session,避免一直开启
client.upload("/tmp/test1/","/home/test1/5min.csv")#第一个为hadoop中hdfs目录,第二个为文件目录

运行结果如下:

hadoop fs -ls /test1#显示目录下文件
image

(三)、sparksql读hdfs数据

通过pyspark模块,调用sparksql,读取hdfs目录数据,然后做统计。
参考:pyspark读取hdfs, python sparksql函数

from pyspark.sql import SQLContext
sc = SparkContext()
sqlcontext = SQLContext(sc)
#format后面为告诉程序读取csv格式,load后面为hdfs地址,hdfs后面跟着hadoop的名字,然后文件目录(这块有点懵,如果报错,跟着报错查修)
data = sqlcontext.read.format("com.databricks.spark.csv").\
    options(header="true",inferschema="true").\
    load("hdfs://cdsw1.richstone.com/test1/5min.csv")
data.show(5)
result = data.groupBy("type").count().orderBy("count")
result.show()

原始表结构:

image
查询结果为,查询命令最好为spark-submit xxx.py
image
上一篇下一篇

猜你喜欢

热点阅读