本文介绍Spark作业开发过程中,在本地上运行Spark作业并进行调试。
前提条件
已开通云原生多模数据库 Lindorm计算引擎的外网地址。
已将本地IP地址添加至Lindorm实例的白名单,具体操作请参见设置白名单。
已准备Spark作业项目。
本地运行Spark作业
已下载最新版Lindorm计算引擎环境的压缩包,下载链接为环境压缩包。
解压下载的压缩包,解压的路径可以自定义。
在本地配置计算引擎的环境变量,将解压路径设置为SPARK_HOME环境变量。
Windows系统配置计算引擎的环境变量步骤如下:
打开本地的系统属性页面并单击环境变量。
在环境变量窗口,单击系统变量区域下的新建。
在新建系统变量窗口,输入以下参数。
变量名:填写SPARK_HOME。
变量值:输入压缩包解压的路径。
单击确定。
单击应用。
Linux系统配置计算引擎的环境变量,请执行
export SPARK_HOME="<压缩包解压的路径>"
命令并将该命令添加至~/.bashrc
中。
打包Spark作业项目,并使用$SPARK_HOME/bin/spark-submit提交Spark作业。作业提交示例如下。
以Spark作业示例为例,下载并解压该项目。
配置以下参数:
参数
参数值
说明
spark.sql.catalog.lindorm_table.url
ld-bp1z3506imz2f****-proxy-lindorm-pub.lindorm.rds.aliyuncs.com:30020。
访问Lindorm宽表引擎的公网地址。请填写Lindorm实例宽表引擎的HBase Java API公网访问地址,仅支持相同Lindorm实例的宽表引擎访问。
spark.sql.catalog.lindorm_table.username
默认用户名root。
访问Lindorm宽表引擎的用户名。
spark.sql.catalog.lindorm_table.password
默认密码root。
访问Lindorm宽表引擎的密码。
$SPARK_HOME/bin/spark-submit \ # 您可以通过使用 --jars 添加作业依赖jar包,更多参数请参考 spark-submit -h --class com.aliyun.lindorm.ldspark.examples.LindormSparkSQLExample \ lindorm-spark-examples/target/lindorm-spark-examples-1.0-SNAPSHOT.jar
说明提交Spark作业项目时如果不指定运行方式,默认是在本地上运行,也可以通过spark.master=local[*]参数指定。
根据SQL代码中涉及的Schema,创建对应的库表结构。
使用
mvn clean package
进行作业打包。
完成作业的本地开发后,可以通过提交JAR作业的方式将Spark作业提交至云上运行,具体操作请参见步骤一:依赖配置,请将Spark作业中使用的连接地址修改为Lindorm计算引擎的专有网络连接地址。