code: def read_item(self, from_date=None):
          
          search_query = self._build_search_query(from_date)
          for hit in helpers.scan(self._es_conn,
                                  search_query,
                                  scroll='300m',
                                  index=self._es_index,
                                  preserve_order=True):
              yield hit
docs: Read items and return them one by one.
  
          :param from_date: start date for incremental reading.
          :return: next single item when any available.
          :raises ValueError: `metadata__timestamp` field not found in index
          :raises NotFoundError: index not found in ElasticSearch