TIKA - Architektura
Architektura Tika na poziomie aplikacji
Programiści aplikacji mogą łatwo zintegrować Tika ze swoimi aplikacjami. Tika zapewnia interfejs wiersza poleceń i GUI, aby był przyjazny dla użytkownika.
W tym rozdziale omówimy cztery ważne moduły, które składają się na architekturę Tika. Poniższa ilustracja przedstawia architekturę Tika wraz z jej czterema modułami -
- Mechanizm wykrywania języka.
- Mechanizm wykrywania MIME.
- Interfejs parsera.
- Klasa elewacji Tika.
Mechanizm wykrywania języka
Za każdym razem, gdy dokument tekstowy jest przekazywany do Tika, wykryje język, w którym został napisany. Akceptuje dokumenty bez adnotacji językowej i dodaje te informacje do metadanych dokumentu, wykrywając język.
Aby ułatwić identyfikację języka, Tika ma klasę o nazwie Language Identifier w paczce org.apache.tika.languageoraz repozytorium identyfikacji języka, które zawiera algorytmy do wykrywania języka z danego tekstu. Tika wewnętrznie używa algorytmu N-gramowego do wykrywania języka.
Mechanizm wykrywania MIME
Tika może wykryć typ dokumentu zgodnie ze standardami MIME. Domyślne wykrywanie typu MIME w Tika odbywa się za pomocą org.apache.tika.mime.mimeTypes . Używa interfejsu org.apache.tika.detect.Detector do wykrywania większości typów zawartości.
Wewnętrznie Tika używa kilku technik, takich jak pliki globów, wskazówki dotyczące typu zawartości, magiczne bajty, kodowanie znaków i kilka innych technik.
Interfejs parsera
Interfejs parsera org.apache.tika.parser jest kluczowym interfejsem do analizowania dokumentów w Tika. Ten interfejs wyodrębnia tekst i metadane z dokumentu i podsumowuje je dla zewnętrznych użytkowników, którzy chcą pisać wtyczki parsera.
Używając różnych konkretnych klas parsera, specyficznych dla poszczególnych typów dokumentów, Tika obsługuje wiele formatów dokumentów. Te klasy specyficzne dla formatu zapewniają obsługę różnych formatów dokumentów, bezpośrednio implementując logikę parsera lub używając zewnętrznych bibliotek parsera.
Klasa elewacji Tika
Użycie klasy elewacji Tika jest najprostszym i bezpośrednim sposobem wywołania Tiki z języka Java i jest zgodne ze wzorcem projektowym elewacji. Klasę elewacji Tika można znaleźć w pakiecie org.apache.tika API Tika.
Wdrażając podstawowe przypadki użycia, Tika działa jako broker krajobrazu. Wyabstrahuje podstawową złożoność biblioteki Tika, taką jak mechanizm wykrywania MIME, interfejs parsera i mechanizm wykrywania języka, i zapewnia użytkownikom prosty interfejs w użyciu.
Funkcje Tika
Unified parser Interface- Tika hermetyzuje wszystkie biblioteki parserów stron trzecich w jednym interfejsie parsera. Dzięki tej funkcji użytkownik nie musi już wybierać odpowiedniej biblioteki parsera i używać jej zgodnie z napotkanym typem pliku.
Low memory usage- Tika zużywa mniej zasobów pamięci, dlatego można ją łatwo osadzić w aplikacjach Java. Możemy również używać Tiki w ramach aplikacji, które działają na platformach z mniejszą ilością zasobów, takich jak mobilne PDA.
Fast processing - Można oczekiwać szybkiego wykrywania treści i ekstrakcji z aplikacji.
Flexible metadata - Tika rozumie wszystkie modele metadanych, które są używane do opisywania plików.
Parser integration - Tika może używać różnych bibliotek parserów dostępnych dla każdego typu dokumentu w jednej aplikacji.
MIME type detection - Tika może wykrywać i wyodrębniać treści ze wszystkich typów mediów objętych standardami MIME.
Language detection - Tika zawiera funkcję identyfikacji języka, dlatego może być używana w dokumentach opartych na typie języka na wielojęzycznych stronach internetowych.
Funkcjonalności Tika
Tika obsługuje różne funkcjonalności -
- Wykrywanie typu dokumentu
- Ekstrakcja treści
- Ekstrakcja metadanych
- Wykrywanie języka
Wykrywanie typu dokumentu
Tika wykorzystuje różne techniki wykrywania i wykrywa rodzaj przekazanego dokumentu.
Ekstrakcja treści
Tika ma bibliotekę parserów, która może analizować zawartość różnych formatów dokumentów i wyodrębniać je. Po wykryciu typu dokumentu wybiera odpowiedni parser z repozytorium parserów i przekazuje dokument. Różne klasy Tika mają metody analizowania różnych formatów dokumentów.
Wyodrębnianie metadanych
Wraz z treścią Tika wyodrębnia metadane dokumentu w taki sam sposób, jak przy wyodrębnianiu treści. W przypadku niektórych typów dokumentów Tika ma klasy do wyodrębniania metadanych.
Wykrywanie języka
Wewnętrznie Tika stosuje algorytmy, takie jak n-gramdo wykrywania języka treści w danym dokumencie. Tika zależy od klas, takich jakLanguageidentifier i Profiler do identyfikacji języka.