Chắc chắn bạn có thể làm điều đó với SQLAlchemy.
Tất cả những gì bạn cần làm là tạo các công cụ kết nối khác nhau, mỗi công cụ có trình tạo phiên của riêng chúng. Không có gì trong SQLAlchemy giới hạn bạn chỉ có một cơ sở dữ liệu tại một thời điểm.
engines = []
sessions = []
for dbconninfo in databases:
engine = create_engine(dbconninfo)
engines.append(engine)
sessions.append(sessionmaker(bind=engine)())
Bạn có thể sử dụng mỗi phiên để chạy các truy vấn, các đối tượng kết quả được đính kèm với phiên đã tạo ra chúng, để các thay đổi quay trở lại cơ sở dữ liệu chính xác. Nghiên cứu tài liệu về phiên chi tiết, để xem điều gì sẽ xảy ra nếu bạn hợp nhất một đối tượng từ một phiên này vào một phiên khác, chẳng hạn.