最简大数据开发环境(二)Python+Spark版

 

最简大数据开发环境(一) Scala+Spark版

最简大数据开发环境(二) Python+Spark版

  一年前,分享了基于sbt搭建的用Scala语言开发Spark应用的教程,最近又用Python语言实践了开发Spark应用,再次做个分享。

 

  这里同样用Vscode工具做演示,自行下载安装:

  •   创建项目文件夹

  mkdir LittleSpider

  •   打开终端
  •   创建虚拟环境

  python -m venv .venv

  •   安装pyspark

  python -m pip install pyspark

  如果一切顺利,到这里其实已经配置好了。下面给出Mongodb数据库和Sql Server数据库连接的例子,方便大家参考。  

from pyspark.sql import SparkSession

# 注意spark.jars.packages 是java包路径管理
# 默认是maven库。如果本地没有这个包,调试时会自动下载。
# 以下两个例子分开执行,两个连接组件包内部类有重名,在java虚拟机中会报错

#例一:读取mongodb数据源
ip = 'localhost'
spark = SparkSession.builder.appName("myApp")\
    .config("spark.jars.packages", "org.mongodb.spark/mongo-spark-connector_2.12:10.1.1")\
    .config("spark.mongodb.read.connection.uri", f"mongodb://{ip}/erp.test")\
    .config("spark.mongodb.write.connection.uri", f"mongodb://{ip}/erp.test")\
    .getOrCreate()
mongo_df = spark.read.format("mongodb").load()
print(mongo_df.head())

#例二:读取Sql Server数据源
#注意Driver,需要明确给出,不然会报错误
# ip = 'localhost'
# url = f'jdbc:sqlserver://{ip}:1433;databaseName=erp;'
# spark = SparkSession.builder.appName("Spark MSSQL Connector")\
#     .config("spark.jars.packages", "com.microsoft.azure:spark-mssql-connector_2.12:1.2.0")\
#     .getOrCreate()
# mssql_df = spark.read.format("com.microsoft.sqlserver.jdbc.spark")\
#     .option('url', url)\
#     .option('dbtable', 'test')\
#     .option('user', 'test')\
#     .option('password', 'test123')\
#     .option("Driver", "com.microsoft.sqlserver.jdbc.SQLServerDriver")\
#     .load()
# print(mssql_df.head())

 

posted @ 2023-02-24 16:22  MissBug  阅读(127)  评论(0编辑  收藏  举报