'jour tous,
Vous connaissez surement les formats de stockage maildir ( 1 fichier par mail ) et mbox ( 1 fichier pour la base de mail ). Je me demandais si une approche différente existait : un fichier par mail et par piece jointe encodée base64.
Par exemple pour un mail avec un corps texte, un corps html et une image, on aurait 2 fichiers : celui contenant les corps et celui contenant l'image. Dans le fichier 'corps', on substitue le texte encodé par une reference vers le fichier piece-jointe désencodé de l'image.
Les avantages que je vois :
- un simple grep sur les fichiers type mail est plus efficace puisqu'il ne parcourt pas inutilement tout ce qui est encodé.
- les pieces jointes désencodées prennent moins de place que leur equivalent encodé
- on pourrait avec un systeme de hash ( nom piece jointe, taille, md5 etc ) ne pas sauvegarder des pieces jointes identiques ( vous savez tout les mails que ce client vous envoie avec un fichier signature bmp identique à chaque fois. Et bien sur, vous devez garder le mail ... )
# Ou sinon tu as Beagle, Strigi ...
Posté par yannig (site web personnel) . Évalué à -1.
Et si tu veux pas d'interface graphique, il y'a même possibilité de faire fonctionner tout ça en ligne de commande.
[^] # Re: Ou sinon tu as Beagle, Strigi ...
Posté par inico (site web personnel) . Évalué à 9.
Les logiciels d'indexion ne font pas çà.
# git
Posté par ribwund . Évalué à 3.
on pourrait avec un systeme de hash ( nom piece jointe, taille, md5 etc ) ne pas sauvegarder des pieces jointes identiques ( vous savez tout les mails que ce client vous envoie avec un fichier signature bmp identique à chaque fois. Et bien sur, vous devez garder le mail ... )
Ca ressemble au systeme de git ca :)
# Mail.app fait comme ca
Posté par Anonyme . Évalué à 3.
Beaucoup disent qu'apple a abandonné mbox pour l'arrivée de l'indexation spotlight, qui a comme granularité le fichier.
En tout cas il faudra trouver un moyen de contenter les esprits chagrin (mbox est pratique car reconnu par beaucoup d'application), mais le concept un email -> fichier + fichiers attachés a part mais référencés dans l'email me plait bien. Par contre halte aux hash : il est plus simple de suffixer le fichier avec une numérotation en cas de doublons, mais il faut absolument garder le nom original pour le nom de fichier sur le disque dur, pour pouvoir simplement retrouver ses fichiers sans passer par ton client mail (ou récupérer une catastrophe).
[^] # Re: Mail.app fait comme ca
Posté par aedrin . Évalué à 1.
[^] # Re: Mail.app fait comme ca
Posté par Anonyme . Évalué à 2.
[^] # Re: Mail.app fait comme ca
Posté par aedrin . Évalué à 1.
en général, elle ne passe que par l'interface de son client mail pour accéder à ses mails...
et puis le jour où ça casse, elle trouvera bien un geek pour lui faire un grep bien placé si besoin ! (d'ailleurs le grep non plus n'est pas très michu-compliant ;-)
sinon, pour le tri alphabétique, on peut toujours mettre dans cet ordre "nom-hash"
[^] # Re: Mail.app fait comme ca
Posté par sobek . Évalué à 2.
Et pour le coup, en entreprise... C'est la merde !!!
Plus sérieusement, le problème avec le fait d'utiliser les noms des pièces jointes, c'est que l'on ne maitrise pas les caractères utilisés. Et entre Linux qui est utf8 par défaut mais pas toutes les applis, MacOS X qui l'est à la va comme je te pousse, les autres unix qui ne le sont pas par défaut et surtout Windows qui utilise son propre système de codage, ça devient un de ces bordels lorsqu'il faut passer un utilisateur d'un système à un autre...
Sans compter qu'il faut gérer le cas ou la pièce jointe a été supprimée soit suite à un problème de nommage (genre le caractère mal échapé qui ne peut être relu, les problèmes de casse...) ou parce que l'utilisateur l'a effacé ("normalement, il y avait une copie dans ma boite mail").
Et par expérience, lorsque l'on a passé les boites des utilisateurs d'un répertoire local à un serveur de fichier (pour l'aspect sauvegarde, principalement), l'expérience montre que c'est autrement plus douloureux que réparer une mailbox corrompue.
Au final, ce système est peut-être très bien pour un geek, mais pour une utilisation à grande échelle, je ne suis pas convaincu,
A l'inverse, ce que j'aimerai c'est un format avec un fichier par fil de discution : ce serait le pied pour la gestion des tickets et des listes de diffusions... ;)
[^] # Re: Mail.app fait comme ca
Posté par iznogoud . Évalué à 2.
On trouvera notamment la liste des adresses mails utilisées pour les auto complétions...
addresses <= liste des mails stockés
attachments <= lien entre un message et un nom de piece jointe
mailboxes <= structure des mailbox (répetoires etc.)
etc.
Attention quand même à bidouiller avec modération, c'est du sqlite donc ça ne gère pas les clés étrangères, et je ne sais pas l'impact que peut avoir la suppression d'éléments dans une ou autre des tables sans nettoyer derrière les autres tables.
M'enfin ça ouvre de belles perspectives à qui veut récupérer les adresses mails des contacts d'un utilisateur lambda sous macos, pour peu qu'on ait un accès en local sur la machine. Cela dit, il faut aussi voir que ces bases existent aussi sous thunderbird etc., c'est juste facile à trouver ici ^^
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.