Je travaillerai peut-être sur un système qui collecte des images à partir d'un système de vision et les stocke dans un dB avec des informations d'état. Le système étant lié à un processus de production continu fonctionnant à grande vitesse, il sera nécessaire de disposer d'un débit de données élevé. Ce que je voudrais savoir de SF, c'est comment vous vous y prendriez pour spécifier un système qui répondrait à mes exigences.
Physiquement, le système se présente comme suit :
- L'appareil photo envoie des images BMP et un petit fichier contenant des informations sur l'état de l'appareil via FTP dans un répertoire de l'ordinateur (l'appareil photo ne peut envoyer que des images BMP. Toute compression d'image devra être effectuée sur l'ordinateur récepteur).
- L'ordinateur scrute le répertoire à la recherche de nouvelles images.
- Dès réception de l'image, l'ordinateur l'insère dans la dB (ou déplace l'image dans un nouveau répertoire et insère une référence dans la dB). Les informations d'état sont également insérées à ce moment-là.
- dB est utilisé pour alimenter un site web qui permet de naviguer dans les images, d'afficher des statistiques sur la qualité des images sur différentes périodes de temps, etc.
En termes de débit de données, le système devra recevoir au moins 40 à 80 Mo d'images par seconde (à raison d'environ 2 Mo par image) en continu.
Parmi les améliorations possibles, on peut citer la séparation de la base de données et du serveur web en deux systèmes. Ne stocker que les chemins d'accès aux fichiers dans la base de données et faire en sorte que l'ordinateur puisse compresser les fichiers BMP en JPG ou PNG.
Quelles sont donc les statistiques de base que je devrais spécifier pour y parvenir ?
- Vitesse du réseau ? Ethernet dédié entre la caméra et l'ordinateur ?
- Type et vitesse de l'unité centrale ?
- Vitesses du bus système ?
- Vitesse de la RAM ?
- Types et vitesses des lecteurs de disques ?
Merci pour vos conseils
Éditer Correction des tailles pour lire MB
Éditer Oubliez que j'ai mentionné le mot "appareil photo" et remplacez-le par "boîte magique qui dépose des fichiers de 2 Mo sur l'ordinateur par ftp"
Editer le 24 février Désolé pour les personnes qui ont répondu et il semble que je vous ai ignorés. Le projet a été mis en attente pendant un certain temps quand ils ont réalisé que tous les composants du système n'avaient pas Ethernet (Ouais, je devrais poster sur TDWTF).
Première nouvelle. Lorsque les exigences en matière de données totales ont été communiquées, les spécifications ont été revues à la baisse. Désormais, je n'ai plus qu'à archiver 6 ou 7 fichiers texte d'une seule ligne toutes les secondes, et à n'archiver les images complètes de 2 Mo qu'en cas de problème présumé. Comme le processus de production qui gère tout cela est censé produire un bon produit, cela devrait être rare. De plus, ils arrêtent la ligne s'il y a plusieurs pannes d'affilée le débit moyen des données reste donc faible et je peux mettre en mémoire tampon les insertions sur le disque jusqu'à ce que je rattrape mon retard (si nécessaire).
Et maintenant, l'histoire d'horreur. Bien que j'apprécie vraiment les conseils donnés sur la façon de construire un système robuste, j'ai découvert aujourd'hui que "l'" (oui - le seul et unique) ordinateur avait été acheté pour le projet (et que je n'avais pas du tout mon mot à dire sur ses spécifications). Je suis sûr que c'est un bon ordinateur mais mon bureau commence à avoir des entailles en forme de tête quand je me demande comment tout cela va fonctionner avec un Dell Optiplex 760.
- E8400 Core 2 Duo CPU
- 2GB de mémoire
- 160 GB HD
- SQL Server Express (qui ne peut utiliser que 1 Go de mémoire, 1 cœur et une taille de base de données maximale de 4 Go)
Je choisirai la plus belle réponse et l'attribuerai à ma sélection.
En fait, ce sont toutes de bonnes réponses. Dommage que je ne puisse pas partager mon vote.