TIKA - Mimarlık
Tika'nın Uygulama Düzeyinde Mimarisi
Uygulama programcıları, Tika'yı uygulamalarına kolayca entegre edebilir. Tika, kullanıcı dostu olması için bir Komut Satırı Arayüzü ve bir GUI sağlar.
Bu bölümde, Tika mimarisini oluşturan dört önemli modülü tartışacağız. Aşağıdaki şekil, dört modülüyle birlikte Tika'nın mimarisini göstermektedir -
- Dil algılama mekanizması.
- MIME algılama mekanizması.
- Ayrıştırıcı arabirimi.
- Tika Facade sınıfı.
Dil Algılama Mekanizması
Tika'ya bir metin belgesi her iletildiğinde, yazıldığı dili algılayacaktır. Dil ek açıklaması olmayan belgeleri kabul eder ve dili algılayarak bu bilgileri belgenin meta verilerine ekler.
Dil tanımlamasını desteklemek için Tika'nın Language Identifier paketin içinde org.apache.tika.languageve belirli bir metinden dil tespiti için algoritmalar içeren bir dil tanımlama deposu. Tika, dil tespiti için dahili olarak N-gram algoritmasını kullanır.
MIME Tespit Mekanizması
Tika, belge türünü MIME standartlarına göre algılayabilir. Tika'daki varsayılan MIME türü algılama, org.apache.tika.mime.mimeTypes kullanılarak yapılır . İçerik türü algılamanın çoğu için org.apache.tika.detect.Detector arabirimini kullanır .
Dahili olarak Tika, dosya küreleri, içerik türü ipuçları, sihirli baytlar, karakter kodlamaları ve diğer bazı teknikler gibi çeşitli teknikler kullanır.
Ayrıştırıcı Arayüzü
Org.apache.tika.parser'ın ayrıştırıcı arabirimi, Tika'da belgeleri ayrıştırmak için anahtar arabirimdir. Bu Arayüz, bir belgeden metni ve meta verileri çıkarır ve ayrıştırıcı eklentileri yazmaya istekli olan harici kullanıcılar için bunları özetler.
Farklı belge türlerine özel farklı somut ayrıştırıcı sınıfları kullanan Tika, birçok belge biçimini destekler. Bu formata özgü sınıflar, doğrudan ayrıştırıcı mantığını uygulayarak veya harici ayrıştırıcı kitaplıkları kullanarak farklı belge biçimleri için destek sağlar.
Tika Cephe Sınıfı
Tika cephe sınıfını kullanmak, Java'dan Tika'yı çağırmanın en basit ve doğrudan yoludur ve cephe tasarım modelini takip eder. Tika cephe sınıfını Tika API'nin org.apache.tika paketinde bulabilirsiniz.
Tika, temel kullanım örneklerini uygulayarak bir peyzaj aracısı olarak hareket eder. MIME algılama mekanizması, ayrıştırıcı arayüzü ve dil algılama mekanizması gibi Tika kütüphanesinin temelindeki karmaşıklığı özetler ve kullanıcılara basit bir arayüz sağlar.
Tika'nın Özellikleri
Unified parser Interface- Tika, tüm üçüncü taraf ayrıştırıcı kitaplıklarını tek bir ayrıştırıcı arabirimi içinde kapsüller. Bu özellik sayesinde kullanıcı, uygun ayrıştırıcı kitaplığını seçme ve karşılaşılan dosya türüne göre kullanma yükünden kurtulur.
Low memory usage- Tika daha az bellek kaynağı tüketir, bu nedenle Java uygulamaları ile kolayca yerleştirilebilir. Tika'yı mobil PDA gibi daha az kaynağa sahip platformlarda çalışan uygulama içerisinde de kullanabiliriz.
Fast processing - Uygulamalardan hızlı içerik tespiti ve ayıklama beklenebilir.
Flexible metadata - Tika, dosyaları tanımlamak için kullanılan tüm meta veri modellerini anlar.
Parser integration - Tika, tek bir uygulamada her belge türü için mevcut olan çeşitli ayrıştırıcı kitaplıklarını kullanabilir.
MIME type detection - Tika, MIME standartlarında bulunan tüm ortam türlerinden içeriği algılayabilir ve çıkarabilir.
Language detection - Tika, dil tanımlama özelliği içerir, bu nedenle çok dilli web sitelerinde dil türüne göre belgelerde kullanılabilir.
Tika'nın İşlevleri
Tika çeşitli işlevleri destekler -
- Belge türü algılama
- İçerik çıkarma
- Meta veri çıkarma
- Dil algılama
Belge Türü Algılama
Tika, çeşitli tespit teknikleri kullanır ve kendisine verilen belgenin türünü tespit eder.
İçerik Çıkarma
Tika, çeşitli belge biçimlerinin içeriğini ayrıştırıp çıkarabilen bir ayrıştırıcı kitaplığına sahiptir. Dokümanın türünü tespit ettikten sonra, ayrıştırıcı havuzundan uygun ayrıştırıcıyı seçer ve belgeyi iletir. Farklı Tika sınıfları, farklı belge biçimlerini ayrıştırma yöntemlerine sahiptir.
Meta Veri Çıkarma
Tika, içeriğin yanı sıra belgenin meta verilerini içerik çıkarma işlemiyle aynı prosedürle çıkarır. Bazı belge türleri için Tika, meta verileri çıkaracak sınıflara sahiptir.
Dil Algılama
Tika, dahili olarak aşağıdaki gibi algoritmaları izler: n-grambelirli bir belgedeki içeriğin dilini tespit etmek için. Tika aşağıdaki gibi sınıflara bağlıdırLanguageidentifier ve Profiler dil tanımlama için.