Zend_Search_Lucene Indexdateiformate sind binär kompatibel mit
der Java Lucene Version 1.4 und größer.
Eine detaillierte Beschreibung dieses Formats ist hier erhältlich: http://lucene.apache.org/java/2_3_0/fileformats.html. [18].
Nach der Indexerstellung wird das Indexverzeichnis verschiedene Dateien enthalten:
-
Die
segmentsDatei ist eine Liste der Indexsegmente. -
Die
*.cfsDateien enthalten die Indexsegmente. Beachte! Ein optimierter Index enthält immer nur ein Segment. -
Die
deletableDatei ist eine Liste von Dateien, die vom Index nicht mehr verwendet werden, aber noch nicht gelöscht werden konnten.
Das unten gelistete Java Programm stellt ein Beispiel für die Indizierung einer Datei mit Java Lucene dar:
/**
* Indexerstellung:
*/
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.document.*;
import java.io.*
...
IndexWriter indexWriter = new IndexWriter("/data/my_index",
new SimpleAnalyzer(), true);
...
String filename = "/path/to/file-to-index.txt"
File f = new File(filename);
Document doc = new Document();
doc.add(Field.Text("path", filename));
doc.add(Field.Keyword("modified",DateField.timeToString(f.lastModified())));
doc.add(Field.Text("author", "unknown"));
FileInputStream is = new FileInputStream(f);
Reader reader = new BufferedReader(new InputStreamReader(is));
doc.add(Field.Text("contents", reader));
indexWriter.addDocument(doc);
[18] Die aktuell unterstützte Version des Lucene Index Dateiformats ist 2.3 (beginnend mit Zend Framework 1.6).