Attn Michael Bayer: First off, thank-you so much for SQLAlchemy!
I've signed up for your two PyCon 2010 Atlanta tutorials, but I think I'm going to need some guidance sooner rather than later (if possible). (database details below) We've managed to make a legacy database mostly work with SQLAlchemy (using ShardedSession, shard_chooser, id_chooser, query_chooser, etc), but our solution is still falling over in a couple of ways. I am going to step back, create an isolated test environment, and exhaust a few more ShardedSession/BaseDeclarative/SessionQuery approaches before giving up on case #3 and instead migrating the case #3 data to case #2 tables. Once I have testable, isolated code, I'll try the asking the group for concrete suggestions -- but before I do, I wondered if you could answer the following: -- Do you think it's possible to map this crazy layout sufficiently? -- If so, do you have any suggestions/pointers? -- Are you available for fee-based consultation? In-house, corporate group tutorials? Finally, the details -- the three styles (cases) of databases & tables I need to map: Case 1) A plain old database without any sharding. [I know how to do this] database_fruit: -- table_apples -- table_... -- table_bananas Case 2) A bunch of normally sharded databases 1 ... N. Let's say N is 100. [Mostly done -- I'm sure I'll figure out the remaining hurdles] database_shard_1: -- table_orange -- table_... -- table_yellow database_shard_...: -- table_orange -- table_... -- table_yellow database_shard_N: -- table_orange -- table_... -- table_yellow Case 3) In addition to the tables common across the N shards (table_orange, table_yellow, etc), there are a bunch of tables that have the same table definitions, yet different (but predictable) table names. And by a bunch, I mean thousands of each table type per shard. database_shard_1: -- table_circle_1 -- table_circle... -- table_circle_M -- table_.... -- table_square_1 -- table_square... -- table_square_M database_shard_...: -- table_circle_1 -- table_circle... -- table_circle_M -- table_.... -- table_square_1 -- table_square... -- table_square_M database_shard_N: -- table_circle_1 -- table_circle... -- table_circle_M -- table_.... -- table_square_1 -- table_square... -- table_square_M Let's say M = 1000, table_circle_1 ... table_circle_M share the same definition, and table_square_1 ... table_square_M share the same definition, etc. Hope that was clear enough. Thanks for your time, --diana
-- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to sqlalch...@googlegroups.com. To unsubscribe from this group, send email to sqlalchemy+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en.