La ricerca in Jellyfin può rallentare man mano che la libreria cresce, quando l’elaborazione delle query o l’insieme di dati utilizzato supera la capacità degli indici efficienti e del riutilizzo della cache.
La sola crescita non dimostra che esista un problema del database. Un catalogo più grande può modificare il numero di record, relazioni e richieste di immagini, mentre le scansioni o le scritture in background aggiungono contesa. Mantieni invariati query e client, quindi separa i tempi del database dal caricamento delle immagini e dal rendering dell’interfaccia.
La crescita modifica il lavoro delle query
Una libreria in crescita aggiunge titoli, persone, generi, percorsi, ID dei provider e relazioni che la ricerca può esaminare o collegare. Il costo dipende dalla struttura della query e dall’adeguatezza degli indici, non solo dalla quantità di byte multimediali.
Usa il modello dei ruoli dei dati persistenti per ragionare in termini di record e relazioni, invece di considerare un unico valore di “dimensione della libreria”.
Una grande raccolta di file cinematografici può rimanere reattiva se il numero di oggetti indicizzati è contenuto, mentre molti elementi di piccole dimensioni possono aumentare rapidamente il lavoro delle query.
Gli indici devono corrispondere alla struttura della query
Un indice è utile quando l’ordine delle chiavi e la selettività corrispondono ai filtri o all’ordinamento utilizzati. Una query che richiede testo ampio, collega diverse relazioni o ordina un risultato voluminoso può comunque analizzare più dati rispetto a una ricerca mirata.
Confronta la query con una spiegazione generale di latenza e throughput dello storage per capire come differiscono la latenza dello storage e i modelli di accesso; il risultato preciso in Jellyfin dipende dal percorso del database e del client.
La misurazione utile è la stessa query prima e dopo la crescita, non un benchmark basato su un modello di ricerca diverso.
Cache e storage possono sembrare costi della query
Le pagine del database non presenti in cache, i file delle immagini e i metadati del filesystem possono far sembrare la ricerca più lenta anche quando il piano della query non è cambiato. Le scansioni o i backup in background possono aggiungere accodamento ed espellere pagine utili tra un’esecuzione e l’altra.
Separa i casi a freddo e a caldo con il metodo di benchmark a freddo e a caldo prima di attribuire la causa alla crescita del catalogo.
Se la seconda ricerca è veloce ma la prima è lenta, la cache o lo storage contribuiscono all’esperienza. Se sono entrambe lente, il lavoro della query o la contesa del database meritano maggiore attenzione.
Verifica le cause distinguendole dai falsi indizi
Misura separatamente il tempo della query, il rendering dei risultati, il caricamento delle immagini, la latenza dello storage e le scritture in background. Poi ripeti il test dopo aver messo in pausa un’attività concorrente o modificato una variabile della richiesta.
Un breve flusso di lavoro sul comportamento dei client Jellyfin può mostrare se il sintomo riguarda il lavoro del database, il percorso delle immagini o l’interfaccia del client.
Smetti di attribuire il rallentamento alla crescita della libreria quando la rimozione di un’altra causa ripristina il comportamento normale. La crescita è la condizione; il meccanismo limitante richiede comunque prove.
Hub Tecnologico e AI
Altro da leggere

Perché Home Assistant offre prestazioni diverse sulla rete locale e con le connessioni remote?
Le sessioni di Home Assistant sulla LAN e da remoto utilizzano percorsi di rete diversi; la latenza da remoto aggiunge DNS, crittografia, WAN, proxy...

Home Assistant funziona in modo affidabile dietro CGNAT o doppio NAT?
CGNAT e doppio NAT di solito non influiscono sul controllo locale di Home Assistant; cambiano principalmente il modo in cui i client remoti possono...

In che modo la latenza di rete influisce su Home Assistant durante le interruzioni di Internet?
La perdita della connessione Internet e la latenza di rete sono problemi diversi: i percorsi dei dispositivi locali possono rimanere veloci mentre DNS, integrazioni...

