TIKA - Architettura
Architettura a livello di applicazione di Tika
I programmatori di applicazioni possono integrare facilmente Tika nelle loro applicazioni. Tika fornisce un'interfaccia a riga di comando e una GUI per renderlo facile da usare.
In questo capitolo discuteremo i quattro importanti moduli che costituiscono l'architettura Tika. La figura seguente mostra l'architettura di Tika insieme ai suoi quattro moduli:
- Meccanismo di rilevamento della lingua.
- Meccanismo di rilevamento MIME.
- Interfaccia parser.
- Classe Tika Facade.
Meccanismo di rilevamento della lingua
Ogni volta che un documento di testo viene passato a Tika, rileverà la lingua in cui è stato scritto. Accetta documenti senza annotazioni sulla lingua e aggiunge tali informazioni nei metadati del documento rilevando la lingua.
Per supportare l'identificazione della lingua, Tika ha una classe chiamata Language Identifier nella confezione org.apache.tika.languagee un repository di identificazione della lingua all'interno del quale contiene algoritmi per il rilevamento della lingua da un dato testo. Tika utilizza internamente l'algoritmo N-gram per il rilevamento del linguaggio.
Meccanismo di rilevamento MIME
Tika può rilevare il tipo di documento in base agli standard MIME. Il rilevamento del tipo MIME predefinito in Tika viene eseguito utilizzando org.apache.tika.mime.mimeTypes . Utilizza l' interfaccia org.apache.tika.detect.Detector per la maggior parte del rilevamento del tipo di contenuto.
Internamente Tika utilizza diverse tecniche come file glob, suggerimenti sul tipo di contenuto, magic bytes, codifiche dei caratteri e molte altre tecniche.
Interfaccia parser
L'interfaccia del parser di org.apache.tika.parser è l'interfaccia chiave per l'analisi dei documenti in Tika. Questa interfaccia estrae il testo e i metadati da un documento e li riassume per gli utenti esterni che sono disposti a scrivere plug-in parser.
Utilizzando diverse classi di parser concrete, specifiche per i singoli tipi di documento, Tika supporta molti formati di documenti. Queste classi specifiche del formato forniscono supporto per diversi formati di documento, implementando direttamente la logica del parser o utilizzando librerie di parser esterne.
Tika Facade Class
L'utilizzo della classe di facciata Tika è il modo più semplice e diretto per chiamare Tika da Java e segue il modello di progettazione della facciata. Puoi trovare la classe di facciata Tika nel pacchetto org.apache.tika di Tika API.
Implementando casi d'uso di base, Tika funge da mediatore del paesaggio. Astrae la complessità sottostante della libreria Tika come il meccanismo di rilevamento MIME, l'interfaccia parser e il meccanismo di rilevamento della lingua e fornisce agli utenti un'interfaccia semplice da utilizzare.
Caratteristiche di Tika
Unified parser Interface- Tika incapsula tutte le librerie parser di terze parti all'interno di un'unica interfaccia parser. A causa di questa caratteristica, l'utente sfugge all'onere di selezionare la libreria di parser adatta e utilizzarla in base al tipo di file incontrato.
Low memory usage- Tika consuma meno risorse di memoria quindi è facilmente integrabile con le applicazioni Java. Possiamo anche utilizzare Tika all'interno dell'applicazione che gira su piattaforme con meno risorse come PDA mobile.
Fast processing - Ci si può aspettare un rapido rilevamento del contenuto e l'estrazione dalle applicazioni.
Flexible metadata - Tika comprende tutti i modelli di metadati utilizzati per descrivere i file.
Parser integration - Tika può utilizzare varie librerie di parser disponibili per ogni tipo di documento in una singola applicazione.
MIME type detection - Tika può rilevare ed estrarre il contenuto da tutti i tipi di media inclusi negli standard MIME.
Language detection - Tika include la funzione di identificazione della lingua, quindi può essere utilizzato nei documenti in base al tipo di lingua in un sito Web multilingue.
Funzionalità di Tika
Tika supporta varie funzionalità:
- Rilevamento del tipo di documento
- Estrazione del contenuto
- Estrazione dei metadati
- Rilevamento della lingua
Rilevamento del tipo di documento
Tika utilizza varie tecniche di rilevamento e rileva il tipo di documento fornito.
Estrazione del contenuto
Tika ha una libreria parser che può analizzare il contenuto di vari formati di documenti ed estrarli. Dopo aver rilevato il tipo di documento, seleziona il parser appropriato dal repository del parser e passa il documento. Diverse classi di Tika hanno metodi per analizzare diversi formati di documenti.
Estrazione dei metadati
Insieme al contenuto, Tika estrae i metadati del documento con la stessa procedura dell'estrazione del contenuto. Per alcuni tipi di documenti, Tika dispone di classi per estrarre i metadati.
Rilevamento della lingua
Internamente, Tika segue algoritmi come n-gramper rilevare la lingua del contenuto in un determinato documento. Tika dipende da classi comeLanguageidentifier e Profiler per l'identificazione della lingua.