Questo è chiamato sharding in MongoDB e partitioning in SQL Server. Se il sito web utilizza effettivamente "enormi quantità di dati", sharding / partizionamento è già implementato.
Probabilmente potresti voler ripensare a quali dati hai effettivamente bisogno di recuperare, come vengono utilizzati e come li immagazzini. Se esegui il completamento automatico sui nomi dei prodotti, probabilmente non è necessario recuperare le anteprime dei prodotti o la cronologia degli acquisti.
Se ci sono effettivamente terabyte di dati, il completamento automatico potrebbe essere inutile. D'altra parte, se il completamento automatico riguarda un campo specifico come il nome del prodotto o il nome della persona, non riesco a immaginare un caso in cui i dati non si adattano a una singola macchina.
Ad esempio, se esegui il completamento automatico dei nomi delle persone e supponiamo che il nome di una persona media sia lungo 20 caratteri, sette miliardi di persone sulla Terra portano a un massimo di 280.000.000.000 di byte, ovvero circa 280 GB. Su una singola macchina con 2 TB di spazio, puoi memorizzarla sette volte.