草庐IT

Spark Streaming实战

作者:禅与计算机程序设计艺术1.简介ApacheSpark™作为世界上最流行的开源大数据计算框架之一,在近几年越来越受到大家的关注。基于Spark的分布式计算能力和速度的突飞猛进,使其成为许多企业应用中不可或缺的一环。但Spark本身所提供的高级特性如:SQL、Streaming等也带来了一些新的复杂性。为了更好的理解SparkStreaming,以及如何在实际生产环境中应用SparkStreaming,作者不得不花费不少心思研究。因此他着手撰写一本《SparkStreaming实战》。这本书将系统地介绍SparkStreaming的概念、原理和特性,并通过真实案例加深读者对其核心概念和功能的

windows - 在 Windows 和 Apache Toree Kernel 上使用 Jupyter 以实现 Spark 兼容性

我正在尝试安装ApacheToree内核以实现spark兼容性,但我遇到了一条奇怪的环境消息。这是我遵循的过程:使用Jupyter4.1.0安装最新的Anaconda版本运行:pipinstall--pretoree运行:jupytertoreeinstall--interpreters=PySpark,SparkR,Scala,SQL只真正对Scala内核感兴趣,但我安装了所有解释器。操作系统是windows7,没有选择使用虚拟机或linux。这是我修改后使用cygwin执行run.shbash脚本的kernel.json文件:{"language":"scala","display

无法连接到远程Apache Spark

我是新手apachespark而且,我在尝试从本地计算机连接到包含SPARK工作实例的远程服务器时遇到了一些问题。我成功地设法将VISSSH隧道连接到该服务器JSCH但是我会收到以下错误:线程“main”java.lang.nosuchmethoderror中的异常:scala.predef$。$scope()lscala/xml/xml/topscope$;atorg.apache.spark.ui.jobs.AllJobsPage.(AllJobsPage.scala:39)atorg.apache.spark.ui.jobs.JobsTab.(JobsTab.scala:38)atorg

Spark 之 deploy

ExecutorRunnerorg.apache.spark.deploy.worker.ExecutorRunnerprivate[worker]defstart():Unit={workerThread=newThread("ExecutorRunnerfor"+fullId){overridedefrun():Unit={fetchAndRunExecutor()}}workerThread.start()//Shutdownhookthatkillsactorsonshutdown.shutdownHook=ShutdownHookManager.addShutdownHook{()=

Spark-3.2.4 高可用集群安装部署详细图文教程

目录一、Spark环境搭建-Local1.1服务器环境 1.2基本原理 1.2.1 Local下的角色分布1.3搭建 1.3.1安装Anaconda 1.3.1.1添加国内阿里源 1.3.2创建pyspark环境 1.3.3安装spark1.3.4添加环境变量 1.3.5启动spark 1.3.5.1bin/pyspark 1.3.5.2 WEBUI(4040)1.3.5.3 spark-shell 1.3.5.4 bin/spark-submit1.3.6 pyspark/spark-shell/spark-submit对比二、Spark环境搭建-Standalone2.1 Standalo

windows - Spark 2.0 : Relative path in absolute URI (spark-warehouse)

我正在尝试从Spark1.6.1迁移到Spark2.0.0,但在尝试将csv文件读入SparkSQL时出现奇怪的错误。以前,当我在pyspark中从本地磁盘读取文件时,我会这样做:星火1.6df=sqlContext.read\.format('com.databricks.spark.csv')\.option('header','true')\.load('file:///C:/path/to/my/file.csv',schema=mySchema)在最新版本中我认为它应该是这样的:星火2.0spark=SparkSession.builder\.master('local[*]

开启Back Pressure使生产环境的Spark Streaming应用更稳定、有效

        为了SparkStreaming应用能在生产中稳定、有效的执行,每批次数据处理时间(批处理时间)必须非常接近批次调度的时间间隔(批调度间隔),并且要一直低于批调度间隔。如果批处理时间一直高于批调度间隔,调度延迟就会一直增长并且不会恢复。最终,SparkStreaming应用会变得不再稳定。另一方面,如果批处理时间长时间远小于批调度间隔,就会浪费集群资源。        当SparkStreaming与Kafka使用DirectAPI集群时,我们可以很方便的去控制最大数据摄入量--通过一个被称作spark.streaming.kafka.maxRatePerPartition的参

2023_Spark_实验十四:SparkSQL入门操作

1、将emp.csv、dept.csv文件上传到分布式环境,再用 hdfs  dfs-putdept.csv/input/hdfs  dfs-putemp.csv/input/将本地文件put到hdfs文件系统的input目录下2、或者调用本地文件也可以。区别:sc.textFile("file:///D:\\temp\\emp.csv")import org.apache.spark.sql.SparkSessionimport org.apache.spark.sql.types._import spark.implicits._caseclassEmp(empno:Int,ename:S

apache-kafka - Spark Streaming scala 性能极慢

我有以下代码:-caseclassevent(imei:String,date:String,gpsdt:String,dt:String,id:String)caseclasshistoryevent(imei:String,date:String,gpsdt:String)objectkafkatesting{defmain(args:Array[String]){valclients=newRedisClientPool("192.168.0.40",6379)valconf=newSparkConf().setAppName("KafkaReceiver").set("spar

apache-spark - Spark-redis:数据帧写入时间太慢

我是ApacheSpark/Redis用户,最近我尝试了spark-redis对于一个项目。该程序正在生成大约300万行的PySpark数据帧,我正在使用以下命令将其写入Redis数据库df.write\.format("org.apache.spark.sql.redis")\.option("table","person")\.option("key.column","name")\.save()如GitHubprojectdataframepage中的建议.但是,对于相同的Spark集群配置(相同数量的EC2实例和实例类型),我的写入时间不一致。有时它发生得非常快,有时又太慢了。