Язык запросов для объектов Python

Я ищу библиотеку, которая позволяет мне запускать SQL-подобные запросы к "объектным базам данных" python. Под объектной базой данных я подразумеваю довольно сложную структуру объектов и списков Python в памяти. По сути, это будет «обратная ORM» - вместо предоставления объектно-ориентированного интерфейса для реляционной базы данных он предоставит интерфейс в стиле SQL для объектной базы данных.

LINQ в C # очень близок. Понимание списков Python очень хорошее, но синтаксис становится волосатым при выполнении сложных вещей (сортировка, объединение и т. Д.). Кроме того, я не могу (легко) создавать запросы динамически с пониманием списков.

Фактический синтаксис может быть либо строковым, либо использовать объектно-ориентированный DSL (как from (mylist) .select (...)). Бонусные баллы, если библиотека предоставит какие-то индексы для ускорения поиска.

Существует ли это, или я должен его изобрести?

14
задан jdm 26 February 2011 в 12:03
поделиться