PySpark 连接 SQL Server 数据库的几种方法
在 PySpark 中连接 SQL Server 数据库有以下几种方式:\n\n1. 使用 JDBC 连接:使用 JDBC 连接器可以直接连接到 SQL Server 数据库。首先需要下载并添加适当的 JDBC 驱动程序,然后使用 pyspark.sql 模块的 DataFrame 对象中的 jdbc 方法来连接数据库。\n\npython\nfrom pyspark.sql import SparkSession\n\nspark = SparkSession.builder \n .appName("SQL Server Connection") \n .config("spark.driver.extraClassPath", "/path/to/sqljdbc.jar") \n .getOrCreate()\n\nurl = "jdbc:sqlserver://<server>:<port>;databaseName=<database>"\ntable = "<table>"\nproperties = {\n "user": "<username>",\n "password": "<password>",\n "driver": "com.microsoft.sqlserver.jdbc.SQLServerDriver"\n}\n\ndf = spark.read.jdbc(url=url, table=table, properties=properties)\n\n\n2. 使用 ODBC 连接:使用 ODBC 驱动程序连接 SQL Server 数据库。首先需要安装适当的 ODBC 驱动程序,然后使用 pyspark.sql 模块的 DataFrame 对象中的 odbc 方法来连接数据库。\n\npython\nfrom pyspark.sql import SparkSession\n\nspark = SparkSession.builder \n .appName("SQL Server Connection") \n .config("spark.driver.extraClassPath", "/path/to/odbc.jar") \n .getOrCreate()\n\nurl = "jdbc:odbc:<dsn_name>"\ntable = "<table>"\nproperties = {\n "user": "<username>",\n "password": "<password>",\n "driver": "sun.jdbc.odbc.JdbcOdbcDriver"\n}\n\ndf = spark.read.jdbc(url=url, table=table, properties=properties)\n\n\n3. 使用 PyODBC 库:PyODBC 是一个 Python 库,可以用于连接 SQL Server 数据库。首先需要安装 PyODBC 库,然后使用 pyspark.sql 模块的 DataFrame 对象中的 createDataFrame 方法将 PyODBC 返回的结果集转换为 Spark DataFrame。\n\npython\nimport pyodbc\nfrom pyspark.sql import SparkSession\n\nspark = SparkSession.builder \n .appName("SQL Server Connection") \n .getOrCreate()\n\nconnection_string = "DRIVER={SQL Server};SERVER=<server>;DATABASE=<database>;UID=<username>;PWD=<password>"\ncnxn = pyodbc.connect(connection_string)\ncursor = cnxn.cursor()\ncursor.execute("SELECT * FROM <table>")\n\nrows = cursor.fetchall()\ndf = spark.createDataFrame(rows)\n\n\n请根据您的具体情况选择其中一种方法来连接 SQL Server 数据库。
原文地址: https://www.cveoy.top/t/topic/p5me 著作权归作者所有。请勿转载和采集!