Salut les devs,
J'ai un problème technique, dont je ne connais pas la solution optimale.
C'est pour créer un genre d'énorme automate cellulaire à 1 dimension. Chaque cellule peut contenir soit rien soit 0 soit 1. Je voudrais que ce soit vraiment énorme, par exemple, capable d'utiliser toute la place disponible dans un disque dur externe. Je voudrais ne pas stocker les cellules vides. Je voudrais que les adresses des cellules soient arbitrairement grandes (bignum). En d'autres termes, c'est un key-value store, où les keys sont des strings potentiellement infinies, et où les values sont un octet (ça suffira largement). Chaud non ?
Comment vous feriez ? Je suppose qu'un SGBD serait une bonne idée, mais lequel ?
Je ne sais pas trop si ma description est claire ? si ce n'est pas le cas, merci de me le faire savoir !
C'est pour faire ce que vous pouvez voir ici, mais à plus grande échelle.
PS : la vitesse n'est pas forcément une priorité
---
PPS :
Je suis en train de regarder BerkeleyDB, et je vois sur cette page descriptive que les clefs et valeurs semblent être de longueur arbitraires (format DBT). Est-ce que je me trompe, ou vous comprenez comme moi ? D'autre part, il semble que BerkerleyDB utilise le storage sur disque, donc ça a l'air de convenir, à vue de nèze. En même temps, je me dis qu'il y aura beaucoup plus d'espace utilisé pour stocker les adresses que pour stocker les données elles-mêmes, donc ce ne serait pas efficace du tout. A moins peut-être de faire un système de pages de 1 giga par exemple. On charge une page en mémoire, on travaille dessus, on passe à la suivante, ...etc.
J'ai un problème technique, dont je ne connais pas la solution optimale.
C'est pour créer un genre d'énorme automate cellulaire à 1 dimension. Chaque cellule peut contenir soit rien soit 0 soit 1. Je voudrais que ce soit vraiment énorme, par exemple, capable d'utiliser toute la place disponible dans un disque dur externe. Je voudrais ne pas stocker les cellules vides. Je voudrais que les adresses des cellules soient arbitrairement grandes (bignum). En d'autres termes, c'est un key-value store, où les keys sont des strings potentiellement infinies, et où les values sont un octet (ça suffira largement). Chaud non ?
Comment vous feriez ? Je suppose qu'un SGBD serait une bonne idée, mais lequel ?
Je ne sais pas trop si ma description est claire ? si ce n'est pas le cas, merci de me le faire savoir !
C'est pour faire ce que vous pouvez voir ici, mais à plus grande échelle.
PS : la vitesse n'est pas forcément une priorité
---
PPS :
Je suis en train de regarder BerkeleyDB, et je vois sur cette page descriptive que les clefs et valeurs semblent être de longueur arbitraires (format DBT). Est-ce que je me trompe, ou vous comprenez comme moi ? D'autre part, il semble que BerkerleyDB utilise le storage sur disque, donc ça a l'air de convenir, à vue de nèze. En même temps, je me dis qu'il y aura beaucoup plus d'espace utilisé pour stocker les adresses que pour stocker les données elles-mêmes, donc ce ne serait pas efficace du tout. A moins peut-être de faire un système de pages de 1 giga par exemple. On charge une page en mémoire, on travaille dessus, on passe à la suivante, ...etc.