Я широко использовал SqlObject как часть TurboGears 0.9, но переключился на SqlAlchemy + elixir в качестве замены вместо SqlObject еще до того, как это сделал TurboGears.
Обратите внимание, что даже без elixir SqlAlchemy имеет свой собственный класс декларативного стиляопределения: http://docs.sqlalchemy.org/en/rel_1_0/orm/extensions/declarative/index.html
Если вы не уверены в производительности, не нужно слишком много работать, чтобы добавить эликсир в качестве замены в вашем приложении и выполнить быстрое профилирование.Я предполагаю, что различия в производительности между SqlObject / SQL / SQLA + эликсиром бледнеют по сравнению с временем, затрачиваемым на запись и чтение данных в / из базы данных.
Обратите внимание, что SqlAlchemy предоставляет гораздо больший контроль над энергичной / ленивой загрузкой отношений и столбцов , что помогает использовать объем памяти и производительность вашего приложения во многих случаях.
Вероятно, наиболее веская причина для переключения заключается в том, что SqlAlchemy в том, что он активно разрабатывается (хотя я больше не знаю о статусе dev SqlObject).В качестве вторичной причины вы можете быть уверены, что если ваши потребности станут более сложными, вполне вероятно, что есть кто-то, кто уже пытался ударить квадратный колышек объектов Python в круглое отверстие SQL успешно с помощью SqlAlchemy.