Vai al contenuto
AI.info

The Pulse

OpenAI ripensa lo storage di Habitat per il suo prossimo miliardo di utenti

OpenAI afferma che la sua piattaforma di storage Habitat serve più di 1 miliardo di utenti in 40 regioni e conserva oltre 500 petabyte di dati. L’azienda descrive le modifiche alla configurazione di Azure Cosmos DB, alla cache e al servizio

OpenAI ripensa lo storage di Habitat per il suo prossimo miliardo di utenti

AI.info Team · Scritto con l’IA · verificato ·

«Nel complesso, queste modifiche hanno ridotto il p50 globale delle letture da circa 120 ms a circa 10 ms: un miglioramento di 12 volte da quando abbiamo iniziato a concentrarci sulle prestazioni in precedenza quest’anno».

Jon Lee, Hrachya Hakobyan e Chaomin Yu, membri del personale tecnico, OpenAI

Habitat, la piattaforma di storage di OpenAI, serve ora più di 1 miliardo di utenti in 40 regioni geografiche e gestisce oltre 500 petabyte di dati, ha dichiarato l’azienda in un articolo pubblicato il 23 ottobre 2026. Il resoconto tecnico si concentra sul livello database alla base di Habitat e sulle modifiche operative apportate da OpenAI durante la sua espansione. La lezione principale: né un unico container di database condiviso né un container separato per ogni carico di lavoro funzionavano bene da soli.

Habitat supporta prodotti tra cui ChatGPT, l’API e Codex. Oltre all’accesso al database, gestisce l’instradamento, la residenza dei dati, la crittografia, l’autorizzazione, i limiti alle richieste e la cache. OpenAI afferma che il suo approccio attuale prevede l’uso predefinito di container Azure Cosmos DB condivisi, insieme a strumenti per isolare i carichi di lavoro e spostare i dati dove necessario.

Perché OpenAI è tornata ai container condivisi

OpenAI ha iniziato con un container Azure Cosmos DB condiviso, poi ha aggiunto container dedicati per i servizi critici o in rapida crescita. I container separati riducevano il rischio che un carico di lavoro interferisse con gli altri, ma trasferivano la pianificazione della capacità ai singoli team di prodotto. I team dovevano prevedere il traffico prima dei lanci; OpenAI afferma che alcune funzionalità sono passate da 1.000 richieste al secondo durante i test di carico a 1 milione al momento del lancio.

La separazione eliminava anche un vantaggio dei sistemi condivisi: la crescita aggregata di molti carichi di lavoro può offrire capacità disponibile a un nuovo servizio che è piccolo nei test ma grande in produzione. Con i container dedicati, i team dovevano predisporre la capacità per ogni carico di lavoro in modo indipendente. OpenAI afferma che i costi operativi aggiuntivi e una pianificazione disomogenea hanno infine spinto l’azienda a tornare verso un’infrastruttura condivisa tra più utenti.

Anche la configurazione condivisa presentava problemi. Una partizione molto utilizzata poteva consumare capacità e influire sugli altri carichi di lavoro, mentre la crescita dei dati archiviati poteva causare la suddivisione delle partizioni fisiche e ridurre la capacità di elaborazione disponibile per ciascuna. OpenAI afferma di aver collaborato con il team Azure di Microsoft a modifiche per affrontare questi limiti, anziché continuare ad aggiungere container e a gestirne separatamente la capacità.

Le modifiche ad Azure puntano a gestire le chiavi più richieste e la pianificazione della capacità

La nuova configurazione combina container condivisi e controlli per isolare i carichi di lavoro. OpenAI descrive l’applicazione di limiti anzitutto alle chiavi del database più richieste, per contenerne l’effetto sul resto del traffico, e l’assegnazione di una priorità inferiore alle operazioni offline, come gli inserimenti in blocco e le estrazioni di dati, affinché le richieste interattive abbiano la precedenza.

Una modalità serverless rivista, realizzata dal team Azure Cosmos DB per OpenAI, consente a ogni partizione fisica di arrivare a 10.000 unità di richiesta al secondo e può suddividere le partizioni in base sia all’utilizzo delle unità di richiesta sia allo spazio di archiviazione. OpenAI afferma che una precedente opzione serverless era limitata a 5.000 unità di richiesta al secondo per partizione e si espandeva solo in base allo spazio di archiviazione. L’azienda afferma di aver poi adottato un unico container condiviso come impostazione predefinita e di non aver registrato, nei mesi precedenti la pubblicazione dell’articolo, incidenti legati alla predisposizione della capacità o all’interferenza tra carichi di lavoro.

Cache e replica riducono la latenza globale delle letture

OpenAI afferma di replicare ampiamente solo dati selezionati per i quali la latenza è critica. I metadati di autenticazione, necessari ai servizi per ogni richiesta, possono essere replicati in tutte le 40 regioni Azure in cui OpenAI serve il traffico; altri account vengono replicati in almeno una regione per continente. L’azienda afferma che i vincoli di capacità le impediscono di applicare questo livello di replica a ogni dataset.

Per altri dati letti di frequente, Habitat usa una cache distribuita basata su server Valkey vicini all’infrastruttura che gestisce le richieste degli utenti. Per mantenere aggiornati i dati nella cache, un servizio acquisisce il flusso delle modifiche di Azure Cosmos DB e propaga le invalidazioni a livello globale entro pochi secondi. Quando un oggetto cambia, la voce di cache interessata viene cancellata e recuperata di nuovo alla lettura successiva.

OpenAI attribuisce la riduzione segnalata della latenza mediana globale delle letture, da circa 120 millisecondi a circa 10, all’insieme di diverse modifiche: la replica di dati selezionati più vicino agli utenti, l’aggiunta di una cache all’interno della regione e la riscrittura del servizio Habitat in Rust. L’articolo non attribuisce l’intero miglioramento a uno solo di questi interventi.

Il prossimo sistema è ancora in fase di sviluppo

OpenAI afferma di stare realizzando internamente un sistema di storage online su scala di exabyte per i dati voluminosi di Habitat e per l’archiviazione delle conversazioni future. Il progetto combina il nucleo di RocksDB Cloud di Rockset con una replica basata su Raft e mantiene il modello a documenti usato da Azure Cosmos DB. OpenAI afferma che la separazione tra storage e calcolo e la replica fisica dovrebbero ridurre il fabbisogno di capacità flash, a fronte di un minor numero di query al secondo nei picchi.

Il sistema è ancora in fase di sviluppo. Per ora, il resoconto pubblicato descrive una piattaforma basata su container di database condivisi, replica selettiva, invalidazione della cache e modifiche a livello di servizio, e riferisce che l’insieme di questi interventi ha portato le letture globali mediane a circa 10 millisecondi.

Fonte

Esplora

Altri articoli