Tôi đã sử dụng SqlObject rộng rãi như là một phần của TurboGears 0.9, nhưng chuyển sang SqlAlchemy + elixir như là một thay thế thả cho SqlObject ngay cả trước khi TurboGears đã làm.
Lưu ý rằng ngay cả khi không elixir, SQLAlchemy có riêng của nó định nghĩa lớp phong cách tường thuật: http://docs.sqlalchemy.org/en/rel_1_0/orm/extensions/declarative/index.html
Nếu bạn không chắc chắn về hiệu suất, nó không nên quá nhiều việc phải thả trong elixir như một sự thay thế trong ứng dụng của bạn và làm một số hồ sơ nhanh chóng. Tôi đoán rằng sự khác biệt hiệu suất giữa SqlObject/SQL/SQLA + elixir nhạt so với thời gian dành cho việc ghi và đọc dữ liệu đến/từ cơ sở dữ liệu.
Lưu ý rằng SqlAlchemy dành quyền kiểm soát lớn hơn nhiều đối với tải háo hức/lười biếng của relationships và columns, giúp hiệu suất bộ nhớ của ứng dụng của bạn trong nhiều trường hợp.
Có lẽ lý do thuyết phục nhất để chuyển đổi là SqlAlchemy là nó đang được tích cực phát triển (mặc dù tôi không biết quá nhiều về trạng thái dev của SqlObject nữa). Là một lý do thứ hai, bạn có thể yên tâm rằng nếu nhu cầu của bạn trở nên phức tạp hơn, có khả năng là có ai đó đã cố gắng đập các đối tượng Python vuông vào lỗ tròn của SQL thành công với SqlAlchemy.