Hello Frans and team,
Intro then 2 questions
LLblgen has worked well for us over the years. Moving forward we will be implementing a horizontally partitioned (sharded) database design, utilizing N number of databases. Each database will have exactly the same schema.
Some tricky issues that we now have to deal with in the application layer:
- No foreign key relation/constraints between tables
- No LLBLGen automatic handling of nested entities on CRUD operations
- No LLBLGen transaction support because operations on tables will span multiple servers
To explain in further detail:
We will need to drop foreign key constraint / relations between Many tables. For example, we will have Order -> OrderItem always on one partition, but Customer may be on another partition. Because of this, Order cannot have a foreign key constraint on Customer. The application layer will have to preserve data integrity. Because of this, LLBLGen cannot CRUD entity trees.
LLBLGen transaction support will not work when working with tables spanning multiple databases.
Questions:
1)
Can you see any other challenges we should consider when implementing LLBLGen with this type of design? Please speak freely.
2)
Can LLBLGen generate against Sql Azure schema yet, or must we still generate from local SQLServer based schema? Are there any other LLBLGen features that do not currently work against Sql Azure ?
Many thanks