Come ottenere risultati di ricerca sempre aggiornati: presentazione della ricerca per indicizzazione continua per SharePoint

Articolo originale pubblicato sabato 15 settembre 2012

Destinatari: amministratori di ricerca/professionisti IT
Prerequisito: questo blog presuppone che il lettore abbia una conoscenza di base di Amministrazione ricerca sulla topologia di ricerca di SharePoint, sul meccanismo della ricerca per indicizzazione e sui principi della pianificazione della ricerca per indicizzazione.
Nota: questa è una funzionalità nuova per SharePoint 2013.

Cosa si intende per aggiornamento dei risultati di ricerca?
Dopo il caricamento di un documento da parte di un utente nel relativo sito di SharePoint, il periodo di tempo che precede la disponibilità del documento per la ricerca tramite il portale di ricerca di SharePoint indica la latenza di aggiornamento.

Da cosa dipende l'aggiornamento?
Da più fattori, quali le dimensioni dell'archivio, la percentuale di dati modificati, il tempo di risposta alla richiesta dall'archivio, la pianificazione della ricerca per indicizzazione, i tipi di modifiche. Ciò dipende dal fatto che per rendere disponibile un documento per la ricerca è necessario attivare una ricerca per indicizzazione (manualmente o automaticamente in base alla pianificazione) e la modifica deve essere identificata, richiesta ed elaborata.

Qual è il problema?
Tradizionalmente erano disponibili due opzioni di pianificazione in Ricerca SharePoint: ricerca per indicizzazione completa o incrementale. Con una ricerca per indicizzazione completa viene avviato il rilevamento dell'intero host, mentre con una ricerca per indicizzazione incrementale vengono elaborati solo gli elementi dell'host che sono stati modificati dall'ultima ricerca per indicizzazione, tramite il confronto degli indicatori di data e ora di ogni documento o utilizzando un registro delle modifiche preesistente per l'archivio in cui si tiene traccia dei documenti modificati. Per ottenere risultati più aggiornati, l'approccio consigliato consiste nel rendere la ricerca per indicizzazione incrementale più aggressiva (ovvero ogni 30 minuti anziché ogni giorno).

Uno dei limiti della ricerca per indicizzazione completa e incrementale è l'impossibilità di eseguirle in parallelo: ciò significa che se è in corso una ricerca per indicizzazione completa o incrementale, l'amministratore non può avviarne un'altra sulla stessa origine di contenuto. Ciò impone un approccio first-in-first-out sulla modalità di indicizzazione degli elementi. Inoltre, alcuni tipi di modifiche richiedono tempi di esecuzione più lunghi (ad esempio una modifica dei criteri a livello radice di un host comporta la reindicizzazione dell'intero host per aggiornare il descrittore di protezione di ogni elementi indicizzato). Questi due fattori combinati influiscono sulla fluttuazione dell'aggiornamento anche quando è impostata una ricerca per indicizzazione incrementale frequente. Per illustrare questo aspetto, di seguito vi presento il modello mentale previsto della ricerca per indicizzazione incrementale rispetto al mondo reale, seguito dall'aggiornamento di tale sistema.

 

 

 

Soluzione: presentazione della ricerca per indicizzazione continua
Consiglio un'opzione di ricerca per indicizzazione per le origini di contenuto di tipo SharePoint che fornisce un'alternativa priva di pianificazione per la gestione di un'origine di contenuto. L'architettura sottostante è progettata per garantire l'aggiornamento coerente risolvendo due limitazioni fondamentali delle ricerche per indicizzazione complete/incrementali:

  • possono essere eseguite in parallelo
  • una modifica importante non avrà come conseguenza il mancato aggiornamento di tutte le modifiche successive

Ulteriori informazioni…
Dietro le quinte, la selezione della ricerca per indicizzazione continua ha come conseguenza l'attivazione di una ricerca per indicizzazione ogni 15 minuti indipendentemente dal fatto che la sessione precedente sia stata completata o meno. Per questo motivo, una modifica effettuata immediatamente dopo una modifica importante non deve rimanere in attesa. Le nuove modifiche continueranno a essere elaborate in parallelo mentre una modifica importante dei criteri viene elaborata da un'altra sessione di ricerca per indicizzazione continua. Di seguito è riportata un'illustrazione del modo in cui le ricerche per indicizzazione continua sono avviate ogni 15 minuti in parallelo per agevolare la gestione di picchi di contenuto improvvisi senza influire sull'aggiornamento globale. Nel grafico che segue viene illustrato l'impatto sull'aggiornamento raggiunto utilizzando la ricerca per indicizzazione continua rispetto a quella incrementale.

 

 

Altre informazioni necessarie
Nei blog successivi esamineremo in dettaglio il modo in cui la ricerca per indicizzazione continua gestisce diversi tipi di scenari (errori, sicurezza e così via) e come utilizzare il registro e la cronologia di ricerca per indicizzazione per avere una migliore comprensione di ciò che accade dietro le quinte.

Domande frequenti:

Posso utilizzare la ricerca per indicizzazione continua per tutti i tipi di origini di contenuto?
No. Le ricerche per indicizzazione continue sono disponibili solo per le origini di contenuto di tipo SharePoint. Per tutti gli altri tipi di origini di contenuto continueranno a essere disponibili le opzioni della ricerca per indicizzazione incremementale e completa.

L'uso della ricerca per indicizzazione continua crea un carico aggiuntivo sul registro?
il footprint della ricerca per indicizzazione continua è simile a quello della ricerca per indicizzazione incrementale. Benché la frequenza di esecuzione delle richieste sia aumentata, il numero massimo di richieste simultanee in un archivio/host è ancora controllato dalle *regole di impatto della ricerca per indicizzazione* (che definiscono il numero massimo di thread simultanei che possono effettuare le richieste. Per impostazione predefinita il valore è di 12 thread, ma può essere modificato secondo i requisiti aziendali e/o il piano di capacità).

Devo impostare una ricerca per indicizzazione incrementale o completa quando utilizzo una ricerca per indicizzazione continua?
Non è necessario configurare la ricerca per indicizzazione incrementale con la ricerca per indicizzazione continua.

La ricerca per indicizzazione continua crea un carico aggiuntivo per l'host o l'archivio?
La ricerca per indicizzazione continua aumenta il carico in modo marginale sull'host poiché di per sé può essere eseguita in parallelo a più sessioni contemporaneamente. Tuttavia, occorre notare che rispetta l'impostazione delle regole di impatto della ricerca per indicizzazione con cui viene controllato il numero di richieste simultanee che è possibile effettuare a un host (valore impostato su 12 thread che può essere modificato).

Posso utilizzare la ricerca per indicizzazione continua per eseguire ricerche per indicizzazione nel contenuto SharePoint di versioni precedenti?
Sì. Benché la versione dell'applicazione di ricerca debba essere la 2013, le farm di contenuto che eseguono versioni precedenti di SharePoint possono essere configurate per la ricerca per indicizzazione continua.

Questo è un post di blog localizzato. Consultate l'articolo originale: How can I achieve the best freshness of search results? Introducing Continuous Crawls for SharePoint