scala - 如何使用 Spark hadoopFile 方法使用值类型 Text 的自定义输入格式?
问题描述
如何使用 Spark hadoopFile 方法使用值类型 Text 的自定义输入格式?例如OmnitureDataFileInputFormat
用于处理 Omniture Click Stream 数据?
解决方案
import org.rassee.omniture.hadoop.mapred.OmnitureDataFileInputFormat
import java.nio.charset.StandardCharsets
import org.apache.hadoop.io.{LongWritable, Text}
import org.apache.hadoop.mapred.InputFormat
val rddLines: RDD[String] =
sparkSession.sparkContext.hadoopFile(
path = path,
inputFormatClass = classOf[OmnitureDataFileInputFormat],
keyClass = classOf[LongWritable],
valueClass = classOf[Text]
)
.map(_._2.copyBytes()).map(new String(_, StandardCharsets.UTF_8))
推荐阅读
- python - 从具有匹配条件的集合中移除项目
- node.js - 通过 Codepipeline 在 Docker 上部署 Beanstalk 未完成
- php - 找不到方法商店和帖子 [LARAVEL]
- r - 使用 ggplot 在 R 中创建漂亮的叠加直方图
- javascript - 监听输入时按下的特定键 - ReactJS
- laravel - 如何在显示 laravel 视图中使用 Yajra 创建数据表?
- html - 无法启动 bigbluebutton html5。我尝试使用“meteor npm install”安装“npm start”,但它不起作用
- ios - 永远不会为 UICollectionViewDiffableDataSource 执行 CellProvider 闭包
- python-asyncio - Jupyterhub 自定义生成器启动长时间延迟
- c++ - OpenGL旋转glRectf()函数?