Archivi tag: Netflix

Hollow, l’open-source di NETFLIX

L’affermata azienda di streaming online ha trovato una soluzione interessante al problema dei meta-contenuti (cosa sono ve lo spieghiamo qua sotto) e lo ha fatto sviluppando e distribuendo Hollow tramite la filosofia Open.

Hollow DamakoBlog

La distribuzione dei meta-contenuti è essenziale per un’azienda che fornisce servizi online. I meta-contenuti sono più o meno tutto ciò che non è “contenuto”. Se state pensando a Netflix, capire cos’è il contenuto è facile: è il film o la serie tv. In altre parole il file vero e proprio che viene mandato in streaming e che voi potete comodamente guardare tanto sul vostro smartphone, quanto sul vostro televisore. Il meta-contenuto è il resto. Le informazioni che descrivono la storia, il minutaggio, il cast, la regia. Quelle sono le meta-informazioni. E quando scorrete il vasto catalogo a disposizione, sebbene la lettura di questa informazioni sia il più delle volte ignorata, a richiesta deve essere immediatamente fruibile e consultabile.
Sono dati relativamente piccoli e non dipendono dal numero di utenti, ma dal catalogo di riferimento legato al numero dei titoli a disposizione, cioè la loro crescita è facilmente controllabile e pianificabile.
In altre parole questi dati non possono essere considerati “big data”, e la loro trattazione si basa su un classico approccio che consiste nel distribuire una copia dei dati ad ognuno degli utenti che la terrà nel proprio dispositivo (gergalmente si dice avere una copia in cache)
E qui nascono i problemi:
La dimensione di dati è limitata dalla RAM disponibile.
Il set di dati completo può avere bisogno di essere riscaricato ogni volta che viene aggiornato.
L’aggiornamento del set di dati può richiedere notevoli risorse di CPU.

Tutto questo può portare a ritardi nell’esperienza utente, con notevoli implicazioni sull’apprezzamento finale del prodotto (“volevo solo sapere quanto dura il film, perché ci sta mettendo tanto?”).
Da queste premesse è nato Hollow, una libreria open source studiata ad hoc per set di dati che si aggirano intorno ai 100 Gb e che presentano la necessità di essere distribuiti e consultati in modo efficiente e stabile.

Agilità nello sviluppo software

Il grande punto di forza per gli sviluppatori è la possibilità di generare delle API (funzionalità a disposizione degli sviluppatori che semplificano il lavoro) ottimizzate per il set di dati che si sta gestendo. Hollow fornisce inoltre strumenti di analisi che nel tempo tengono conto del mutarsi dei dati: strumenti dinamici per dati dinamici.

Continua la lettura di Hollow, l’open-source di NETFLIX