全部产品

DDI PySpark示例及库的使用

更新时间:2020-11-05 10:29:31

本文介绍如何使用阿里云 Databricks 数据洞察的Notebook进行pyspark开发。

前提条件

  • 已注册阿里云账号,详情请参见阿里云账号注册流程

  • 已开通对象存储 OSS服务。

  • 已开通 Databricks数据洞察服务。

  • 已完成云账号的授权,详情请参见角色授权

注意

若要使用其他数据源进行数据开发,需开通相应服务。本示例采用OSS数据源。

步骤一:创建Databricks 数据洞察集群

步骤二:添加依赖库并安装

根据开发需要,添加相应的依赖库

  • 添加matplotlib库,本示例使用PyPI方式添加,详情参见管理库

    1602296726221_877079D2-DF8A-48D4-B506-BE5725EFCD84

  • 单击安装按钮,安装依赖到开发集群。

    1602297002494_2C861A22-6010-4522-9198-67AE42E35ECC

  • 等待安装完成,可单击任务按钮查看。

    1602297145801_49CB37B0-1322-4DC6-B83B-CE817FDC76A2

步骤三:获取数据并上传对象存储 OSS

步骤四:数据开发

  • Notebook使用,详情参见Notebook使用

  • 数据开发,将以下代码写入note文件,如下图所示。

%pyspark
import matplotlib.pyplot as plt 

data = sc.textFile('oss://xxx/xxx/TEST.txt')

data = data.flatMap(lambda line: line.split(" "))

resultRdd = data.map(lambda word: (word,1)).reduceByKey(lambda a,b:a+b)

result = resultRdd.sortBy(lambda x: x[1], False)

resultColl = resultRdd.collect()

x = result.keys().collect()
y = result.values().collect()
plt.bar(x, y, color="b", label="count")
plt.minorticks_on()
plt.title("WordCount")
plt.xlabel("word")
plt.ylabel("count")
plt.legend()
z.show(plt)
  • 单击右上角运行按钮,等待任务结束查看结果

    1602297322169_B32652DA-79D0-44E6-B95A-4FFD75519D51