本文介绍了到Amazon S3的Spark流检查点的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试将RDD检查点设置为非HDFS系统。从DSE document看起来不可能使用Cassandra文件系统。因此,我计划使用Amazon S3。但我找不到任何使用AWS的好例子。

问题

  • 如何使用Amazon S3作为检查点目录?是否仅够调用Ssc.check point(Amazons3url)?
  • 除了Hadoop文件系统之外,检查点还可以有其他可靠的数据存储吗?

推荐答案

来自link

解决方案1:

export AWS_ACCESS_KEY_ID=<your access>
export AWS_SECRET_ACCESS_KEY=<your secret>
ssc.checkpoint(checkpointDirectory)
将检查点目录设置为S3 URL-s3n://spark-streaming/checkpoint

,然后使用Spark Submit启动Spark应用程序。这适用于spark 1.4.2

解决方案2:

  val hadoopConf: Configuration = new Configuration()
  hadoopConf.set("fs.s3.impl", "org.apache.hadoop.fs.s3native.NativeS3FileSystem")
  hadoopConf.set("fs.s3n.awsAccessKeyId", "id-1")
  hadoopConf.set("fs.s3n.awsSecretAccessKey", "secret-key")

  StreamingContext.getOrCreate(checkPointDir, () => {
        createStreamingContext(checkPointDir, config)
      }, hadoopConf)

这篇关于到Amazon S3的Spark流检查点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-14 03:36