Esempio: Creazione di indici N-gram e morfologici per il testo semplice

Informazioni su questa attività

Utilizzare le seguenti istruzioni per impostare e sincronizzare gli indici di Db2® Text Search per l'indicizzazione morfologica e degli N-grammi nel database SAMPLE. Ricerca di parole cinesi linguisticamente significative.

Procedura

  1. Creare due tabelle per l'indicizzazione morfologica e degli N-grammi.
    Le tabelle hanno colonne per il nome del libro, l'autore, la storia, il numero ISBN e l'anno di pubblicazione del libro.
    db2 "CREATE TABLE morphobooks (
    isbn VARCHAR(18) not null PRIMARY KEY, 
    bookname VARCHAR(30), 
    author VARCHAR(30), 
    story blob(1G), 
    year integer
    )" 
    
    db2 "CREATE TABLE ngrambooks (
    isbn VARCHAR(18) not null PRIMARY KEY, 
    bookname VARCHAR(30), 
    author VARCHAR(30), 
    story blob(1G), 
    year integer
    )" 
    
  2. Eseguire il comando CREATE INDEX per creare un indice di ricerca testuale sulla colonna STORIA della tabella MORPHOBOOKS. Il nome dell'indice di ricerca del testo è MORPHOINDEX.
    db2ts " CREATE INDEX db2ts.morphoindex FOR TEXT 
    ON morphobooks (story) LANGUAGE zh_TW 
    INDEX CONFIGURATION (CJKSEGMENTATION 'morphological') 
    CONNECT TO sample";
  3. Eseguire il comando CREATE INDEX per creare un indice di ricerca testuale sulla colonna STORIA della tabella NGRAMBOOKS. Il nome dell'indice di ricerca del testo è NGRAMINDEX.
    db2ts " CREATE INDEX db2ts.ngramindex FOR TEXT 
    ON ngrambooks (story) LANGUAGE zh_TW 
    INDEX CONFIGURATION (CJKSEGMENTATION 'ngram') 
    CONNECT TO sample";
  4. Caricare i dati nelle due tabelle.
    db2 "import from ./data/books.del of DEL lobs from ./data/ 
    replace into morphobooks";
    
    db2 "import from ./data/books.del of DEL lobs from ./data/ 
    replace into ngrambooks";
    
    Il file books.del contiene la voce:
    "0-13-086755-4", "book1", "Julie", "books_zh_TW1.lob.0.449/", 2004
    L'oggetto Books_zh_TW1.lob large ha il seguente contenuto:
    Figura 1. Contenuto dell'oggetto Books_zh_TW1.lob
    Contenuto dell'oggetto Books_zh_TW1.lob
  5. Per sincronizzare gli indici di ricerca del testo con i dati della tabella corrispondente, eseguire i seguenti comandi:
    db2ts "UPDATE INDEX db2ts.morphoindex FOR TEXT CONNECT TO sample"; 
    
    db2ts "UPDATE INDEX db2ts.ngramindex FOR TEXT CONNECT TO sample"; 
    
  6. La ricerca di parole cinesi linguisticamente significative ha successo sia per la segmentazione morfologica che per quella degli N-grammi.
    Figura 2. Risultati della ricerca di parole cinesi significative
    Risultati della ricerca di parole cinesi significative
    L'output indica che il risultato della segmentazione morfologica è uguale a quello della segmentazione degli N-grammi
  7. Cercare parole cinesi senza senso per vedere la differenza tra segmentazione morfologica e N-grammi.
    Figura 3 Risultati della ricerca di parole cinesi senza senso
    Risultati della ricerca di parole cinesi senza senso
    Solo la segmentazione N-gramma restituisce il nome del libro.