Tika-architecture
TIKA-アーキテクチャ
Tikaのアプリケーションレベルのアーキテクチャ
アプリケーションプログラマは、アプリケーションにTikaを簡単に統合できます。 Tikaは、コマンドラインインターフェイスとGUIを提供して、使いやすくしています。
この章では、Tikaアーキテクチャを構成する4つの重要なモジュールについて説明します。 次の図は、Tikaのアーキテクチャとその4つのモジュールを示しています-
- 言語検出メカニズム。
- MIME検出メカニズム。
- パーサーインターフェイス。
- ティカファサードクラス。
言語検出メカニズム
テキスト文書がTikaに渡されるたびに、文書が書かれた言語が検出されます。 言語注釈のないドキュメントを受け入れ、言語を検出することでその情報をドキュメントのメタデータに追加します。
言語識別をサポートするために、Tikaにはパッケージ org.apache.tika.language に Language Identifier というクラスがあり、内部に特定のテキストから言語を検出するアルゴリズムを含む言語識別リポジトリがあります。 Tikaは、言語検出に内部的にN-gramアルゴリズムを使用しています。
MIME検出メカニズム
Tikaは、MIME標準に従ってドキュメントタイプを検出できます。 TikaのデフォルトのMIMEタイプの検出は、https://tika.apache.org/1.4/api/org/apache/tika/mime/MimeTypesl [org.apache.tika.mime.mimeTypes]を使用して行われます。 ほとんどのコンテンツタイプの検出には、https://tika.apache.org/1.4/api/org/apache/tika/detect/Detectorl [org.apache.tika.detect.Detector]インターフェースを使用します。
内部的にTikaは、ファイルグロブ、コンテンツタイプヒント、マジックバイト、文字エンコーディング、およびその他のいくつかのテクニックのようないくつかのテクニックを使用します。
パーサーインターフェイス
org.apache.tika.parserのパーサーインターフェイスは、Tikaでドキュメントを解析するための重要なインターフェイスです。 このインターフェイスは、ドキュメントからテキストとメタデータを抽出し、パーサープラグインを作成する外部ユーザー向けに要約します。
Tikaは、個々のドキュメントタイプに固有のさまざまな具体的なパーサークラスを使用して、多くのドキュメント形式をサポートしています。 これらの形式固有のクラスは、パーサーロジックを直接実装するか、外部パーサーライブラリを使用することにより、さまざまなドキュメント形式をサポートします。
ティカファサードクラス
Tikaファサードクラスを使用することは、JavaからTikaを呼び出す最も簡単で直接的な方法であり、ファサードデザインパターンに従います。 Tikaファサードクラスは、Tika APIのorg.apache.tikaパッケージにあります。
基本的なユースケースを実装することにより、Tikaはランドスケープの仲介者として機能します。 MIME検出メカニズム、パーサーインターフェイス、言語検出メカニズムなど、Tikaライブラリの基礎となる複雑さを抽象化し、ユーザーに使用するシンプルなインターフェイスを提供します。
ティカの特徴
- 統合されたパーサーインターフェイス-Tikaはすべてのサードパーティのパーサーライブラリを単一のパーサーインターフェイス内にカプセル化します。 この機能により、ユーザーは適切なパーサーライブラリを選択する負担から逃れ、発生したファイルの種類に応じてそれを使用します。
- 低メモリ使用量-Tikaはより少ないメモリリソースを消費するため、Javaアプリケーションに簡単に組み込むことができます。 また、モバイルPDAなどのリソースの少ないプラットフォームで実行されるアプリケーション内でTikaを使用することもできます。
- 高速処理-アプリケーションからの迅速なコンテンツ検出と抽出が期待できます。
- 柔軟なメタデータ-Tikaは、ファイルの記述に使用されるすべてのメタデータモデルを理解します。
- パーサーの統合-Tikaは、単一のアプリケーションの各ドキュメントタイプで利用可能なさまざまなパーサーライブラリを使用できます。
- * MIMEタイプの検出*-Tikaは、MIME標準に含まれるすべてのメディアタイプからコンテンツを検出および抽出できます。
- 言語検出-Tikaには言語識別機能が含まれているため、多言語Webサイトの言語タイプに基づいたドキュメントで使用できます。
Tikaの機能
ティカはさまざまな機能をサポートしています-
- 文書タイプの検出
- コンテンツ抽出
- メタデータ抽出
- 言語検出
文書タイプの検出
Tikaはさまざまな検出手法を使用して、与えられたドキュメントの種類を検出します。
コンテンツ抽出
Tikaには、さまざまなドキュメント形式のコンテンツを解析して抽出できるパーサーライブラリがあります。 ドキュメントのタイプを検出した後、パーサーリポジトリから適切なパーサーを選択し、ドキュメントを渡します。 Tikaの異なるクラスには、異なるドキュメント形式を解析するメソッドがあります。
メタデータ抽出
コンテンツに加えて、Tikaはコンテンツ抽出と同じ手順でドキュメントのメタデータを抽出します。 一部のドキュメントタイプでは、Tikaにはメタデータを抽出するクラスがあります。
言語検出
内部的に、Tikaは n-gram などのアルゴリズムに従って、指定されたドキュメントのコンテンツの言語を検出します。 Tikaは、言語識別のために Languageidentifier や Profiler などのクラスに依存しています。