OSS探訪

NumPy・pandasに近いcollectionとtask graphでparallel analyticsを拡張する

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
13,931
主要言語
Python
ライセンス
BSD-3-Clause
リポジトリ最終更新
2026/09/29
ページ内ナビ

概要

Daskはanalytics向けのflexible parallel computing libraryです。Dask Array、DataFrame、Bag等のhigh-level collectionがtask graphを生成し、schedulerがsingle machineまたはcluster上でlazy computationを実行します。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

Array・DataFrame等をpartitionしてlazy task graphを作る

Dask collectionはdataをchunk/partitionへ分割し、operationを即時実行せずtask graphとして構築します。結果が必要になった時点でcompute()によりschedulerへ実行を依頼します。

出典:[2][1]

coreからdistributed・dataframe・array等のextraを必要に応じて選ぶ

packageはminimal coreに加え、array、dataframe、distributed、diagnostics、complete等のoptional dependency setを提供し、用途に応じてinstall範囲を調整できます。

出典:[3][4]

向いている用途

NumPy/pandas workflowを大きなdataやparallel executionへ拡張したい場合に向く

既存PyData APIに近いcollectionを使いながらtask graphとpartitioningを導入でき、single machineのmulti-core処理からdistributed clusterへ段階的に広げる用途に適します。

出典:[2][1]

導入前の確認

partition sizeとtask granularityを調整してscheduler overheadを抑える

Daskはtask graphとpartition単位で実行するため、非常に小さいtaskを大量に作る構成ではscheduler overheadが相対的に大きくなります。data sizeとoperationに合わせてchunk/partitionを設計します。

出典:[2]

2026.8.0はPython 3.10以上を要求しdistributed版も同系列へ揃える

2026.8.0のpackage metadataはPython >=3.10を要求し、distributed extraはdistributed >=2026.8.0,<2026.8.1を指定しています。cluster利用時はDask/Distributed versionを同系列へ固定します。

出典:[4][5]

参考にした公式資料

  1. [1]Dask 2026.8.0 README(2026-10-03)
  2. [2]Dask 2026.8.0 ten-minute guide(2026-10-03)
  3. [3]Dask 2026.8.0 installation guide(2026-10-03)
  4. [4]Dask 2026.8.0 package metadata(2026-10-03)
  5. [5]Dask 2026.8.0 release(2026-10-03)
編集部からの補足

既存のNumPy/pandas的な操作を保ちながらdataをpartitionし、memoryやCPUの上限を越える処理へ段階的に拡張できます。小さいdataではscheduler overheadが増えるため、まずpartition sizeとtask数を可視化してからdistributed化するのが有効です。

3ステップで試す

  1. 1

    検証用Python virtual environmentを作成する

    Dask 2026.8.0が要求するPython 3.10以上で独立した環境を作成します。

    python3 -m venv .venv && . .venv/bin/activate
  2. 2

    Dask Array 2026.8.0をinstallする

    core DaskとNumPyを含むArray向けdependencyをversion固定して導入します。

    python -m pip install "dask[array]==2026.8.0"
  3. 3

    chunked arrayをlazy計算する

    100要素を4 chunkへ分割し、task graphを構築してからcomputeで実行します。distributed clusterを使う場合は同系列のdistributed packageを追加してください。

    python -c 'import dask.array as da; x=da.arange(100, chunks=25); print(x.sum().compute())'
公式READMEで確認

成長

成長の推移 · 直近30日

13,931 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
1
Open PR
307

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • dask
  • python
  • pydata
  • numpy
  • pandas
  • scikit-learn
  • scipy
Stars
13,931
Forks
1,971
Watchers
203
Open Issues
1,043
Contributors
416
所有者種別
Organization
主要言語
Python
ライセンス
BSD-3-Clause
リポジトリ最終更新
2026/09/29

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?