docs: def calculate_best_chunk_size(self, data_length):
          """
          Uses the number of dask workers in the cluster (during execution time, meaning when you start the extraction)
          to find the optimal chunk_size.
  
          :param data_length: A length which defines how many calculations there need to be.
          :type data_length: int
          """
          n_workers = len(self.client.scheduler_info()["workers"])
          chunk_size, extra = divmod(data_length, n_workers * 5)
          if extra:
              chunk_size += 1
          return chunk_size