草庐IT

spark-graphx

全部标签

java - Spark RDD- map 与 mapPartitions

我通读了map和mapPartitions之间的理论差异,并且很清楚何时在各种情况下使用它们。但我下面描述的问题更多是基于GCActivity和内存(RAM)。请阅读下面的问题:-=>我写了一个映射函数来将Row转换为String。因此,RDD[org.apache.spark.sql.Row]的输入将映射到RDD[String]。但是使用这种方法,将为RDD的每一行创建映射对象。因此,创建如此大量的对象可能会增加GCActivity。=>为了解决上面的问题,我想到了使用mapPartitions。因此,对象的数量等于分区的数量。mapPartitions将Iterator作为输入并接

java - Spark - 使用不可序列化的成员序列化对象

我将在Spark的上下文中提出这个问题,因为这就是我面临的问题,但这可能是一个普通的Java问题。在我们的spark作业中,我们有一个Resolver需要在我们所有的worker中使用(它在udf中使用)。问题是它不可序列化,我们无法将其更改为可序列化。解决方案是将其作为另一个可序列化的类的成员。所以我们最终得到:publicclassAnalyzerimplementsSerializable{transientResolverresolver;publicAnalyzer(){System.out.println("InitializingaResolver...");resolv

java - Spark 1.4.0 java.lang.NoSuchMethodError : com. google.common.base.Stopwatch.elapsedMillis()J

我正在使用spark1.4.0/hadoop2.6.0(仅适用于hdfs)并且在运行ScalaSparkPageRank示例时(examples/src/main/scala/org/apache/spark/examples/SparkPageRank.scala),我遇到以下错误:Exceptioninthread"main"java.lang.NoSuchMethodError:com.google.common.base.Stopwatch.elapsedMillis()Jatorg.apache.hadoop.mapred.FileInputFormat.listStatus

Spark---Master启动及Submit任务提交

一、SparkMaster启动1、Spark资源任务调度对象关系图2、集群启动过程Spark集群启动之后,首先调用$SPARK_HOME/sbin/start-all.sh,start-all.sh脚本中调用了“start-master.sh”脚本和“start-slaves.sh”脚本,在start-master.sh脚本中可以看到启动Master角色的主类:“org.apache.spark.deploy.master.Master”。在对应的start-slaves.sh脚本中又调用了start-slave.sh脚本,在star-slave.sh脚本中可以看到启动Worker角色的主类:

第五:Spark启动!

一.什么是SparkSpark是一种基于内存的快速、通用、可扩展的大数据分析计算引擎。是加州大学伯克利分校AMP实验室(Algorithms,Machines,andPeopleLab)开发的通用内存并行计算框架Spark得到了众多大数据公司的支持,这些公司包括Hortonworks、IBM、Intel、Cloudera、MapR、Pivotal、百度、阿里、腾讯、京东、携程、优酷土豆。当前百度的Spark已应用于大搜索、直达号、百度大数据等业务;阿里利用GraphX构建了大规模的图计算和图挖掘系统,实现了很多生产系统的推荐算法;腾讯Spark集群达到8000台的规模,是当前已知的世界上最大的

java - 使用 Spark Framework 为静态文件设置特定的 URL

我正在使用Spark为网页提供服务。对于静态文件,我将Spark初始化为statedhere:所以我有这个结构:/src/main/resources/public/|--foo/|--css/||--bootstrap.css|--js/|...|--img/...我制作了foo文件夹来做个小把戏,因为我的网页位于/foourl下。像这样:http://www.example.com/foo/index所以我的静态文件是这样加载的,例如:http://www.example.com/foo/css/bootstrap.css我现在想要的是拥有这个路径变量。因为我有不同的环境,例如,如

java - 无法将 Spring Boot Java 应用程序提交到 Spark 集群

我使用SpringBoot开发了一个Web应用程序,它使用ApacheSpark查询来自不同数据源(如Oracle)的数据。一开始我打算使用spark-submit脚本不提交就运行应用,但是好像不提交jar就连接不上Master集群了。我已经成功生成了一个uberjar,其中包含我正在使用的所有依赖项和子项目,但似乎Spark不喜欢SpringBoot应用程序。当我尝试提交应用程序时,spark显示以下错误:Exceptioninthread"main"java.lang.IllegalArgumentException:LoggerFactoryisnotaLogbackLogger

java - 在 Spark 中,是否可以在两个执行者之间共享数据?

我有一个非常大的只读数据,我希望同一节点上的所有执行程序都使用它。这在Spark中可能吗?我知道,你可以广播变量,但你能广播非常大的数组吗?在幕后,它是否在同一节点上的执行者之间共享数据?这如何能够在同一节点上运行的执行程序的JVM之间共享数据? 最佳答案 是的,你可以使用broadcast考虑数据时的变量是只读的(不可变的)。广播变量必须满足以下属性。适合内存不可变分发到集群因此,这里唯一的条件是您的数据必须能够适合一个节点上的内存。这意味着数据不应该像大表那样超大或超出内存限制。每个执行器都会收到广播变量的副本,并且该特定执行器

java - 在 Spark Scala 中处理微秒

我使用Scala将PostgreSQL表作为数据框导入到spark中。数据框看起来像user_id|log_dt--------|-------96|2004-10-1910:23:54.01020|2017-01-1212:12:14.931652我正在将此数据帧转换为log_dt的数据格式为yyyy-MM-ddhh:mm:ss.SSSSSS。为此,我使用以下代码使用unix_timestamp函数将log_dt转换为时间戳格式。valtablereader1=tablereader1Df.withColumn("log_dt",unix_timestamp(tablereader1

详细攻略spark

1.Hadoop生态圈组件介绍一、简介Hadoop是一个由Apache基金会所开发的分布式系统基础架构。Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。二、HDFSHadoopDistributedFileSystem,简称HDFS,是个分布式文件系统,是hadoop的一个核心部分。HDFS有这高容错性(fault-tolerent)的特点,并且设计用来部署在低廉价的(low-cost)的硬件上,提供了高吞吐量(high-throughout)来访问应用程序的数据,适合那些有着超大数据集(larged