Skip to content Skip to sidebar Skip to footer

Entity Attribute Value (eav) Frameworks?

I'd seen Entity Attribute Value in lots of contexts before I actually learnt what its name was. Its that technique that often crops up when instead of storing data in database colu

Solution 1:

If you can live with the drawbacks of NoSQL databases, the best way to approach the EAV pattern is with a NoSQL alternative like CouchDB or MongoDB. These databases offer a "schemaless" design which allows each row to have its own schema. Doing an EAV with a traditional RDBMS is asking for trouble as the querying becomes very difficult and performance suffers the larger the dataset.

An alternative that I have used successfully in the past is to combine an RDBMS with a NOSQL variant (MySql and MongoDB). I use MySQL to store the EAV data (gaining the transactional integrity), and I use MongoDB as a reporting store to get around the querying issues with the EAV model.

Solution 2:

You could store it in SQL-XML, donno of a lib tho, but you could do the de/serialization in .NET, then X-LINQ aginst it.

Performance will also be a tremendous issue obviously.

Solution 3:

I'll get the ball rolling with one I found via this blog post:

An early Beta for a SQL Server EAV framework:

http://eav.codeplex.com/ "A sample EAV pattern for SQL Server with: Tables and indexes, Partial referential integrity, Partial data typing, Updatable views (like normal SQL table)"

Provides some SQL scripts to download, here.

Post a Comment for "Entity Attribute Value (eav) Frameworks?"