Ricerca full-text

Ogni record viene indicizzato automaticamente per la ricerca per parole chiave. Una query restituisce i record che contengono le sue parole, dal risultato migliore, e solo quelli che il chiamante può leggere.

Cosa viene indicizzato

L'indice copre la chiave naturale di ogni record e i suoi dati, con la chiave naturale a peso maggiore. È una colonna generata in Postgres, quindi il database la mantiene aggiornata a ogni scrittura dei record.

Come corrisponde una query

Una query trova i record che contengono le parole cercate e li ordina per rilevanza, dal migliore. La corrispondenza avviene su parole intere, con le regole della lingua inglese. La corrispondenza per sottostringa e per prefisso su un singolo campo spetta alle query di elenco, che hanno filtri contiene e inizia-con per i campi di testo. Il recupero per significato è una funzione a parte, la ricerca semantica.

Limitata a ciò che il chiamante può leggere

La ricerca viene eseguita per il chiamante con le regole di accesso a livello di riga, quindi un record che il chiamante non può leggere non è un risultato. Sull'API pubblica ogni risultato viene poi risolto come lo risolverebbe una normale lettura, e quello che il chiamante non può vedere viene scartato.

Come chiamarla

searchRecords cerca tra i modelli e può essere limitata a uno con la sua chiave del modello. Ogni risultato restituisce l'id del record, la chiave del modello, la chiave naturale, un punteggio e il contenuto. La query richiede search:read come scope, e una chiave limitata a modelli specifici non può eseguirla tra i modelli. foir search esegue la stessa ricerca da terminale.

Leggi il dettaglio

Il riferimento dell'SDK elenca le chiamate di ricerca sul client dei dati, tra i modelli e per singolo modello.