Video: Francesco Sacco - Big data e trasparenza by design: non ci resta che essere più onesti 2024
Può sembrare strano menzionare insieme i motori di ricerca e NoSQL, ma molti dei motori di ricerca odierni usano un'architettura molto simile ai database NoSQL. I loro indici e l'elaborazione delle query sono altamente distribuiti. Molti motori di ricerca sono persino in grado di agire come un valore chiave o un negozio di documenti a pieno titolo.
I database NoSQL sono spesso usati per archiviare dati, documenti o dati non strutturati che possono essere archiviati in una varietà di strutture, come post di social media o pagine web. Le strutture di questi dati indicizzati variano notevolmente.
Inoltre, i database di documenti sono appropriati nei casi in cui gli amministratori di sistema o gli sviluppatori spesso non hanno il controllo delle strutture. Questa situazione è comune nella pubblicazione, in cui una vetrina riceve feed di nuovi libri e i loro metadati da molti editori.
Sebbene gli editori utilizzino standard simili come PDF ed ePub per documenti e file XML ONIX per i metadati, tutti producono documenti in modi leggermente diversi. Di conseguenza, la gestione coerente dei dati è difficile e la pubblicazione è un ottimo caso per un database di documenti.
Problemi simili si verificano nei reami di difesa e intelligenza. Un'agenzia può ricevere dati da un alleato o da un disco rigido di un terrorista in una varietà di formati. Attendere sei mesi per sviluppare uno schema di database relazionale revisionato per gestire un nuovo tipo di target non è praticabile! È qui che è possibile utilizzare i database NoSQL del documento.
La memorizzazione di molte strutture in un singolo database richiede un modo per fornire un meccanismo di query standard su tutto il contenuto. I motori di ricerca sono grandi per questo scopo. Considerare la ricerca come un requisito fondamentale per la gestione dei dati non strutturati con i database del documento NoSQL.
La tecnologia di ricerca è diversa dalla tecnologia di interfaccia del database di query tradizionale. SQL non è una tecnologia di ricerca; è un linguaggio di query. La ricerca ha a che fare con corrispondenze imperfette e punteggio di rilevanza, mentre la query si occupa della logica di corrispondenza esatta booleana (vale a dire, tutti i risultati di una query sono ugualmente rilevanti).