ray.data.读取_databricks_表格#

ray.data.read_databricks_tables(*, warehouse_id: str, table: str | None = None, query: str | None = None, catalog: str | None = None, schema: str | None = None, parallelism: int = -1, ray_remote_args: Dict[str, Any] | None = None, concurrency: int | None = None, override_num_blocks: int | None = None) Dataset[源代码]#

读取 Databricks unity 目录表或 Databricks SQL 执行结果。

在调用此API之前,请将 DATABRICKS_TOKEN 环境变量设置为您的Databricks仓库访问令牌。

export DATABRICKS_TOKEN=...

如果你没有在 Databricks 运行时上运行你的程序,还需要设置 DATABRICKS_HOST 环境变量。

export DATABRICKS_HOST=adb-<workspace-id>.<random-number>.azuredatabricks.net

备注

此功能基于 Databricks 语句执行 API

示例

import ray

ds = ray.data.read_databricks_tables(
    warehouse_id='...',
    catalog='catalog_1',
    schema='db_1',
    query='select id from table_1 limit 750000',
)
参数:
  • warehouse_id – Databricks 仓库的 ID。查询语句在此仓库上执行。

  • table – 您想要读取的 UC 表的名称。如果设置了此参数,则不能设置 query 参数,并且读取器会在后台生成 select * from {table_name} 的查询。

  • query – 你想要执行的查询。如果设置了此参数,则不能设置 table_name 参数。

  • catalog – (可选) 查询使用的默认目录名称。

  • schema – (可选) 查询使用的默认模式。

  • parallelism – 此参数已弃用。请使用 override_num_blocks 参数。

  • ray_remote_args – 传递给读取任务中 remote() 的 kwargs。

  • concurrency – Ray 任务的最大并发运行数量。设置此项以控制并发运行的任务数量。这不会改变运行的总任务数或输出的总块数。默认情况下,并发性是根据可用资源动态决定的。

  • override_num_blocks – 覆盖所有读取任务的输出块数量。默认情况下,输出块的数量是根据输入数据大小和可用资源动态决定的。在大多数情况下,您不应手动设置此值。

返回:

包含查询数据的 数据集

PublicAPI (alpha): 此API处于alpha阶段,可能在稳定之前发生变化。