Sono interessato a giocare con il modello EAV su un database SQL Server. Qualcuno è in grado di indicarmi un articolo o un framework per un modello/schema esistente (non sono interessato a Saas per questo)?EAV su SQL Server
risposta
Best Practices for Semantic Data Modeling for Perfor...
EAV è notoriusly problematico in quanto porta a gravi problemi di prestazioni di implementazione e scalabilità. Il white paper nel collegamento, rilasciato dal team di assistenza clienti di SQL Server, tenta di offrire alcune indicazioni per implementare un modello EAV di successo.
Perché non creare una tabella molto semplice, con una colonna entità, una colonna attributo e una colonna di valore:
CREATE TABLE eav(
entity STRING,
attribute STRING,
value STRING);
E poi popolare la tabella utilizzando uno script di qualche tipo per generare alcuni dati di test.
INSERT INTO eav ('banana','color','yellow');
INSERT INTO eav ('banana','fluffy','no');
INSERT INTO eav ('banana','origin','Guatemala');
INSERT INTO eav ('orange','origin','USA');
INSERT INTO eav ('orange','origin','Mexico');
INSERT INTO eav ('pear','origin','USA');
INSERT INTO eav ('peach','fluffy','yes');
E poi provare a eseguire query su di esso, per giocare, imparare come funziona, ecc
In generale, comunque, lo schema di organizzazione dei dati di cui sopra non realmente maglia bene con la teoria dei database relazionali. Quanto sopra si configura di più con la teoria del database dei documenti, come Couch DB. Vorrei approfondire l'argomento se è necessario archiviare/gestire i dati della natura EAV in natura.
Se si ha accesso a un sistema Siebel, il sistema LOV funziona nello stesso modo. –
Fare ciò sarebbe facile, ma dopo circa 2 secondi mi farei un sacco di domande, quindi perché stavo davvero cercando un articolo o un framework esistente che avrebbe già risposto a quelle domande. –
@ Jaimal - Che tipo di domande? La tua domanda afferma che vuoi giocare uno schema di esempio. –
non l'ho usato, ma c'è una struttura EAV esempio con i dati in questo progetto CodePlex:
http://eav.codeplex.com/
"Un modello di esempio EAV per SQL Server con: tabelle e gli indici, l'integrità referenziale parziale, parziale digitazione dati, visualizzazioni aggiornabili (come la normale tabella SQL) "
Fornisce alcuni script SQL da scaricare, here.
Inoltre, questo post del blog: "guida di Dave al EAV"
http://weblogs.sqlteam.com/davidm/articles/12117.aspx
... funziona con un esempio EAV in SQL Server con esempi di come sarebbero state attuate tipo di controllo e l'esecuzione di query, con un sacco di discussione sulla teoria e sul perché l'EAV può causare problemi.
Abbiamo una soluzione EAV molto avanzata e matura là fuori su Github - https://github.com/2sic/eav. È abbastanza difficile da installare, dato che è principalmente utilizzato come back-end di un sistema di gestione dei contenuti chiamato 2sxc (anche su github).
Poiché è estremamente avanzato, supporta molti tipi di dati, tipi di input, maschere generiche di input e molto altro credo che lo troviate molto stimolante. Per provarlo, il modo migliore è installare DNN (una piattaforma web .net) e 2sxc (il sistema di gestione dei contenuti per DNN). Penso che sarai sbalordito da ciò che è possibile.
Si noti che l'intera interfaccia utente è basata su AngularjS, quindi è una configurazione molto moderna. Puoi anche trovare altri blog/video su http://2sxc.org.
- 1. Come creare JSON da una tabella EAV in SQL Server
- 2. Doctrine ORM su EAV Tabelle
- 3. SQL Server ROW_NUMBER() su SQL Server 2000?
- 4. Cosa monitorare su SQL Server
- 5. varbinary su stringa su SQL Server
- 6. Commenti SQL su Crea tabella su SQL Server 2008
- 7. Esecuzione di SQL Server su EC2
- 8. confusione su SQL Server Express e LocalDB
- 9. Indice chiave univoco su SQL Server 2008
- 10. Rileva modifiche su una tabella sql-server
- 11. Query su più database (server SQL)
- 12. Alcune domande su HierarchyId (SQL Server 2008)
- 13. Crea backup server SQL su macchina locale
- 14. Come installare fulltext su SQL Server 2008?
- 15. Intermittente query lenta su SQL Server 2008
- 16. Handle C# su SQL Server Output messaggio
- 17. SQL Server 2008 Dati verticali su orizzontale
- 18. Come si introspe su un server SQL?
- 19. Azure database SQL vs MS SQL Server su macchina dedicata
- 20. caso nella stored procedure sql su SQL Server
- 21. Permessi SQL Server su Processi memorizzati con SQL dinamico
- 22. SQL in SQL Server
- 23. Matrice, EAV, LOB serializzato per campi personalizzati?
- 24. ereditarietà di tabelle singole, EAV o NoSQL?
- 25. Informazioni su LOCKS di SQL Server su query SELECT
- 26. Crea accesso SQL Server per IIS APPPOOL - IIS e SQL Server su macchine diverse
- 27. Ripristino del database di SQL Server 2008 su SQL Server 2000
- 28. Come installare SQL Server Reporting Services (SSRS) su un'installazione esistente di SQL Server Express?
- 29. Database EAV Pro/Contro e alternative
- 30. Come superare le carenze nei rapporti dal database EAV?
Non chiaro; vuoi un articolo che spieghi perché questa è una cattiva idea da fare in SQL o uno schema di esempio su cui giocare? –
Hmm, forse ho sbagliato a dirlo, ma pensavo di aver detto chiaramente "articolo o quadro per un modello/schema esistente", non uno schema per giocare con –
@Jaimal - "Sono interessante nel * giocare con * con il modello EAV "???? –