草庐IT

scala-lang

全部标签

scala - 使用 Spark 从目录中读取多个文件

我正在尝试解决这个问题problem在kaggle使用spark:输入的层次结构是这样的:drivers/{driver_id}/trip#.csve.g.,drivers/1/1.csvdrivers/1/2.csvdrivers/2/1.csv我想读取父目录"drivers",对于每个子目录,我想创建一个pairRDD,键为(sub_directory,file_name)和值作为文件的内容我检查了this链接并尝试使用valtext=sc.wholeTextFiles("drivers")text.collect()失败并出现错误:java.lang.ArrayIndexOutO

java - Spark Java scala 错误

嘿,我想在我的Java项目中使用spark:我已经将此依赖项添加到我的pom文件中:org.apache.sparkspark-core_2.111.4.0我试过这段代码:importorg.apache.spark.api.java.JavaSparkContext;publicclasssparkSQL{publicvoidquery(){JavaSparkContextsc=newJavaSparkContext();}}我在我的main中调用了这个函数,但我得到了这个错误:Exceptioninthread"main"java.lang.NoClassDefFoundError

scala - Spark : how to include dependencies with build/sbt compile

我是spark的新手,但正在尝试进行一些开发。我正在遵循thesparkdeveloperpage中的“减少构建时间”说明.创建正常程序集后,我编写了一些依赖于一个特定jar的类。我在spark-shell中测试了我的包,通过定义SPARK_CLASSPATH,我已经能够在其中包含我的jar,但问题在于实际编译我的代码。我想要实现的是在编译我添加的包时包含那个jar(使用build/sbtcompile)。我可以通过在build/sbt文件或sbt-launch-lib.bash中添加我的jar路径来做到这一点吗?如果可以的话,怎么做?(旁注:我还不想将jar包含在程序集中,因为我对它

java - 错误 : java. lang.IllegalArgumentException:即使使用变通方法,比较方法也违反了其一般约定

我已经花了两天时间来解决这个错误,即使我尝试了几个stackoverflow帖子“-Djava.util.Arrays.useLegacyMergeSort=true”中建议的解决方法,但它也不起作用。这是我的命令及其返回错误的详细信息:命令:hadoopjarCloudBrush.jar-Djava.awt.headless=true-Djava.util.Arrays.useLegacyMergeSort=true-reads/Ec10k-asmEc10k_Brush-k21-readlen36错误:Error:java.lang.IllegalArgumentException:

mysql - 线程 "main"java.lang.IncompatibleClassChangeError : Found class org. apache.hadoop.mapreduce.JobContext 中的异常,但接口(interface)是预期的

我正在使用hadoop1.0.3和sqoop1.4.6。我正在尝试将一个表从MySQL导入到hdfs。我收到以下错误:Exceptioninthread"main"java.lang.IncompatibleClassChangeError:Foundclassorg.apache.hadoop.mapreduce.JobContext,butinterfacewasexpectedatorg.apache.sqoop.config.ConfigurationHelper.getJobNumMaps(ConfigurationHelper.java:65)atcom.cloudera.

scala - Spark : how to zip an RDD with each partition of the other RDD

假设我有一个RDD[U],它总是只包含1个分区。我的任务是用位于n个分区上的另一个RDD[T]的内容填充这个RDD。最终输出应该是RDD[U]的n个分区。我最初尝试做的是:valnewRDD=firstRDD.zip(secondRDD).map{case(a,b)=>a.insert(b)}但是我得到一个错误:Can'tzipRDDswithunequalnumbersofpartitions我可以在RDDapi中看到documentation有一个名为zipPartitions()的方法。是否有可能,如果可以,如何使用此方法将RDD[T]中的每个分区压缩为RDD[U]的单个分区并执

scala - 在我的用例中通过高效使用 Spark 或 pig 组?

我有一千万条记录,是customerID和cityIDpair。有几千万唯一的客户ID,只有几百个唯一的城市ID。我想进行合并以获取针对特定客户ID聚合的所有城市ID,并拉回所有记录。我想在Hadoop上使用Pig按客户ID分组来执行此操作,并想知道这是否是最有效的方法。还想知道在Hadoop中排序是否有开销(我不关心customer1是否在customer2之前,只要为customer1和customer2正确聚合了所有城市)?您认为Spark更好吗?这里是一个输入的例子,CustomerID1City1CustomerID2City2CustomerID3City1Customer

hadoop - 将 S3 连接器与 Cloud Dataproc 结合使用时出现 java.lang.VerifyError

我正在尝试使用S3connector与GoogleCloudDataproc我遇到了java.lang.VerifyError。这似乎发生在我没有修改过的全新集群上。这是一个例子:$hadoopfs-lss3:///Exceptioninthread"main"java.lang.VerifyError:Cannotinheritfromfinalclassatjava.lang.ClassLoader.defineClass1(NativeMethod)atjava.lang.ClassLoader.defineClass(ClassLoader.java:760)atjava.se

scala - ETL Scala 脚本出现异常

我正在用scala脚本编写简单的ETL过程并以“spark-shell-irawetl.scala”运行,但是出现异常“找不到表”。我还检查了文件,它正在正确选择。这是示例代码importjava.io.FileimportsqlContext.implicits._importscala.io.Sourceimportorg.apache.spark.SparkContextimportorg.apache.spark.SparkContext._importorg.apache.spark.SparkConfimportorg.apache.spark.sql.SQLContext

成功解决Java.lang.OutOfMemoryError: GC overhead limit exceeded错误

成功解决Java.lang.OutOfMemoryError:GCoverheadlimitexceeded错误本文目录一、问题分析二、报错原因三、解决思路四、解决方法总结一、问题分析在实际的Java开发中,我们可能会遇到一个很常见的报错:“java.lang.OutOfMemoryError:GCoverheadlimitexceeded”。这个报错出现时,往往是因为JVM中的GC(GarbageCollection,垃圾回收)过于频繁,以至于大部分的CPU时间都在做GC操作,而无法正常执行程序,这时,就会抛出这个错误。二、报错原因"java.lang.OutOfMemoryError:GC