如何在没有笔记本的情况下从 Azure Databricks Spark 群集查询数据?



我有一个正在运行的Spark 2.3.1集群托管在https:azuredatabricks.net中,我创建了一个带有永久表的数据库,并且能够通过Notebook Web界面运行查询。
现在我正在寻找一种从 .Net 控制台应用程序查询同一群集的方法,但我迷路了。

1. 是否有可用于执行 SQL/Python 查询的 Rest API?
2. 如何配置 ODBC 连接字符串以连接到群集,有哪些有效的 ODBC 驱动程序?

最终,我正在寻找一种方法,使用户能够通过使用 JavaScript 或 .Net 代码编写的 Web App/REST 服务对 Spark 群集运行几个预定义的参数化查询之一。

据我所知,目前没有办法在 Databricks 工作区之外查询 Databricks 表。

根据您尝试完成的操作,您可以利用 REST API 来执行执行参数化查询的作业(笔记本或 JAR(。这在 Databricks REST API 文档 (https://docs.azuredatabricks.net/api/latest/jobs.html#run-now( 中有描述。如果需要 .NET 应用程序中的查询结果,则选项将受到限制,最好的办法可能是将查询结果写入 Data Lake 存储或 Blob 存储中的文件,然后使用控制台应用程序从那里读取。可以从控制台应用程序将文件名作为参数传入,以便在执行完成后轻松检索它。

若要从 .NET 连接到群集,需要使用 Databricks 访问令牌和身份验证 REST API (https://docs.azuredatabricks.net/api/latest/authentication.html(。

最新更新