{"id":41,"date":"2011-04-05T19:12:58","date_gmt":"2011-04-05T17:12:58","guid":{"rendered":"http:\/\/blog.nebule.org\/?p=41"},"modified":"2016-03-29T19:05:48","modified_gmt":"2016-03-29T17:05:48","slug":"memoire-fini","status":"publish","type":"post","link":"https:\/\/blog.nebule.org\/?p=41","title":{"rendered":"M\u00e9moire fini"},"content":{"rendered":"<p>On part souvent du principe que l&rsquo;on va g\u00e9rer nos donn\u00e9es en les accumulant dans le temps de fa\u00e7on infinie&#8230;<\/p>\n<p>Mais est-ce vrai?<\/p>\n<p>C&rsquo;est en partie vrai.<\/p>\n<p>Les capacit\u00e9s de stockage \u00e9voluent assez rapidement dans le temps. Nous enregistrons de nouveaux fichiers assez r\u00e9guli\u00e8rement dans le temps mais pas forc\u00e9ment de fa\u00e7on continu. Ici, pour la r\u00e9flexion, on ne va retenir qu&rsquo;une moyenne constante d&rsquo;enregistrement de donn\u00e9es.<\/p>\n<p>Que se passe-t-il si on ajoute r\u00e9guli\u00e8rement suffisamment de capacit\u00e9s de stockage, suffisamment pour ne jamais arriver \u00e0 saturation?<br \/>\nTout se passe bien, on ne perd rien.<\/p>\n<p>Et si la capacit\u00e9 de stockage n&rsquo;augmente pas assez vite (dans le cas extr\u00eame o\u00f9 elle ne peut plus \u00eatre augment\u00e9e) ?<br \/>\nC&rsquo;est dans ce cas que doit \u00eatre pr\u00e9vu un m\u00e9canisme de nettoyage (d&rsquo;oubli), et donc de pertes <em>ma\u00eetris\u00e9es<\/em>.<\/p>\n<p>Le stockage de donn\u00e9es sous la forme propos\u00e9e pour nebule risque dans certains cas de g\u00e9n\u00e9rer, et donc de stocker, \u00e9norm\u00e9ment de donn\u00e9es. On doit pr\u00e9voir ce m\u00e9canisme d&rsquo;oubli nativement.<\/p>\n<p>La perte d&rsquo;information ma\u00eetris\u00e9e impose de permettre cette gestion <em>\u00e0 la main<\/em>. Mais quelle efficacit\u00e9 d&rsquo;une gestion <em>\u00e0 la main<\/em> pour plusieurs millions de fichiers?<br \/>\nDes m\u00e9canismes d&rsquo;assistance ou d&rsquo;automatisation doivent \u00eatre propos\u00e9s. Ils peuvent avoir plusieurs formes.<\/p>\n<p>Sur quels crit\u00e8res d\u00e9clarer un fichier <em>p\u00e9rim\u00e9<\/em>?<br \/>\nPlusieurs crit\u00e8res peuvent \u00eatre pris en compte, et plusieurs combinaisons complexes peuvent \u00eatre calcul\u00e9es de crit\u00e8res simples :<br \/>\n&#8211; le temps de possession de l&rsquo;objet, plus il est vieux plus il a de chance d&rsquo;\u00eatre p\u00e9rim\u00e9 ;<br \/>\n&#8211; si le fichier dispose d&rsquo;une nouvelle version, il n&rsquo;est peut-\u00eatre plus int\u00e9ressant de le conserver ;<br \/>\n&#8211; l&rsquo;attractivit\u00e9, ou un crit\u00e8re d&rsquo;appr\u00e9ciation, donne de l&rsquo;importance \u00e0 un fichier dans le temps et doit faciliter sa conservation ;<br \/>\n&#8211; l&rsquo;intensit\u00e9 de l&rsquo;appr\u00e9ciation peut \u00eatre exploit\u00e9e en absolu, un fichier qui appel un tr\u00e8s fort sentiment positif ou n\u00e9gatif a des chances de devoir \u00eatre conserv\u00e9 longtemps ;<br \/>\n&#8211; un fichier li\u00e9 \u00e0 plusieurs autre fichiers jug\u00e9s importants a surement besoin d&rsquo;\u00eatre lui aussi conserv\u00e9, il va peut-\u00eatre h\u00e9riter par calcul d&rsquo;une note d&rsquo;appr\u00e9ciation ;<br \/>\n&#8211; d&rsquo;autres fichiers font r\u00e9f\u00e9rences \u00e0 ce fichier, il faut s\u00fcrement le conserver ;<br \/>\n&#8211; mes amis ont gard\u00e9 ce fichier, il doit \u00eatre important.<\/p>\n<p>Doit-on supprimer imm\u00e9diatement un fichier <em>p\u00e9rim\u00e9<\/em>?<br \/>\nCelui-ci peut peut-\u00eatre servir \u00e0 quelqu&rsquo;un d&rsquo;autre? A-t-on la place de le garder en attendant? Peut-on se contenter de le supprimer lorsque l&rsquo;on aura besoin de la place qu&rsquo;il occupe? Doit-on les marquer p\u00e9rim\u00e9s en attendant ou g\u00e9rer une liste des objets p\u00e9rim\u00e9s?<br \/>\nL&rsquo;analyse des fichiers \u00e0 marquer peut se faire en continu, moyennant une occupation constant et relativement importante de ressources. L&rsquo;analyse peut se faire lors d&rsquo;une phase de repos (activit\u00e9 de sommeil). Une liste peut aussi \u00eatre maintenu en temps r\u00e9el sans analyse, juste en classant les objets de fa\u00e7on croissante dans une liste et en faisant \u00e9voluer la place des objets en fonction de l&rsquo;\u00e9volution de leurs param\u00e8tres.<\/p>\n<p>Une fois un objet marqu\u00e9 comme p\u00e9rim\u00e9, comme propager son marquage? C&rsquo;est \u00e0 dire, comment vont se comporter les relais avec ces objets dits p\u00e9rim\u00e9s?<br \/>\nCette propri\u00e9t\u00e9 de p\u00e9remption doit-elle \u00eatre visible des entit\u00e9s tierces? Ou est-elle purement interne?<\/p>\n","protected":false},"excerpt":{"rendered":"<p>On part souvent du principe que l&rsquo;on va g\u00e9rer nos donn\u00e9es en les accumulant dans le temps de fa\u00e7on infinie&#8230; Mais est-ce vrai? C&rsquo;est en partie vrai. Les capacit\u00e9s de stockage \u00e9voluent assez rapidement dans le temps. Nous enregistrons de nouveaux fichiers assez r\u00e9guli\u00e8rement dans le temps mais pas forc\u00e9ment de fa\u00e7on continu. Ici, pour &hellip; <a href=\"https:\/\/blog.nebule.org\/?p=41\" class=\"more-link\">Continuer la lecture de <span class=\"screen-reader-text\">M\u00e9moire fini<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[91,106,111,114,23],"tags":[235,252,258,259],"_links":{"self":[{"href":"https:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts\/41"}],"collection":[{"href":"https:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=41"}],"version-history":[{"count":1,"href":"https:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts\/41\/revisions"}],"predecessor-version":[{"id":2393,"href":"https:\/\/blog.nebule.org\/index.php?rest_route=\/wp\/v2\/posts\/41\/revisions\/2393"}],"wp:attachment":[{"href":"https:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=41"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=41"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.nebule.org\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=41"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}