.NET Apache Spark 连接Mysql

环境准备 可以借鉴 .NET for Apache Spark 入门 | Microsoft Learn

1、win 环境准备

        win环境 需要下载 java 1.8  Java Downloads | Oracle

       spark-3.2.1-bin-hadoop3.2  Index of /dist/spark/spark-3.2.1

        本人使用环境 如下图

 如需别的版本请查看  .NET Spark 发行说明

 下载完成 spark-3.2.1-bin-hadoop3.2 请自行提取到你自己硬盘目录,最好不要放在中文命名文件中,本人自己是放在 D:\spark-3.2.1-bin-hadoop3.2

  开始配置win 环境变量 

HADOOP_HOME   D:\SparkNet\spark-3.2.1-bin-hadoop3.2

 然后再系统环境变量Path 中 添加 %SPARK_HOME%\bin 

现在可以进入 win+R 命令行 cmd 试试

spark-submit --version

如果该命令运行并打印出版本信息,则可转到下一步。

如果收到 'spark-submit' is not recognized as an internal or external command 错误,请确保已打开新的命令提示符。

安装 .NET for Apache Spark

从 .NET for Apache Spark GitHub 下载 Microsoft.Spark.Worker。 例如,如果你在使用 Windows 计算机并计划使用 .NET Core,请下载 Windows x64 netcoreapp3.1 版本

要提取 Microsoft.Spark.Worker:

  • 找到你已下载的 Microsoft.Spark.Worker.netcoreapp3.1.win-x64-1.0.0.zip 文件。
  • 右键单击并选择“7-Zip”->“提取文件...”。
  • 在“提取到”字段输入“C:\bin” 。
  • 取消勾选“提取到”字段下面的复选框。
  • 选择“确定”。

安装 WinUtils(仅限 Windows)

.NET for Apache Spark 要求与 Apache Spark 一起安装 WinUtils。 下载 winutils.exe。 然后,将 WinUtils 复制到 C:\bin\spark-3.0.1-bin-hadoop2.7\bin。

 备注

如果你在使用其他版本的 Hadoop(相关批注可参见 Spark 安装文件夹名称的末尾),请选择与你的 Hadoop 版本兼容的 WinUtils 版本

设置 DOTNET_WORKER_DIR 并检查依赖项

运行以下命令之一来设置 DOTNET_WORKER_DIR 环境变量,.NET 应用使用该变量查找 .NET for Apache Spark 辅助角色二进制文件。 确保将 <PATH-DOTNET_WORKER_DIR> 替换为你下载并提取 Microsoft.Spark.Worker 的目录。 在 Windows 上,确保在管理员模式下运行命令提示符。

win 控制台复制

setx /M DOTNET_WORKER_DIR <PATH-DOTNET-WORKER-DIR>

最后,仔细检查是否可从命令行运行 dotnetjavaspark-shell,然后再转到下一部分。

 2、工程建立

vs2022 建立控制台程序-引用NuGet包 :Microsoft.Spark ,如下图 

 编写代码

 SparkSession spark = SparkSession
        .Builder()
        .AppName("Connect to SQL Server")
        .GetOrCreate();

    string connection_url = "jdbc:mysql://{链接地址}:3306/{database}?useUnicode=true&characterEncoding=utf-8";
    string dbtable = "<database table to access>";
    string user = "<Login user name>";
    string password = "<Login user password>";

    DataFrame jdbcDF = spark.Read()
        .Format("jdbc")
        .Option("driver", "com.mysql.jdbc.Driver")
        .Option("url", connection_url)
        .Option("dbtable", dbtable)
        .Option("user", user)
        .Option("password", password).Load();
    jdbcDF.Show(); 

 使用mysql 需要去下载mysql jdbc  MySQL :: MySQL Community Downloads

 

 

 下载之后jar 文件复制到 spark-3.2.1-bin-hadoop3.2 文件夹中jars中

 启动运行 

spark-submit --class org.apache.spark.deploy.dotnet.DotnetRunner --master local bin\Debug\net6.0\microsoft-spark-3-2_2.12-2.1.1.jar dotnet bin\Debug\net6.0\SparkNet.dll

 成功链接到mysql 查询分析到表数据

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值