Question

J'ai des fichiers multimédia et leurs métadonnées stockés dans un SGBDR (en fait, les fichiers multimédias réels sont stockés dans le système de fichiers, mais ne nous attardons pas là-dessus).

J'aimerais présenter une vue du système de fichiers contenant ces informations, afin que les utilisateurs puissent utiliser l'Explorateur Windows et d'autres éléments similaires dans la base de données. Je souhaite que cet accès soit en lecture seule, ce qui, à mon avis, simplifiera grandement les choses.

En gros, ce que je veux réaliser est:

  • Différentes vues utilisant des critères de métadonnées différents (par exemple, ont / by_author / {artiste} / {enregistrement} / {audiofiles} et / by_record / {enregistrement} / {audiofiles}, par exemple).
  • Réencodez de manière transparente (éventuellement en mémoire cache) les fichiers multimédias (par exemple, / wav / {wavfile}, / mp3 / 192 / {mp3file), / mp3 / 320 / {mp3file}, etc.)
  • Génération transparente de métadonnées dans différents formats (par exemple, Excel, XML dans différents schémas, etc.)

Je le fais en Java, d'ailleurs.

Mes problèmes ici sont bilatéraux:

1)

Quel est le bon moyen de mettre en œuvre le "modèle"? J'ai jonglé avec certaines interfaces et implémentations de référentiel, d'actif, de FileAsset, de ContainerAsset, mais elles ne se sentent pas tout à fait correctes.

Je souhaiterais pouvoir déléguer différentes parties du système de fichiers à un code distinct (par exemple, les parties / {artiste} / {record} et / {record} du système de fichiers sont implémentées avec un code différent et elles délèguent toutes les deux code identique pour créer le {dossier} / xxx).

2)

Quelle est la meilleure alternative à "exposer"? ce modèle? Comme je le vois, il existe quelques alternatives:

  • Fuse pour Java et Dokan pour Java. J'aurais besoin d'implémenter deux wrappers différents, donc c'est un peu plus de travail ...
  • Utilisez l'implémentation SMB d'Alfresco et exposez le VFS en tant que partage Samba
  • Utilisez Milton (une implémentation WebDAV pour les conteneurs de servlets) et utilisez le support WebDAV intégré au système d’exploitation ou utilisez un système similaire à Fuse DAV FS pour le ré-exposer en tant que FS

Parmi ceux-ci, Fuse / Dokan semble être le plus productif. Alfresco est très joli mais très compliqué pour le faire fonctionner. Milton semble plus simple et la sémantique de WebDAV pourrait même fonctionner mieux ... mais je ne suis pas tout à fait sûr.

Pensées, idées?

Alex

edit: Le projet est à présent semi-abandonné (cela signifie que ce serait cool de le faire, mais pas le temps de le faire pour le moment). Je pense que j'écrirais mon VFS en tant qu'extension de commons-vfs, puis adapterais commons-vfs à Milton, Dokan, Fuse, etc.

Était-ce utile?

La solution

J'irais avec WebDAV. Un lot moins de code et des normes bien définies

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top