python - 从 Databricks Python Notebook 在 Azure Synapse 中批量插入 PySpark Dataframe
问题描述
使用批次
我有一个 PySpark 数据框,由 750 多个列和 250 万条记录组成,大约 6.5 GB。我正在从 Databricks python notebook 到 Azure Synapse 表进行批量插入(批量)。
以下是 Microsoft 文档中的示例代码 ( https://docs.databricks.com/data/data-sources/azure/synapse-analytics.html )
spark.conf.set(
"fs.azure.account.key.<your-storage-account-name>.blob.core.windows.net",
"<your-storage-account-access-key>")
df.write \
.format("com.databricks.spark.sqldw") \
.option("url", "jdbc:sqlserver://<the-rest-of-the-connection-string>") \
.option("forwardSparkAzureStorageCredentials", "true") \
.option("dbTable", "my_table_in_dw_copy") \
.option("tempDir", "wasbs://<your-container-name>@<your-storage-account-name>.blob.core.windows.net/<your-directory-name>") \
.save()
问题陈述:我需要为另外一个 PySpark Dataframe 实现相同的功能,它包含一列,其中包含 8000 多个 JSON 字符。在底层 Synapse 表中,此列是 nvarhcar(max) 类型。上述代码不适用于字符长度超过 4000 个字符的列。
对于这种情况,请帮助如何在上面的代码中处理这个问题。
解决方案
推荐阅读
- php - 将我们创建的自动回复器发送到触发钩子的客户端的电子邮件的正确代码是什么?
- python - networkx 中的代码 g.nodes(data=True)[0:10] 不起作用
- angular - 量角器:“未创建会话:Chrome 版本必须介于 71 和 75 之间”
- scala - 为具有复杂列的 DataFrame 添加新列(数组
- python-3.x - Python:从另一个文件访问类方法变量
- excel - Excel VBA,它将按时间间隔将实时数据从一列复制到下一列
- github - 如何在 github wiki 中访问文件夹视图
- c# - 有效的类层次结构?
- openshift - 通过yaml在openshift中创建项目时如何授予对用户组的访问权限
- highcharts - HighMaps:将第二个数据系列添加到工具提示