All’esterno, un servizio di directory sembra simile a un grande database. La directory supporta una grande quantità di dati e i dati sono organizzati per nodo e valore. Il servizio di directory cataloga informazioni diverse, a seconda del suo focus. Ad esempio, un servizio di directory di rete cataloga tutte le risorse su un computer, mentre una directory DNS (Domain Name System) cataloga i siti Web. Le differenze tra una directory e un database sono che una directory può includere informazioni ridondanti e le directory vengono lette più che scritte, quindi molti comandi di scrittura vengono omessi.
Un servizio di directory sembra proprio come un database. Contiene dati simili e organizza ogni dato in un formato nodo e valore, proprio come alcuni modelli di database gerarchici e relazionali. Il nodo in una directory è l’informazione primaria, mentre il valore è una stringa di dati allegata al nodo. Se la rubrica fosse per una rubrica, il nodo sarebbe un nome, mentre il valore sarebbe un numero di telefono corrispondente al nome.
Le directory possono essere costruite per molti scopi. Una directory di rete descrive in dettaglio tutto il software e l’hardware in un computer, ma raramente richiede che l’utente conosca la directory o come accedere all’hardware o al software. Una directory DNS prende i nomi di dominio del sito Web e crea un dominio basato su numeri per il sito Web, che viene visto raramente dall’utente. La tecnologia delle directory è versatile, ma la directory dovrebbe essere creata solo per uno scopo o le informazioni potrebbero entrare in conflitto.
Sebbene sia simile ai modelli di database, un servizio di directory presenta alcune grandi differenze. In un database, se nelle tabelle sono memorizzate informazioni ridondanti o ripetute, è possibile che il database colleghi accidentalmente dati realmente non correlati o crei problemi di programmazione. In una directory, le informazioni possono essere ridondanti. Ad esempio, una rubrica telefonica può includere più nomi identici, ma la rubrica sarà in grado di differenziarli in base a numeri di telefono diversi.
Un servizio di directory può essere letto e scritto, ma più spesso viene solo letto. Questo fa sì che molti dei comandi di scrittura presenti nella tecnologia dei database non vengano inclusi nelle directory. Le funzionalità di rollback e transazione sono limitate, perché la directory semplicemente non ne ha bisogno.
Ogni servizio di directory deve includere un progetto. Questo progetto è un insieme di regole programmate nella directory che indicano alla directory quali informazioni sono importanti, cosa dovrebbero essere raccolte e quali informazioni ignorare. Senza un progetto, una directory cercherebbe di assorbire tutte le informazioni, causandone il sovraccarico.