草庐IT

spark-submit

全部标签

amazon-web-services - Spark/Hadoop 不支持 AWS S3 上的 SSE-KMS 加密

我正在尝试使用KMSkey(SSE-KMS)通过服务器端加密在S3上保存一个rdd,但出现以下异常:Exceptioninthread"main"com.amazonaws.services.s3.model.AmazonS3Exception:StatusCode:400,AWSService:AmazonS3,AWSRequestID:695E32175EBA568A,AWSErrorCode:InvalidArgument,AWSErrorMessage:Theencryptionmethodspecifiedisnotsupported,S3ExtendedRequestID:

scala - 使用 Spark 中的动态列将 RDD 数据写入 CSV - Scala

我正在从HDFS目录读取多个文件,并且对于每个文件,生成的数据使用以下方式打印:frequencies.foreach(x=>println(x._1+":"+x._2))打印的数据是(对于File1.txt):'text':45'data':100'push':150其他文件的key可能不同,例如(File2.txt):'data':45'lea':100'jmp':150key不一定在所有文件中都相同。我希望将所有文件数据写入以下格式的.csv文件:FilenametextdatapushleajmpFile1.txt4510015000File2.txt0450100150...

scala - 卡夫卡+ Spark 流: Multi topic processing in single job

Kafka中有40个主题和编写的SparkStreaming作业,每个主题处理5个表。sparkstreaming作业的唯一目标是读取5个kafka主题并将其写入相应的5个hdfs路径。大多数时候它工作正常,但有时它会将主题1数据写入其他hdfs路径。下面的代码试图归档一个sparkstreaming作业来处理5个主题并将其写入相应的hdfs,但是这个将主题1数据写入HDFS5而不是HDFS1。请提供您的建议:importjava.text.SimpleDateFormatimportorg.apache.kafka.common.serialization.StringDeseria

hadoop - Spark 看不到默认以外的 Hive 数据库

我尝试通过创建HiveContext通过Spark2.2.1查询Hive表。事实证明,Spark(无论我是通过spark-submit提交作业还是在pysparkshell中运行它——效果相同)都可以工作,但只能看到Hive中的默认数据库,而看不到任何其他数据库。似乎这个问题已经知道一段时间了,所有建议都是关于调整诸如--deploy-mode和--master之类的Spark参数并将hive-site.xml文件显式传递给Spark。在阅读了我能找到的关于这个问题的所有内容后,我将spark-submit命令更改为以下内容:/bin/spark-submit--driver-clas

scala - 在 HDFS 上预组合表并在 Spark 中读取零混洗

上下文我有两个表,作为我的spark作业的一部分,我正在加入/联合分组,这在我每次运行作业时都会导致大量洗牌。我想通过一次存储联合分组数据来分摊所有作业的成本,并将已经联合分组的数据用作我的常规Spark运行的一部分以避免混洗。为了尝试实现这一点,我在HDFS中以Parquet格式存储了一些数据。我正在使用Parquet重复字段来实现以下架构(date,[aRecords],[bRecords])其中[aRecords]表示aRecord数组。我还使用通常的write.partitionBy($"date")在HDFS上按日期对数据进行分区。在这种情况下,aRecords和bRecor

docker - Hadoop Spark docker swarm 其中 pyspark 给出 BlockMissingException 但文件很好

基于https://github.com/gotthardsen/docker-hadoop-spark-workbench/tree/master/swarm我有一个带有hadoop、spark、hue和jupyternotebook设置的dockerswarm设置。我使用Hue将文件上传到hdfs,从hue或名称节点上的hdfs下载或查看文件没有问题。没有丢失block,文件检查表明一切正常。但是当我尝试在jupyter中使用pyspark访问它时,我得到:org.apache.hadoop.hdfs.BlockMissingException:Couldnotobtainbloc

apache-spark - 从一个配置单元读取所有表,然后使用 spark 写入另一个集群上的另一个配置单元

我们可以通过将hive-site.xml放在spark的“conf”方向来从hive读取或写入表。但是现在我有两个可以相互连接的集群。让`假设hive1在集群上,hive2在另一个集群上现在我需要从配置单元1读取数据并做一些转换然后写入配置单元2,问题是我只能将一个hive-site.xml文件放入sparkconf,这意味着当我执行someDataFrame.write.saveAsTable("dbName.tableName"),会保存到hive1而不是hive2,因为spark只识别一个hive(hive1)我的问题是我可以使用spark读写不同集群上的不同配置单元吗?

scala - 使用Spark在hdfs中递归搜索所有文件名

我一直在寻找一种方法来获取Hadoop文件系统(hdfs)中目录及其子目录中的所有文件名。我发现我可以使用这些命令来获取它:sc.hadoopConfiguration.set("mapreduce.input.fileinputformat.input.dir.recursive","true")sc.wholeTextFiles(path).map(_._1)这是“wholeTextFiles”文档:ReadadirectoryoftextfilesfromHDFS,alocalfilesystem(availableonallnodes),oranyHadoop-supporte

apache-spark - PySpark:使用具有 1000 个字段但具有可变列数的行的模式创建 RDD->DF->Parquet

我正在尝试读取一个ElasticSearch索引,它有数百万个文档,每个文档都有可变数量的字段。我有一个模式,其中有1000个字段,每个字段都有自己的名称和类型。现在,当我通过ES-Hadoop连接器创建一个RDD并稍后通过指定模式转换为一个DataFrame时,它没有说-Inputrowdoesn'thaveexpectednumberofvaluesrequiredbytheschema我有几个问题。1.是否有可能有一个RDD/DF的行包含可变数量的字段?如果不是,除了为每列中缺失的字段添加空值外,还有什么替代方法?我看到默认情况下Spark将所有内容转换为StringType,因

scala - Spark : Calculate event end time on 30-minute intervals based on start time and duration values in previous rows

我有一个带有event_time字段的文件,每条记录每30分钟生成一次,并指示事件持续了多少秒。示例:Event_time|event_duration_seconds09:00|80009:30|180010:00|270012:00|100013:00|1000我需要将连续的事件转换为一个具有持续时间的事件。输出文件应如下所示:Event_time_start|event_time_end|event_duration_seconds09:00|11:00|530012:00|12:30|100013:00|13:30|1000ScalaSpark中是否有一种方法可以将数据帧记录与