草庐IT

scala-cats

全部标签

scala - 如何使用 Spark 独立集群在工作节点上管理多个执行程序?

到目前为止,我只在Hadoop集群上使用Spark,并将YARN作为资源管理器。在那种类型的集群中,我确切地知道要运行多少个执行程序以及资源管理是如何工作的。但是,知道我正在尝试使用独立的SparkCluster,我有点困惑。纠正我错误的地方。来自thisarticle,默认情况下,一个工作节点使用该节点的所有内存减去1GB。但我知道通过使用SPARK_WORKER_MEMORY,我们可以使用更少的内存。例如,如果节点的总内存为32GB,但我指定为16GB,那么Sparkworker不会在该节点上使用超过16GB的内存吗?但是执行者呢?假设我想在每个节点上运行2个执行程序,我可以通过在

scala - Spark 会使用此 sortByKey/map/collect 序列保留键顺序吗?

让我们说,我们有这个。valsx=sc.parallelize(Array((0,39),(4,47),(3,51),(1,98),(2,61)))我们后来称之为。valsy=sx.sortByKey(true)这会让sy=RDD[(0,39),(1,98),(2,61),(3,51),(4,47)]然后我们做collected=sy.map(x=>(x._2/10,x._2)).collect我们会一直得到以下信息吗?我的意思是,尽管更改了键值,是否会保留原始键顺序?collected=[(3,39),(9,98),(6,61),(5,51),(4,47)]

scala - 将 RDD[String] 转换为 RDD[Row] 到 Dataframe Spark Scala

我正在读取一个有很多空格的文件,需要过滤掉空格。之后我们需要将其转换为数据框。下面的示例输入。2017123¦¦10¦running¦00000¦111¦-EXAMPLE我的解决方案是使用以下函数来解析所有空格并修剪文件。deftruncateRDD(fileName:String):RDD[String]={valexample=sc.textFile(fileName)example.map(lines=>lines.replaceAll("""[\t\p{Zs}]+""",""))}但是,我不确定如何将它放入数据框中。sc.textFile返回一个RDD[String]。我尝试了

scala - Spark BigQuery 连接器 : Writing ARRAY type causes exception: ""Invalid value for: ARRAY is not a valid value""

在GoogleCloudDataproc中运行Spark作业。使用BigQueryConnector将作业输出的json数据加载到BigQuery表中。BigQueryStandard-SQLdatatypesdocumentation表示支持ARRAY类型。我的Scala代码是:valoutputDatasetId="mydataset"valtableSchema="["+"{'name':'_id','type':'STRING'},"+"{'name':'array1','type':'ARRAY'},"+"{'name':'array2','type':'ARRAY'},"+

scala - 序列化和自定义 Spark RDD 类

我正在用Scala编写自定义SparkRDD实现,并且正在使用Sparkshell调试我的实现。我现在的目标是:customRDD.count毫无异常(exception)地成功。现在这就是我得到的:15/03/0623:02:32INFOTaskSchedulerImpl:Addingtaskset0.0with1tasks15/03/0623:02:32ERRORTaskSetManager:Failedtoserializetask0,notattemptingtoretryit.java.lang.reflect.InvocationTargetExceptionatsun.r

scala - 对 Spark 中的 Double/Int 值进行空检查

我是Spark的新手,如何检查Double中的Null值和scala或Spark中的Int值。像String我们可以这样做:valvalue=(FirstString.isEmpty())match{casetrue=>SecondStringcase_=>FirstString}我搜索了很多,但只找到了字符串值。您能否也建议我使用其他数据类型。提前致谢。 最佳答案 null仅适用于Scala中的AnyRef(即非原始类型)类型。AnyVal类型不能设置为null。例如://thebelowareAnyVal(s)andwontco

scala - 将文件从本地移动到 HDFS

我的环境使用Spark、Pig和Hive。我在用Scala(或与我的环境兼容的任何其他语言)编写可以将文件从本地文件系统复制到HDFS的代码时遇到了一些麻烦。有人对我应该如何进行有任何建议吗? 最佳答案 其他答案对我不起作用,所以我在这里写另一个。试试下面的Scala代码:importorg.apache.hadoop.conf.Configurationimportorg.apache.hadoop.fs.FileSystemimportorg.apache.hadoop.fs.PathvalhadoopConf=newConfi

scala - Intellij Idea - 运行 Spark 应用程序时禁用信息消息

在运行使用ApacheSpark和Hbase/Hadoop库的应用程序时,我收到了很多消息。例如:0[main]DEBUGorg.apache.hadoop.metrics2.lib.MutableMetricsFactory-fieldorg.apache.hadoop.metrics2.lib.MutableRateorg.apache.hadoop.security.UserGroupInformation$UgiMetrics.loginSuccesswithannotation@org.apache.hadoop.metrics2.annotation.Metric(abou

scala - 从 scala 中的 map((tuple),(tuple)) 中读取元组的各个元素

reducebykey生成的输出是一个ShuffledRDD,key-value都是多个字段的数组。我需要提取所有字段并写入配置单元表。下面是我正在尝试的代码:sqlContext.sql(s"selectSUBS_CIRCLE_ID,SUBS_MSISDN,EVENT_START_DT,RMNG_NW_OP_KEY,ACCESS_TYPEFROMFACT.FCT_MEDIATED_USAGE_DATA")valUSAGE_DATA_Reduce=USAGE_DATA.map{USAGE_DATA=>((USAGE_DATA.getShort(0),USAGE_DATA.getStri

scala - 使用正则表达式时 Spark S3 访问被拒绝

我想知道为什么尝试使用正则表达式从S3使用Spark读取数据时会有所不同?我在“测试”桶中有一些文件:/test/logs/2016-07-01/a.gz/test/logs/2016-07-02/a.gz/test/logs/2016-07-03/a.gz这两部作品:vallogRDD=sqlContext.read.json("s3a://test/logs/2016-07-01/*.gz")orvallogRDD=sqlContext.read.json("s3n://test/logs/2016-07-01/*.gz")但是当我这样做的时候:vallogRDD=sqlConte