来自 Celery 结果后端的查询结果 MYSQL
Query results from Celery Results Backend MYSQL
从 celery 的结果后端查询所有结果的最简单方法是什么?我正在使用 MySQL 数据存储作为我的结果后端。
Celery 将结果存储为 BLOB 类型,因此我无法以纯文本形式检索结果。
如果您想知道我为什么这样做,用例是查询 Celery 执行的所有任务的结果。
结果未存储为任意 BLOB 类型,Celery 使用 SQLAlchemy 作为数据库后端并将结果存储为 PickleType
(see the Celery code)。从文档到 PickleType
:
PickleType builds upon the Binary type to apply Python’s pickle.dumps()
to incoming objects, and pickle.loads()
on the way out, allowing any pickleable Python object to be stored as a serialized binary field.
因此,您应该能够简单地对所选数据使用 pickle.loads()
。
从 celery 的结果后端查询所有结果的最简单方法是什么?我正在使用 MySQL 数据存储作为我的结果后端。
Celery 将结果存储为 BLOB 类型,因此我无法以纯文本形式检索结果。
如果您想知道我为什么这样做,用例是查询 Celery 执行的所有任务的结果。
结果未存储为任意 BLOB 类型,Celery 使用 SQLAlchemy 作为数据库后端并将结果存储为 PickleType
(see the Celery code)。从文档到 PickleType
:
PickleType builds upon the Binary type to apply Python’s
pickle.dumps()
to incoming objects, andpickle.loads()
on the way out, allowing any pickleable Python object to be stored as a serialized binary field.
因此,您应该能够简单地对所选数据使用 pickle.loads()
。