Ricerca ibrida in SharePoint 2013

Articolo originale pubblicato martedì 6 novembre 2012

Uno dei principi chiave che ci ha guidati nella progettazione di questa versione di SharePoint è stata la volontà di fornire ai clienti un'esperienza cloud uniforme. Sappiamo che il cloud può offrire enormi vantaggi, ma in misura diversa ai singoli clienti e con modalità diverse. Abbiamo progettato il prodotto in modo che i clienti non debbano rinunciare alle funzionalità avanzate a cui sono abituati con Office per poter usufruire del cloud.

I nostri clienti utilizzano SharePoint in molti modi diversi e hanno creato complessi ecosistemi intorno ai nostri strumenti in modo da soddisfare le proprie esigenze. Che si tratti di applicazioni line-of-business, dell'integrazione con un sistema ERP o di altri sistemi e soluzioni, sappiamo che la scelta di una famiglia di prodotti per la produttività è molto più complessa rispetto alla scelta dello strumento da utilizzare. Una strategia di "rimozione e sostituzione" non può funzionare. Ci siamo impegnati quindi a garantire ai nostri clienti la possibilità di passare al cloud alle proprie condizioni. I tre principi chiave che abbiamo utilizzato sono i seguenti:

  1. Alcuni clienti non passeranno interamente al cloud: riteniamo che nell'immediato futuro utilizzare una combinazione di alcune soluzioni nel cloud e altre in locale sarà la norma. Le soluzioni nel cloud e in locale devono pertanto coesistere.
  2. Il cloud non è un sistema chiuso: l'utilità di SharePoint per gli utenti deriva principalmente dall'interazione con altri sistemi da cui dipendono le attività dei clienti, ovvero CRM, ERP, Big Data e così via. Nessuna soluzione isolata da tali sistemi può avere successo.
  3. I clienti devono riscontrare un'immediata utilità del cloud, indipendentemente dal fatto che i sistemi esistenti vengano o meno spostati nel cloud. Dobbiamo consentire la sperimentazione e l'esplorazione di nuove funzionalità per i clienti nel cloud, anche se la maggior parte dell'infrastruttura esistente viene mantenuta in locale.

Tutti i servizi di Office 365 possono gestire una combinazione di istanze nel cloud e in locale. Un cliente può ad esempio spostare tutte o alcune delle cassette postali nel cloud, lasciando l'infrastruttura di SharePoint in locale. Questa flessibilità è un elemento chiave imprescindibile per la progettazione.

Il caricamento nel cloud è un altro elemento chiave. In Exchange ad esempio offriamo un set di strumenti avanzato per la migrazione delle cassette postali da e verso il cloud e per la gestione di una combinazione di cassette postali in entrambi gli ambienti.

Per SharePoint, la capacità di gestire ambienti misti rappresenta una sfida. In Exchange è disponibile un singolo contenitore, ovvero la cassetta postale, di proprietà di un singolo utente. Il routing alle impostazioni locali appropriate per la cassetta postale è sufficiente per garantire il funzionamento. I siti e i servizi di SharePoint sono relativi a più utenti che collaborano in un singolo sito, integrano dati di più origini ed eseguono ricerche in un'intera raccolta di documenti. Il confine tra cloud e versioni in locale è per natura poco chiaro. Abbiamo dovuto decidere pertanto quale direzione prendere in base a queste considerazioni: affrontare innanzitutto la questione su larga scala e abilitare il supporto ibrido ovunque oppure concentrarci sugli scenari che possono rivelarsi più utili? Alla fine abbiamo scelto quest'ultima soluzione. In particolare ci siamo dedicati alla creazione di un livello oAuth per abilitare l'autenticazione e le comunicazioni da servizio a servizio e consentire un supporto ibrido avanzato per la ricerca.

Se avete investito in SharePoint sia in locale che nel cloud, una delle prime esigenze degli utenti è trovare il contenuto, indipendentemente dalla posizione in cui è ospitato. Gli utenti desiderano trovare rapidamente e senza problemi i dati che stanno cercando, senza dover apprendere nuovi concetti o eseguire operazioni aggiuntive. Abbiamo risolto questo problema aggiungendo la funzionalità ibrida per la ricerca. In particolare, consentiamo agli utenti di eseguire una ricerca e ottenere i risultati più pertinenti sia da SharePoint Online che da SharePoint 2013 in locale.

Abbiamo dovuto affrontare in corso d'opera diversi problemi di progettazione:

  • Come recuperare risultati aggiornati da un sistema remoto in modo scalabile
  • Come integrare più insiemi di risultati in una singola operazione di ricerca
  • Come garantire prestazioni di query elevate

Per il primo problema, abbiamo preso in considerazione sia l'indicizzazione/ricerca per indicizzazione nel sistema remoto che la federazione di query di runtime. Abbiamo scelto poi quest'ultimo approccio per diversi motivi, tra cui l'efficacia di risultati aggiornati e la fiducia nella nostra capacità di offrire un'esperienza rapida e intuitiva. Immaginate decine di migliaia di crawler di ricerca di clienti che eseguono tutti contemporaneamente il processo di ping su SharePoint Online per richiedere modifiche.

Abbiamo dovuto decidere quindi il modo più efficiente per presentare i risultati all'utente. Utilizzando le nuove funzionalità delle regole di query introdotte in SharePoint 2013, presentiamo un blocco di risultati contenente i primi n risultati della ricerca dal sistema remoto incorporati nella pagina dei risultati della ricerca. Gli utenti visualizzano i risultati principali in questa posizione e possono fare clic sul blocco di risultati per visualizzarne altri. Il sistema di ricerca acquisisce inoltre nozioni nel tempo: se i risultati di un blocco sono utili e gli utenti fanno clic su di essi, nel tempo l'intero blocco "viene spostato verso l'alto" nella pagina dei risultati della ricerca. Se gli utenti non fanno clic sui risultati del blocco per una particolare query, il blocco viene spostato ancora più in basso.

Ci siamo concentrati infine su come semplificare l'esecuzione di queste query remote per ottimizzare le prestazioni. Con il passaggio al rendering sul lato client per i risultati della ricerca (dopo l'iniziale caricamento della pagina) in SharePoint 2013, siamo partiti da una base solida. Abbiamo modellato queste query remote in modo da renderle simili per quanto possibile alle normali query eseguite su un indice di ricerca locale, con un minimo di logica aggiuntiva per abilitare l'attraversamento sicuro del firewall aziendale (quando vengono presentati i risultati locali in SharePoint Online).

Esempio di risultati di ricerca ibrida
Modellando le query di ricerca ibrida per renderle il più possibile simili alle normali query di ricerca, siamo riusciti a ridurre al minimo la complessità del codice sottostante garantendo il funzionamento dell'intera funzionalità di ricerca negli scenari ibridi, dagli affinamenti ricerca grafici alle anteprime dettagliate di documenti di Office nel riquadro visualizzato al passaggio del mouse.

Per chiudere, risponderemo ad alcune domande frequenti. Grazie per l'attenzione. Vi invitiamo a lasciare i vostri commenti nel blog per indicarci come intendete utilizzare la funzionalità ibrida.

Quali vantaggi offre la ricerca ibrida?

  • Da un sito di SharePoint Online, consente di ottenere risultati della ricerca per il contenuto presente sia nel cloud che nelle soluzioni in locale.
  • Da un sito di SharePoint 2013 in locale, consente di ottenere risultati della ricerca per il contenuto presente sia nelle soluzioni in locale che nel cloud.
  • Consente di abilitare risultati "ibridi" per tipi specifici di query in base alle condizioni.

Desidero provare la ricerca ibrida. Quali sono i prerequisiti?

  • Qualsiasi tenancy di SharePoint Online aggiornata a SharePoint 2013 (gli aggiornamenti verranno eseguiti in sequenza nella primavera del 2013)
  • SharePoint Server 2013 distribuito in locale
  • Profili utente di Active Directory in locale sincronizzati con Office 365 mediante lo strumento di sincronizzazione della directory dei Microsoft Online Services
  • Proxy inverso o dispositivo F5 per esporre in modo sicuro la farm di SharePoint 2013 in locale a SharePoint Online (necessario solo per consentire agli utenti di SharePoint Online di trovare contenuto in locale)

Dove sono reperibili le istruzioni?

I nostri autori stanno lavorando duramente per acquisire tutti i passaggi necessari per configurare una relazione di trust tra le istanze in locale e SharePoint Online, nonché i passaggi per configurare i concetti specifici della ricerca necessari per abilitare scenari di ricerca ibrida, ad esempio origini dei risultati, regole di query, blocchi dei risultati e credenziali di archiviazione sicura. Ci auguriamo che queste indicazioni vengano pubblicate su TechNet in tempo per la conferenza su SharePoint prevista per il 12-15 novembre 2012.

Questo è un post di blog localizzato. L'articolo originale è disponibile in Hybrid Search in SharePoint 2013.