码迷,mamicode.com
首页 > 其他好文 > 详细

spark-day1

时间:2018-05-19 21:24:25      阅读:165      评论:0      收藏:0      [点我收藏+]

标签:读取数据   day   stop   文件   union   nbsp   方式   har   参数传递   

#!/usr/bin/python
# -*- coding: utf_8 -*-
from pyspark import SparkConf, SparkContext
import os, time


if __name__ == ‘__main__‘:
    # Create SparkConf
    # sparkConf:是一个SparkConf的对象,用来初始化程序,配置应用,传递初始参数
    # setAppName:指定rdd名称;setMaster:指定运行的线程
    sparkConf = SparkConf()         .setAppName("python Spark WordCount")         .setMaster("local")

    # Create SparkContext
    # sc:是一个SparkContext的对象,代表了对计算集群的连接,用来访问Spark,创建RDD
    # 将sprkConf作为参数传递给SparkContext
    sc =SparkContext(conf=sparkConf)

    ‘‘‘
        创建RDD:
            方式一:从本地集和并行化创建
            方式二:从外部文件系统读取数据(HDFS)
    ‘‘‘
    # ----------第一种方式:从集合并行化创建RDD----------
    datas = ["hadoop spark", "spark hive spark sql", "spark hadoop sql spark"]

    # parallelize方法:接收一个list数据集作为参数,可以快速创建RDD;缺点:需要将数据集都加载到内存中
    rdd1 = sc.parallelize(datas)


    # ----------第二种方式:从外部存储中读取数据创建RDD----------

    # textfile方法:将文本文件读取为一个存储字符串的RDD
    rdd2 = sc.textFile(‘T_CAR_20150401.csv‘)

    # 转化操作:
    car_rdd = rdd2.filter(lambda x:‘FB5018‘ in x)
    car2_rdd = rdd2.filter(lambda x:‘FB5093‘in x)
    total_rdd = car_rdd.union(car2_rdd)

    # 行动操作:
    # count:获取个数
    # first:获取第一条数据
    print rdd1.count()
    print rdd1.first()
    print total_rdd.count()
    print total_rdd.first()

    # 休眠一段时间,为WEB UI进行监控
    time.sleep(100000)

    # SparkContext stop
    sc.stop()

 

spark-day1

标签:读取数据   day   stop   文件   union   nbsp   方式   har   参数传递   

原文地址:https://www.cnblogs.com/octopuszy/p/9061544.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!