class_docstr: Abstraction for ML task. Should have interface similat to concurrent.futures.Future
  
  Attributes:
      db (Redis): database object
      redis_key (RedisKey): redis keys associated with task
      dataframe (DataFrame): task result
      exception (Exception): task exeuton  runtime exception
      _timeout (int): max time without status updating
code: def __init__(
      self, connection: redis.Redis, redis_key: RedisKey
  ) -> None:
      self.db = connection
      self.redis_key = redis_key
      self.dataframe = None
      self.exception = None
      self._timeout = 30
  
file_path: mindsdb/mindsdb/utilities/ml_task_queue/task.py
imports: from collections.abc import Callable
  import redis
  from pandas import DataFrame
  from mindsdb.utilities.ml_task_queue.utils import RedisKey, from_bytes
  from mindsdb.utilities.ml_task_queue.const import ML_TASK_STATUS
label_desc: Use image node_id 1 to create a new Task object  with example: obj = Task(connection, redis_key)