全部产品

OSS

本文介绍如何使用Databricks 读写OSS文件系统数据

前提条件

警告

首次使用DDI产品创建的Bucket为系统目录Bucket,不建议存放数据,您需要再创建一个Bucket来读写数据。

说明

DDI访问OSS路径结构:oss://BucketName/Object

  • DDI支持免密读写,如果是读写不同账户的OSS数据,需要声明accessKeyId和accessKeySecret

  • BucketName为您的存储空间名称。

  • Object为上传到OSS上的文件的访问路径。

例:读取在存储空间名称为databricks-demo-hangzhou文件路径为demo/The_Sorrows_of_Young_Werther.txt的文件

// 从oss地址读取文本文档
val dataRDD = sc.textFile("oss://databricks-demo-hangzhou/demo/The_Sorrows_of_Young_Werther.txt")

读OSS数据代码实现WordCount

示例文本下载:The_Sorrows_of_Young_Werther.txt

%spark
// 从oss地址读取文本文档(注意oss文件在账号下上传到对应目录)
val text = sc.textFile("oss://databricks-data-source/demo/The_Sorrows_of_Young_Werther.txt")
// 使用Scala做WordCount处理
val counts = text.flatMap(line => line.split(" ")).map(word => (word, 1)).reduceByKey(_+_)
//数据展示前5条信息
counts.take(5).foreach(print)
data

结果写入到OSS

%spark
//将数据写入到
counts.coalesce(1).saveAsTextFile("oss://databricks-data-source/WordCount示例-Result-Zeppelin-001.txt")
data