Dask 安装
目录
Dask 安装¶
如何安装 Dask¶
您可以使用 conda
、pip
安装 Dask,或者从源代码安装。
如果您使用 Anaconda 分发版,Dask 将默认安装。
您还可以使用 conda install 命令安装或升级 Dask
conda install dask
这将安装 Dask 和所有常用依赖项,包括 pandas 和 NumPy。Dask 包在默认通道和 conda-forge 上都得到维护。您可以使用 -c
标志选择通道
conda install dask -c conda-forge
可选地,您可以使用以下命令进行最小化安装 Dask
conda install dask-core
这将安装运行 Dask 所需的最小依赖项集,类似于(但不完全相同于)python -m pip install dask
。
要使用 pip
安装 Dask,请运行以下命令
python -m pip install "dask[complete]" # Install everything
这将安装 Dask、分布式调度器以及 pandas、Numpy 等常用依赖项。
您还可以只安装 Dask 库而不安装可选依赖项
python -m pip install dask # Install only core parts of dask
像 dask.array
、dask.dataframe
或 dask.distributed
这样的 Dask 模块在您安装相应的 NumPy、pandas 或 Tornado 之前将无法工作。这对于用户来说不常见,但对于下游库维护者来说更常见。
我们还为不同的功能子集维护了其他依赖项集
python -m pip install "dask[array]" # Install requirements for dask array
python -m pip install "dask[dataframe]" # Install requirements for dask dataframe
python -m pip install "dask[diagnostics]" # Install requirements for dask diagnostics
python -m pip install "dask[distributed]" # Install requirements for distributed dask
我们提供这些选项,以便轻量级 Dask 核心调度器的用户无需下载集合(Numpy、pandas、Tornado 等)的更“外来”的依赖项。
分布式部署¶
要在分布式集群上运行 Dask,您还需要安装与您的资源管理器(如 Kubernetes、SLURM、PBS、LSF、AWS、GCP、Azure 或类似技术)匹配的 Dask 集群管理器。
更多关于此主题的信息请参阅部署文档
可选依赖项¶
Dask 中的特定功能可能需要额外的可选依赖项。例如,从 Amazon S3 读取需要 s3fs。以下列出了这些可选依赖项及其支持的最低版本。
依赖项 |
版本 |
描述 |
---|---|---|
|
生成 Dask 执行配置文件( |
|
|
用于 dask 数组的 |
|
|
使用缓存进行计算 |
|
|
使用 CityHash 和 FarmHash 哈希函数进行数组哈希(比 MurmurHash 快约 2 倍) |
|
|
使用 |
|
|
内部迭代器、函数和字典的更快的 Cythonized 实现 |
|
|
使用 Dask 扩展的常见机器学习函数 |
|
|
存储和读取 Apache Avro 文件中的数据 |
|
|
存储和读取位于 Google Cloud Storage 中的数据 |
|
|
使用 graphviz 引擎进行图可视化 |
|
|
将数组数据存储在 hdf5 文件中 |
|
|
使用 cytoscape 引擎进行图可视化 |
|
|
将使用 graphviz 引擎创建的图可视化保存到文件 |
|
|
Dask 对象在 Jupyter Notebook 中的 HTML 表示( |
|
|
透明地使用 lz4 压缩算法 |
|
|
图可视化的颜色映射支持 |
|
|
使用 |
|
|
使用 MurmurHash 哈希函数进行数组哈希(比 SHA1 快约 8 倍) |
|
|
|
|
|
|
|
|
将 CPU 亲和性计入 CPU 数量,在读取 CSV 文件时智能推断块大小 |
|
|
在存储/读取 Apache ORC 或 Parquet 文件时支持 Apache Arrow 数据类型和引擎 |
|
|
在存储/读取 Avro 或 Parquet 文件时使用 Snappy 压缩 |
|
|
存储和读取位于 Amazon S3 中的数据 |
|
|
|
|
|
使用稀疏数组作为 dask 数组的后端 |
|
|
写入和读取 SQL 数据库 |
|
|
worker 回溯对象的序列化 |
|
|
存储和读取 TileDB 文件中的数据 |
|
|
使用 xxHash 哈希函数进行数组哈希(比 MurmurHash 快约 2 倍,比 CityHash 略慢) |
|
|
存储和读取 Zarr 文件中的数据 |