Multidimensional arrays

Python में Dask के साथ Parallel Programming

James Fulton

Climate Informatics Researcher

बहु-आयामी डेटा के प्रकार

  • मौसम पूर्वानुमान/अवलोकन
  • 3D बायोमेडिकल स्कैन
  • सैटेलाइट इमेज
  • अन्य वैज्ञानिक यंत्रों का डेटा
Python में Dask के साथ Parallel Programming

HDF5

HDF लोगो

  • Hierarchical Data Format
  • पदानुक्रमित फ़ॉर्मेट में संग्रहीत - (उप)डायरेक्टरी जैसा
Python में Dask के साथ Parallel Programming

HDF5 फ़ाइल कैसी दिखती है?

एक खाली फ़ोल्डर

Python में Dask के साथ Parallel Programming

HDF5 फ़ाइल कैसी दिखती है?

एक फ़ोल्डर जिसमें चार अलग-अलग डेटासेट और कुछ मेटाडेटा हैं.

Python में Dask के साथ Parallel Programming

h5py से HDF5 फाइल नेविगेट करना

import h5py

# Open the HDF5 file
file = h5py.File('data.hdf5')


# Print the available datasets inside the file print(file.keys())
<KeysViewHDF5 ['A', 'B', 'C', 'D']>
Python में Dask के साथ Parallel Programming

h5py से HDF5 फाइल नेविगेट करना

import h5py

# Open the HDF5 file
file = h5py.File('data.hdf5')


# Select dataset A dataset_a = file['/A']
print(dataset_a)
<HDF5 dataset "A": shape (10000, 100, 100), type "<f4">
Python में Dask के साथ Parallel Programming

HDF5 से लोड करना

import dask.array as da

# Load dataset into a Dask array a = da.from_array(dataset_a, chunks=(100, 20, 20))
print(a)
dask.array<array, shape=(10000, 100, 100), dtype=float32, chunksize=(100, 20, 20),
    chunktype=numpy.ndarray>
Python में Dask के साथ Parallel Programming

Zarr

  • HDF5{{1}} जैसा पदानुक्रमित डेटासेट
  • चंक्स के लिए डिज़ाइन किया गया
  • AWS, Google Cloud आदि जैसे क्लाउड पर स्ट्रीमिंग के लिए अच्छा
  • नेविगेट करने योग्य फ़ाइल संरचना
Python में Dask के साथ Parallel Programming

Zarr से लोड करना

import dask.array as da

a = da.from_zarr("dataset.zarr", component="A")


print(a)
dask.array<from-zarr, shape=(10000, 100, 100), dtype=float32,
    chunksize=(100, 20, 20), chunktype=numpy.ndarray>
Python में Dask के साथ Parallel Programming

अभ्यास करते हैं!

Python में Dask के साथ Parallel Programming

Preparing Video For Download...