To opravdu záleží na vašich požadavcích na „vizualizaci“. Obvykle většina zajímavějších vizuálních aspektů diagramu pro relační databázi jsou vztahy na vysoké úrovni a omezení integrity (1:1, 1:mnoho, primární klíč, cizí klíče atd.).
MongoDB je flexibilní schéma, v tom smyslu, že dokumenty v rámci dané kolekce nemusí vyhovovat předem stanovenému formátu. To neznamená, že podkladová data nemohou mít nějakou organizaci...jen že kolekci není vnuceno jediné schéma (jak by tomu bylo v případě tradiční relační databáze).
V MongoDB bude mnoho zajímavých detailů k vizualizaci vyžadovat analýzu kontrolou některých nebo všech dokumentů v kolekci NEBO kontrolou kódu.
Kontrola kódu
Pokud vaše aplikace používá ODM (Object Document Mapper), jako je Mongoose
(Node.js) nebo Morphia
(Java), kód aplikace může poskytovat rychlý a popisný pohled na zamýšlené schéma (nebo alespoň nejnovější verzi zamýšleného schématu). Vhodný jazykový dokumentační nástroj, jako je jsdoc
nebo javadoc
může být užitečné pro vytvoření přiměřeného přehledu vašich modelových tříd. Pro dosažení nejlepších výsledků budete pravděpodobně muset přidat nějaké poznámky k dokumentaci.
Analýza schématu
Analýza schématu je přístup s větší hrubou silou, který zahrnuje pohled na data, aby bylo možné odvodit pozorované schéma. Běžným přístupem je použití Map/Reduce .
Existuje několik různých mongo
shell
pomocníci, kteří vám poskytnou představu o obecné struktuře kolekcí (např. typy polí/dat a jejich pokrytí ve zdrojových dokumentech):
Nejsou vizuální (v grafickém smyslu), ale výsledky analýzy schémat poskytují pohled na očekávaný tvar dat a běžné variace.
Vztahy
Server MongoDB nepodporuje vztahy s cizími klíči, což odstraňuje mnoho potenciálně zajímavých vizuálních anotací.
Existuje několik různých přístupů klientských ovladačů k vytváření referencí databáze (DBRefs)
, ale ty se řídí spíše konvencemi použití než funkcí serveru. Aby bylo možné určit vztahy mezi kolekcemi pomocí DBRefs, musely by být naskenovány některé nebo všechny dokumenty v kolekci. Odvozování vztahů není podporováno žádnou z variety
nebo schema.js
ještě.
Obsah
Chcete-li získat lepší představu o skutečném obsahu, můžete vyzkoušet jedno z uživatelských rozhraní pro správu .