在 Python 中通过 Databricks api 读取 Databricks table?
Read a Databricks table via Databricks api in Python?
使用 Python-3,我试图将 Excel (xlsx) sheet 与 Databricks 中的相同火花 table 进行比较。我想避免在 Databricks 中进行比较。所以我正在寻找一种通过 Databricks api 读取 spark table 的方法。这可能吗?我怎样才能继续阅读 table: DB.TableName?
我可以推荐你在 notebook 中编写 pyspark 代码,从之前定义的作业中调用 notebook,并在你的本地机器和 databricks 工作区之间建立连接。
如果您愿意,您可以直接在 spark 上执行 comaprision 或将数据帧转换为 pandas。如果 noteebok 将结束比较,则可以重新运行特定作业的结果。我认为发送所有数据块表是不可能的,因为 API 限制你有 spark 集群来执行复杂的操作,API 应该用于发送小消息。
官方文档:
https://docs.microsoft.com/en-us/azure/databricks/dev-tools/api/latest/jobs#--runs-get-output
Retrieve the output and metadata of a run. When a notebook task
returns a value through the dbutils.notebook.exit() call, you can use
this endpoint to retrieve that value. Azure Databricks restricts this
API to return the first 5 MB of the output. For returning a larger
result, you can store job results in a cloud storage service.
据我所知,无法从数据库 API 中读取 table,除非您 运行 将其作为 LaTreb 已经提到的工作。但是,如果您真的想要,您可以使用 ODBC 或 JDBC 驱动程序通过您的数据块集群获取数据。
有关如何设置的信息,请参见 here。
设置 DSN 后,您可以使用 pyodbc 连接到数据块和 运行 查询。此时 ODBC 驱动程序将只允许您 运行 Spark-SQL 命令。
综上所述,将数据加载到 Databricks 中可能仍然更容易,除非您有某种安全问题。
使用 Python-3,我试图将 Excel (xlsx) sheet 与 Databricks 中的相同火花 table 进行比较。我想避免在 Databricks 中进行比较。所以我正在寻找一种通过 Databricks api 读取 spark table 的方法。这可能吗?我怎样才能继续阅读 table: DB.TableName?
我可以推荐你在 notebook 中编写 pyspark 代码,从之前定义的作业中调用 notebook,并在你的本地机器和 databricks 工作区之间建立连接。
如果您愿意,您可以直接在 spark 上执行 comaprision 或将数据帧转换为 pandas。如果 noteebok 将结束比较,则可以重新运行特定作业的结果。我认为发送所有数据块表是不可能的,因为 API 限制你有 spark 集群来执行复杂的操作,API 应该用于发送小消息。
官方文档: https://docs.microsoft.com/en-us/azure/databricks/dev-tools/api/latest/jobs#--runs-get-output
Retrieve the output and metadata of a run. When a notebook task returns a value through the dbutils.notebook.exit() call, you can use this endpoint to retrieve that value. Azure Databricks restricts this API to return the first 5 MB of the output. For returning a larger result, you can store job results in a cloud storage service.
据我所知,无法从数据库 API 中读取 table,除非您 运行 将其作为 LaTreb 已经提到的工作。但是,如果您真的想要,您可以使用 ODBC 或 JDBC 驱动程序通过您的数据块集群获取数据。
有关如何设置的信息,请参见 here。
设置 DSN 后,您可以使用 pyodbc 连接到数据块和 运行 查询。此时 ODBC 驱动程序将只允许您 运行 Spark-SQL 命令。
综上所述,将数据加载到 Databricks 中可能仍然更容易,除非您有某种安全问题。