Elasticsearch: Plugin di Ingest Attachment

Come estrarre dati da file PPT, XLS e PDF in Elasticsearch

👋 Benvenuti nella documentazione di Stackhero!

Stackhero offre una soluzione Elasticsearch cloud pronta all'uso che fornisce numerosi vantaggi, tra cui:

  • Prestazioni ottimali e sicurezza robusta grazie a una VM privata e dedicata.
  • Nome di dominio personalizzabile protetto con supporto di crittografia HTTPS.

Risparmia tempo e semplifica la tua vita: bastano 5 minuti per provare la soluzione di Elasticsearch cloud hosting di Stackhero!

Il plugin Ingest Attachment analizza ed estrae i metadati e il testo da vari formati di file, inclusi presentazioni PowerPoint, documenti Excel e PDF. Utilizza Apache Tika, una potente libreria di estrazione del testo. Per un elenco completo dei formati supportati, visitare il sito di Tika.

Questa guida ti aiuterà a iniziare con il plugin.

Per prima cosa, abilita il plugin nella configurazione di Stackhero Elasticsearch:

  1. Vai alla sezione Elasticsearch nel tuo dashboard Stackhero.
  2. Seleziona il plugin ingest-attachment dalle opzioni disponibili.

Dashboard StackheroDashboard Stackhero

Successivamente, dichiara il pipeline di attachment in Elasticsearch. In questo esempio, il contenuto che desideri estrarre è memorizzato nel campo data:

PUT _ingest/pipeline/attachment
{
  "description": "Estrarre informazioni di attachment",
  "processors": [
    {
      "attachment": {
        "field": "data"
      }
    }
  ]
}

Si consiglia di utilizzare i "Dev Tools" in Kibana per un'esecuzione semplice tramite copia/incolla di questo comando.

Dev tools KibanaDev tools Kibana

Ora puoi indicizzare un documento che contiene un attachment. Il documento deve includere un campo data che contiene il contenuto del file codificato in Base64. In questo esempio, il documento è un file RTF contenente la frase "This is the content of an RTF file":

PUT my_index/_doc/my_id?pipeline=attachment
{
  "data": "e1xydGYxXGFuc2kKVGhpcyBpcyB0aGUgY29udGVudCBvZiBhIFJURiBmaWxlClxwYXIgfQ=="
}

Per visualizzare il documento elaborato, recuperalo utilizzando il suo ID:

GET my_index/_doc/my_id

La risposta dovrebbe apparire simile alla seguente:

{
  "_index" : "my_index",
  "_type" : "_doc",
  "_id" : "my_id",
  "_version" : 1,
  "found" : true,
  "_source" : {
    "data" : "e1xydGYxXGFuc2kKVGhpcyBpcyB0aGUgY29udGVudCBvZiBhIFJURiBmaWxlClxwYXIgfQ==",
    "attachment" : {
      "content_type" : "application/rtf",
      "language" : "en",
      "content" : "This is the content of a RTF file",
      "content_length" : 35
    }
  }
}

Nota che il campo _source ora include sia i dati originali in Base64 che i dettagli dell'attachment estratto come il tipo di file e il contenuto.

Il plugin Ingest Attachment è uno strumento potente e intuitivo per estrarre contenuti e metadati da vari formati di file. Si integra direttamente con Elasticsearch per un'ingestione dati senza soluzione di continuità. Per ulteriori informazioni, fare riferimento alla documentazione ufficiale.