Я ищу библиотеку, которая позволяет запускать SQL-подобные запросы на базе данных объектов python. С объектной базой данных я имею в виду довольно сложную структуру объектов и списков python в памяти. В основном это было бы "обратная ORM" - вместо предоставления объектно-ориентированного интерфейса реляционной базе данных он обеспечивал бы интерфейс SQL-ish для базы данных объектов.
С# LINQ очень близок. Понимание списков Python очень приятно, но синтаксис становится волосатым при выполнении сложных вещей (сортировка, объединение и т.д.). Кроме того, я не могу (легко) создавать запросы динамически со списком.
Фактический синтаксис может быть либо строковым, либо использовать объектно-ориентированную DSL (a la from (mylist).select(...)). Бонусные баллы, если библиотека предоставит какие-то индексы для ускорения поиска.
Есть ли это или я должен его изобрести?