GuíasBiblioteca

Storage Box

Usar un Hetzner Storage Box (SFTP, WebDAV, SMB) como almacén de la biblioteca.

EspecificadoNo implementado

Especificado, sin implementación. El daemon sólo lee raíces locales. La capa SFTP del código (native/zig/media-core/cache/l3_sftp.zig) es un esqueleto probado contra una fuente simulada, no un cliente real. Esta página fija lo que tiene que cumplir.

Un Storage Box ofrece varios protocolos (SFTP, SMB, WebDAV, rsync, entre otros). Styx los trata como fuentes de la misma interfaz de lectura con rangos que el disco local; la diferencia es el coste: la latencia por operación y el ancho de banda.

Lo que se midió

Un spike sobre un Storage Box real midió SFTP con lectura secuencial por canal (del orden de 17,5 MB/s desde una conexión doméstica, con la conexión persistente y reconexión de alrededor de un segundo). WebDAV no se midió. Cualquier recomendación de protocolo espera a esa medida; esta página no la anticipa.

Qué exige el diseño

  • Los bytes no pasan por JavaScript. La fuente remota vive en el daemon, no en un servicio.
  • Sólo lectura. Reescribir un objeto remoto de decenas de GB no es una edición. Por eso los metadatos incrustados no se escriben en el Storage Box: se escriben antes, en la ingesta o en la promoción desde el almacenamiento local (metadatos).
  • Abrir es barato. Un MKV sin índice (Cues) exige leer el fichero entero al abrirlo: aceptable en un SSD y no en un Storage Box. Los MP4 normalizados con el índice al principio son el caso bueno.
  • Cache en niveles (RAM, NVMe local, fuente remota), con lecturas redundantes entre fuentes si hay más de una (dec-0025).

Si lo necesitas hoy

Monta el Storage Box en el servidor del daemon con tu herramienta habitual (por ejemplo sshfs o rclone mount) y decláralo como raíz de sólo lectura. Funciona, pero Styx lo ve como disco local: no hay caché por niveles ni protección frente a latencia, y es el patrón que el diseño quiere evitar a largo plazo (un sistema de ficheros de red como biblioteca).