FR3121778A1 - Procédé d’optimisation d’écriture sur un disque dur - Google Patents

Procédé d’optimisation d’écriture sur un disque dur Download PDF

Info

Publication number
FR3121778A1
FR3121778A1 FR2103530A FR2103530A FR3121778A1 FR 3121778 A1 FR3121778 A1 FR 3121778A1 FR 2103530 A FR2103530 A FR 2103530A FR 2103530 A FR2103530 A FR 2103530A FR 3121778 A1 FR3121778 A1 FR 3121778A1
Authority
FR
France
Prior art keywords
block
writing
disk
data
write
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
FR2103530A
Other languages
English (en)
Other versions
FR3121778B1 (fr
Inventor
Pascal VERGNORY
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
EXTREME NETWORKS FRANCE, FR
Original Assignee
Ipanematech
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ipanematech filed Critical Ipanematech
Priority to FR2103530A priority Critical patent/FR3121778B1/fr
Publication of FR3121778A1 publication Critical patent/FR3121778A1/fr
Application granted granted Critical
Publication of FR3121778B1 publication Critical patent/FR3121778B1/fr
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B5/00Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
    • G11B5/012Recording on, or reproducing or erasing from, magnetic disks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device
    • G06F3/0676Magnetic disk device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/12Formatting, e.g. arrangement of data block or words on the record carriers
    • G11B20/1262Formatting, e.g. arrangement of data block or words on the record carriers with more than one format/standard, e.g. conversion from CD-audio format to R-DAT format

Abstract

La présente invention concerne un procédé d’optimisation d’écriture sur un disque dur, caractérisé en ce que le procédé comprend un balayage du disque selon les étapes suivantes : - définition du nombre de blocs par disque, - définition d’un premier bloc, d’un bloc central et d’un dernier bloc du disque, - écriture de données sur le premier bloc du disque, - écriture de données sur un deuxième bloc du disque, le deuxième bloc correspondant au bloc supérieur au bloc central du disque, - écriture de données sur un troisième bloc, le troisième bloc correspondant au bloc inférieur au deuxième bloc, - écriture de données sur un quatrième bloc du disque, le quatrième bloc correspondant au dernier bloc du disque, réitération du cycle d’écriture de données jusqu’à l’épuisement des données à écrire sur le disque. Figure pour l’abrégé : Fig. 2

Description

Procédé d’optimisation d’écriture sur un disque dur
La présente invention concerne un procédé d’optimisation d’écriture sur un disque dur. Un tel dispositif permet à un utilisateur d’améliorer le débit minimal de transfert de données sur un ou plusieurs disques durs.
Etat de la technique antérieure
On connaît de l’état de l’art des dispositifs et procédés d’écriture de données sur un disque dur.
Le document US 8134798B1 divulgue un lecteur de disque ayant une pluralité de surfaces de disque, dans lequel chaque surface de disque comprend une pluralité de pistes de données, et chaque piste de données comprend une pluralité de blocs de données. Lorsqu'une commande de lecture est reçue d'un hôte, les données sont lues à partir des premiers et seconds blocs de données sur des premières et secondes surfaces de disque, respectivement, en réponse à la commande de lecture, dans lequel le premier bloc de données stocke des données à un premier débit de données, et le un deuxième bloc de données stocke des données à un deuxième débit de données sensiblement inférieur au premier débit de données.
Les documents de l’art antérieur proposent de manière générale des logiques d’écriture dites séquentielles qui ne sont pas toujours optimales en matière de débit de transfert de données.
Lors de l’écriture en continu de façon séquentielle sur un disque dur, la vitesse d’écriture finit par être limitée par la vitesse d’écriture physique sur les disques. En effet, les disques ont un nombre de secteurs par piste qui est proportionnel au diamètre. Plus on parcourt le disque du diamètre extérieur vers le diamètre intérieur, moins il y a de secteurs par piste, et donc moins le débit en écriture sur le média est élevé.
Dans ce cas, le débit garanti de capture est limité au débit minimal en écriture sur le disque, c’est-à-dire, celui observé sur le diamètre intérieur du disque.
Par conséquent, le but de la présente invention est de résoudre au moins un des inconvénients susmentionnés en proposant une nouvelle logique de transfert de données sur un ou plusieurs disques durs. Un autre but de la présente invention est d’optimiser le débit minimal de transfert de données sur un ou plusieurs disques durs et donc d’optimiser l’écriture de données sur le ou les disques durs.
On atteint au moins un but de l’invention avec un procédé d’optimisation d’écriture sur un disque dur, le disque dur comprenant au moins un disque composé d’au moins une piste, l’au moins une piste étant composée d’une pluralité de blocs, la vitesse d’écriture sur le disque étant maximum sur le diamètre extérieur du disque et minimum sur le diamètre intérieur du disque, caractérisé en ce que le procédé comprend un balayage du disque selon les étapes suivantes :
- définition du nombre de blocs par disque, les blocs se suivent dans un ordre croissant du diamètre extérieur vers le diamètre intérieur du disque,
- définition d’un premier bloc, d’un bloc central et d’un dernier bloc du disque en fonction du nombre de blocs définis par disque,
- écriture de données sur le premier bloc du disque, si le premier bloc du disque est plein, écriture dans le bloc supérieur au premier bloc,
- écriture de données sur un deuxième bloc du disque, le deuxième bloc correspondant au bloc supérieur au bloc central du disque, si le bloc supérieur au bloc central est plein, écriture sur le bloc suivant le bloc supérieur au bloc central,
- écriture de données sur un troisième bloc, le troisième bloc correspondant au bloc inférieur au deuxième bloc, si le bloc inférieur au deuxième bloc est plein, écriture dans le bloc inférieur suivant le bloc inférieur au deuxième bloc,
- écriture de données sur un quatrième bloc du disque, le quatrième bloc correspondant au dernier bloc du disque, si le dernier bloc du disque est plein, écriture sur le bloc inférieur au dernier bloc,
réitération du cycle d’écriture de données jusqu’à l’épuisement des données à écrire sur le disque.
Sans avoir besoin de connaître en détail l’architecture du ou des disques durs, l’invention permet de parcourir les disques ou plateaux du disque dur en alternant les accès des pistes à bon débit avec les accès des pistes à moins bon débit selon une logique de ré-ordonnancement en double spirale. La présente invention permet donc de fournir un débit minimal toujours très proche d’une moyenne qui est plus élevée que le débit minimal du disque ou des disques. Avantageusement, le procédé peut être utilisé dans le cadre d’une écriture en continue sur le ou les disques durs.
Le procédé peut être mis en œuvre par un système de traitement. Le système de traitement permet de mettre en œuvre le procédé de l’invention sur un ou des disques durs. Le système de traitement permet de piloter le ou les disques durs de l’extérieur du ou des disques durs. En cela, l’invention ne nécessite pas de connaitre précisément la structure interne du disque dur.
Le procédé peut être configuré et/ou programmé pour piloter l’écriture de données sur un ensemble de disques durs, les disques durs étant connectés en parallèle. L’écriture des données est répartie sur les différents disques durs tout en suivant la logique de ré-ordonnancement de l’invention. L’écriture de données sur les disques durs se trouve donc accélérée.
Avantageusement, les disques durs peuvent être connectés selon une configuration RAID 0, soit « Redundant Array of Inexpensive Disks ». Cette configuration permet de diminuer davantage les temps d'accès aux données selon l’invention.
Avantageusement, l’au moins un bloc peut avoir une taille définie en fonction de la taille d’au moins une mémoire tampon comprise dans le disque dur. Plus particulièrement, l’au moins un bloc peut avoir une taille de 64MB. Le procédé oblige les disques durs à effectuer des mouvements de tête supplémentaires pour sauter d’un bloc à l’autre. La taille suffisamment grande des blocs doit alors permettre que ces mouvements supplémentaires soient suffisamment espacés dans le temps pour que l’invention conserve son avantage. Le procédé tire avantage des mémoires tampons présentes dans les disques durs pour lisser les changements de débits d’écriture d’un bloc à l’autre. Avantageusement, les mémoires tampons des disques durs peuvent avoir une taille de 128 MB ou 256 MB. Les mémoires tampons stockent deux blocs pour obtenir un effet de lissage de débit suffisant. Pour ces disques durs, on choisit donc une taille de bloc de 64MB.
Au moins un saut de piste peut être effectué entre chaque bloc si le procédé est mis en œuvre sur un seul disque dur. Par exemple, si la taille de bloc est fixée à 64MB, au moins un saut de piste peut être effectué tous les 64MB si le procédé est mis en œuvre sur un seul disque dur. De plus, au moins un saut de piste peut être effectué tous les N fois 64MB si le procédé est mis en œuvre sur plusieurs disques durs.
Les sauts de pistes entre des pistes à bon débit, soit sur le diamètre extérieur du disque, et des pistes à moins bon débit, soit sur le diamètre intérieur du disque, sont réalisés de façon que les mémoires tampons du ou des disques durs absorbent et lissent les changements de débits d’écriture.
Avantageusement, une vitesse d’écriture moyenne minimale sur le disque est supérieure à la vitesse d’écriture minimum du disque. La logique de la présente invention permet d’aboutir à une moyenne plus stable et un minimum plus élevé comparée à une logique séquentielle.
Selon un deuxième aspect de l’invention, il est proposé un disque dur pour l’optimisation d’écriture sur ledit disque dur, le disque dur étant équipé d’une unité de traitement pour mettre en œuvre les étapes du procédé.
Selon un troisième aspect de l’invention, il est proposé un produit programme d'ordinateur comprenant des instructions qui, lorsque le programme est exécuté par un ordinateur, conduisent celui-ci à mettre en œuvre les étapes du procédé.
Description des figures et modes de réalisation
D’autres avantages et particularités de l’invention apparaîtront à la lecture de la description détaillée de mises en œuvre et de modes de réalisation nullement limitatifs, et des dessins annexés suivants :
illustre un schéma général de disque dur selon l’invention,
illustre la logique d’écriture du procédé d’optimisation d’écriture selon l’invention,
illustre un système d’utilisation du procédé d’optimisation d’écriture sur plusieurs disques durs selon l’invention,
illustre la courbe de débit obtenue selon la logique d’écriture du procédé d’optimisation d’écriture selon l’invention.
Ces modes de réalisation étant nullement limitatifs, on pourra notamment considérer des variantes de l’invention ne comprenant qu’une sélection de caractéristiques décrites ou illustrées par la suite isolées des autres caractéristiques décrites ou illustrées (même si cette sélection est isolée au sein d’une phrase comprenant ces autres caractéristiques), si cette sélection de caractéristiques est suffisante pour conférer un avantage technique ou pour différencier l’invention par rapport à l’état de la technique antérieure. Cette sélection comprend au moins une caractéristique de préférence fonctionnelle sans détails structurels, et/ou avec seulement une partie des détails structurels si cette partie uniquement est suffisante pour conférer un avantage technique ou à différencier l’invention par rapport à l’état de la technique antérieure.
On va tout d’abord décrire, en référence à la , un schéma général de disque dur selon l’invention.
De manière générale, un disque dur 10 permet le stockage de données. Un disque dur 10 comprend un support de mémorisation, une tête de lecture/écriture 4, au moins un moteur et une unité de traitement 6. Le support de mémorisation est composé d’au moins un disque ou plateau 1. La tête de lecture/écriture 4 est configurée pour lire et/ou écrire sur le support de mémorisation. Le moteur est configuré pour faire bouger la tête de lecture/écriture 4 ainsi que les plateaux 1. L’unité de traitement 6 est configurée pour gérer le déplacement de la tête de lecture/écriture 4 et commander le moteur.
Le disque dur 10 incorpore également une ou plusieurs mémoires tampons 5 permettant de mettre en attente les données en lecture ou en écriture. Les mémoires tampons 5 sont par exemple des mémoires tampons de taille 128MB ou 256MB.
Le plateau 1 tourne à une vitesse précise autour d’un axe central. Cette rotation permet à la tête de lecture de balayer la surface du plateau 1. Des bits sont regroupés sur des pistes 2 selon des cercles concentriques sur chaque plateau 1. La quantité de données qui peut être stockée sur une piste 2 de plateau 1 dépend de la longueur de la piste 2 qui elle-même dépend de son diamètre. Il en résulte que la vitesse d’écriture de la tête d’écriture 4 est maximale sur le diamètre extérieur qui est plus grand et minimale sur le diamètre intérieur qui est plus petit. La vitesse d’écriture de la tête d’écriture diminue au fur et à mesure que celle-ci approche le diamètre intérieur du plateau 1. L’ensemble des plateaux 1 du disque dur forme un cylindre. Les pistes 2 sont découpées en blocs 3.
On va décrire, en référence à la , la logique d’écriture du procédé d’optimisation d’écriture selon l’invention.
La présente deux courbes :
- Une courbe A de débit lors d’une écriture complète d’un ou plusieurs disques durs (ici 24 disques durs en parallèle) avant application de l’invention avec en abscisse la progression du début à la fin du disque et en ordonnée le débit,
- Une courbe B qui illustre la logique de ré-ordonnancement des écritures proposées selon l’invention.
La courbe A indique le débit en fonction de la progression du début à la fin des disques. Le débit est de 44 Gb/s au début et descend à 23 Gb/s à la fin du disque puis remonte brutalement à 44Gb/s. La remontée brutale de débit correspond au deuxième remplissage du disque.
Pour former la courbe B, les disques durs sont connectés à une interface correspondant à un système de traitement. Le système de traitement correspond à une unité centrale d’ordinateur par exemple. Le système de traitement envoie des instructions à l’unité de traitement 6 du disque dur qui les met en œuvre. Nous allons décrire la logique de ré-ordonnancement dans un premier temps, en considérant que l’interface est connectée à un seul disque dur.
Un balayage est réalisé selon une logique de ré-ordonnancement mise en œuvre par l’unité de traitement 6 selon les instructions envoyées par système de traitement.
Dans un premier temps, le procédé est configuré et/ou programmé par le système de traitement pour définir le nombre de blocs 3 par disque. Cette notion de bloc de données est indépendante des notions de secteurs, pistes et cylindres existant dans les disques durs. Le nombre de blocs est défini en divisant l’espace de stockage du disque dur en blocs de données consécutifs. Les mouvements de tête d’écriture 4 étant couteux en temps (3ms à 5ms sur les disques durs actuels), il convient de les minimiser. On choisit donc la plus grande taille de bloc possible pour les blocs 3. Dans cet exemple, les mémoires tampons sont égales à 128MB et la taille de bloc choisie est de 64MB. Ces tailles sont définies afin qu’un bloc à vitesse rapide et un bloc à vitesse lente soient entièrement stockés dans la mémoire tampon. On compte alors cinq cent blocs 3 dans le disque dur numérotés de 0 à 499. Le nombre de blocs n’est pas limité et est donné à titre d’exemple.
Les blocs 3 se suivent dans un ordre croissant du diamètre extérieur vers le diamètre intérieur du disque. Le bloc numéro 0 se trouve sur le diamètre extérieur du disque tandis que le bloc numéro 499 se trouve sur le diamètre intérieur du disque.
A l’intérieur d’un bloc, l’écriture est séquentielle. La logique de ré-ordonnancement consiste à enchaîner l’écriture de blocs répartis de façon non séquentielle sur le disque 10.
Le procédé est configuré et/ou programmé par le système de traitement pour définir trois blocs principaux : un premier bloc 3, un bloc 3 central et un dernier bloc 3 en fonction du nombre de blocs 3 défini.
On entend par « premier bloc », le premier bloc dans l’espace d’adressage du disque dur. Il se trouve typiquement sur la piste se trouvant sur le diamètre extérieur du premier plateau 1. On entend par « dernier bloc », le dernier bloc dans l’espace d’adressage du disque dur. Il se trouve typiquement sur la piste se trouvant sur le diamètre intérieur du dernier plateau 1. On entend par « bloc central », le bloc 3 se trouvant à mi-chemin entre le premier et le dernier blocs 3. Le premier bloc 3 est donc le bloc numéro 0, le bloc 3 central est le bloc 3 numéro 249 et le dernier bloc 3 est le bloc 3 numéro 499.
La tête d’écriture 4 est configurée et/ou programmée par le système de traitement pour écrire des données sur le disque 10 selon un cycle d’écriture. Lors d’une première utilisation, les blocs 3 sont considérés comme « libre », c’est-à-dire non-écrit. Un cycle d’écriture correspond à quatre mouvements de tête d’écriture 4.
Pour le premier cycle d’écriture, la tête d’écriture 4 est programmée par le système de traitement pour écrire sur le premier bloc 3 précédemment défini, soit le bloc 3 numéro 0. Le débit d’écriture de la tête d’écriture 4 sur le premier bloc est maximal puisque celui-ci se trouve sur le diamètre extérieur du disque. La tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un deuxième bloc, le deuxième bloc se trouvant sur une piste où le débit d’écriture de la tête d’écriture 4 est inférieur à la première écriture. La tête d’écriture 4 est ensuite programmée par le système de traitement pour écrire sur le deuxième bloc 3 correspondant au bloc supérieur au bloc central, soit le bloc numéro 250.
La tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un troisième bloc 3. Le débit d’écriture de la tête d’écriture 4 sur le troisième bloc est équivalent à la deuxième écriture, les deux blocs se trouvant sur une des pistes de la partie centrale du disque 10. La tête d’écriture est programmée par le système de traitement pour écrire sur le troisième bloc 3 correspondant au bloc inférieur au deuxième bloc 3, soit le bloc numéro 249.
La tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un quatrième bloc 3. Le débit d’écriture de la tête d’écriture 4 sur le quatrième bloc est inférieur à la troisième écriture, le quatrième bloc se trouvant sur le diamètre intérieur du disque. Enfin, la tête d’écriture 4 est programmée par le système de traitement pour écrire sur le quatrième bloc 3 correspondant au dernier bloc 3 soit le bloc numéro 499.
Un premier cycle d’écriture selon l’invention est terminé. Cette logique forme alors un motif de double spirale sur le disque dur 10 comme représenté par la courbe B sur la . Par conséquent, au premier cycle d’écriture, les quatre premiers blocs écrits sont les blocs 0 [1], puis 250 [2], puis 499 [3], puis 249 [4], occasionnant les sauts de piste supplémentaires (1), (2), (3) et (4) selon la .
Au deuxième tour, le premier, deuxième, troisième et quatrième blocs 3 (numéro 0, 250, 249, 499) sont pleins. On entend par « plein », un bloc 3 sur lequel des données ont été écrites par la tête d’écriture 4.
Pour le deuxième cycle d’écriture, la tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un cinquième bloc 3. Le débit d’écriture de la tête d’écriture 4 sur le cinquième bloc est supérieur à la quatrième écriture, le cinquième bloc se trouvant sur le diamètre extérieur du disque 10. La tête d’écriture 4 est programmée par le système de traitement pour écrire sur le cinquième bloc 3 correspondant au bloc 3 directement supérieur au premier bloc 3 plein, soit le bloc 3 numéro 1 puis sur un sixième bloc 3 correspondant au bloc 3 directement supérieur au deuxième bloc 3, soit le bloc numéro 251.
La tête d’écriture 4 est ensuite programmée par le système de traitement pour écrire sur un septième bloc 3 correspondant au bloc 3 directement inférieur au troisième bloc, soit le bloc numéro 248 puis sur un huitième bloc 3 correspondant au bloc 3 directement inférieur au dernier bloc 3, soit le bloc numéro 498.
Au deuxième tour, les quatre blocs suivants sont pleins : les blocs 1 (après 0) [5], puis 251 (après 250) [6], puis 248 (avant 249) [7], puis 498 (avant 499) [8], occasionnant les sauts de piste supplémentaires (5), (6), (7) et (8) selon la .
Selon la même logique, au troisième tour, les quatre blocs pleins suivants sont les blocs 2, puis 252, puis 247, puis 497. Au cent vingt cinquième tour et dernier tour avant remplissage complet du disque, les quatre derniers blocs pleins sont les blocs 124, puis 374, puis 125, puis 375. Le cycle d’écriture est réitéré jusqu’à ce que les données soient écrites en intégralité sur le disque dur 10. Dans le cadre d’une écriture en continue des données, le procédé se répète indéfiniment. La tête d’écriture 4 écrit sur les blocs de manière infinie.
Le principe de blocs libres puis pleins décrit précédemment n’est utile que pour simplifier la description de la logique du ré-ordonnancement.
Les débits d’écriture de la tête d’écriture 4 changent selon la position de la tête d’écriture 4 et passent, pour chaque cycle d’écriture, d’un débit rapide à un débit moyen puis à un débit lent pour ensuite revenir à un débit rapide. Un déplacement de tête d’écriture 4 prend entre 3 et 5 ms. Les déplacements de tête d’écriture 4 sont programmés de manière à ce que les mémoires tampons du disque dur absorbent et lissent les changements de débits de la tête d’écriture 4. On aboutit alors à une variation de débit minimale pour un débit minimum maximisé comme présenté à la . La courbe de la représente une écriture en continue en utilisant le ré-ordonnancement décrit par l’invention sur le même système que la . Le débit moyen s’établit alors à 36 Gb/s et ne descend pas en dessous de 33 Gb/s, ce qui correspond à un gain de débit de plus de quarante pourcents.
On va maintenant décrire, en référence aux figures 2 et 3, un système d’utilisation du procédé d’optimisation d’écriture sur plusieurs disques durs selon l’invention.
En effet, le procédé est configuré et/ou programmé par le système de traitement pour être mis en œuvre sur un ensemble de disques durs 11 et 12 connectés en parallèle. Le système de traitement envoie des instructions aux unités de traitement des disques durs 11 et 12 qui les mettent en œuvre.
Les disques durs 11 et 12 sont connectés en parallèle. Le débit en écriture se trouve multiplié par le nombre de disques durs. Les disques durs 11 et 12 peuvent être connectés selon une configuration de type RAID 0, soit « Redundant Arrays of Inexpensive Disks » par exemple. Le nombre de disques durs connectés en parallèle n’est pas limité et est donné à titre d’exemple.
L’écriture sur les différents disques durs 11 et 12 suit la même logique d’écriture que celle décrite à la .
L’écriture des données est répartie sur les différents disques durs 11 et 12 en entrelaçant les écritures de blocs sur les différents disques, puis en suivant la logique de ré-ordonnancement de l’invention.
Prenons par exemple, le cas où des données de taille 500 MB sont envoyées par le système de traitement pour être écrites sur les disques durs 11 et 12. Ces données sont décomposées en huit blocs (A1 à A8) de 64 MB. Les huit blocs (A1 à A8) sont répartis sur les deux disques durs 11 et 12 de la façon suivante : les blocs A1, A3, A5, A7 sont écrits sur le disque dur 11 pendant que les blocs A2, A4, A6, A8 sont écrits sur le deuxième disque dur 12 simultanément.
Dans un premier temps, le procédé est configuré et/ou programmé par le système de traitement pour définir un premier bloc 3, un bloc 3 central et un dernier bloc 3 en fonction du nombre de blocs 3 définis pour chaque disque.
La tête d’écriture 4 de chaque disque dur 11 et 12 est configurée et/ou programmée par le système de traitement pour écrire les données envoyées par le système de traitement sur chaque disque dur 11 et 12 selon un cycle d’écriture.
Pour le disque dur 11, la tête d’écriture 4 est programmée par le système de traitement pour écrire le bloc A1 sur le premier bloc 3, soit le bloc numéro 0, la tête d’écriture ayant un débit d’écriture maximum. La tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un deuxième bloc 3 et écrire le bloc A3 sur le deuxième bloc 3 correspondant au bloc 3 supérieur au bloc 3 central. Le bloc A3 est écrit sur le bloc numéro 250, la tête d’écriture ayant un débit d’écriture inférieur à la première écriture sur le deuxième bloc. La tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un troisième bloc 3 et écrire le bloc A5 sur le troisième bloc 3 correspondant au bloc 3 inférieur au deuxième bloc 3. Le bloc A5 est écrit sur le bloc numéro 249, la tête d’écriture 4 ayant un débit d’écriture équivalent à la deuxième écriture sur le troisième bloc. Enfin, la tête d’écriture 4 est également programmée par le système de traitement pour se déplacer sur un quatrième secteur 3 et écrire le bloc A7 sur le quatrième bloc 3 correspondant au dernier bloc 3. Le bloc A7 est donc écrit sur le bloc numéro 499, la tête d’écriture ayant un débit d’écriture inférieur à la troisième écriture sur le quatrième bloc.
En simultané du premier disque dur 11, pour le deuxième disque dur 12, la tête d’écriture 4 est programmée par le système de traitement pour écrire le bloc A2 sur le premier bloc 3 soit le bloc numéro 0, la tête d’écriture 4 ayant un débit d’écriture maximum. La tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un deuxième bloc 3 et écrire le bloc A4 sur le deuxième bloc 3 correspondant au bloc 3 supérieur au bloc 3 central. Le bloc A4 est écrit sur le bloc numéro 250, la tête d’écriture 4 ayant un débit d’écriture inférieur à la première écriture sur le deuxième bloc. La tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un troisième bloc 3 et écrire le bloc A6 sur le troisième bloc 3 correspondant au bloc 3 inférieur au deuxième bloc 3. Le bloc A6 est écrit sur le bloc numéro 249, la tête d’écriture 4 ayant un débit d’écriture équivalent à la deuxième écriture sur le troisième bloc. Enfin, la tête d’écriture 4 est programmée par le système de traitement pour se déplacer sur un quatrième secteur 3 et écrire le bloc A8 sur le quatrième bloc 3 correspondant au dernier bloc 3. Le bloc A8 est écrit sur le bloc numéro 499, la tête d’écriture 4 ayant un débit d’écriture inférieur à la troisième écriture sur le quatrième secteur. Un mouvement de tête d’écriture 4 pour changer de bloc est donc effectué tous les N blocs si le procédé est mis en œuvre sur N disques durs.
L’écriture des données est donc répartie sur les deux disques 11 et 12. Les deux écritures sur les deux disques durs 11 et 12 sont simultanées. Dans le cas d’une configuration en parallèle, l’écriture des données est davantage optimisée puisque chaque disque ne doit lire et écrire que la moitié des données en suivant l’optimisation d’écriture du procédé selon l’invention.
Typiquement au moins un des moyens du dispositif selon l’invention précédemment décrits, de préférence chacun des moyens du dispositif selon l’invention précédemment décrit sont des moyens techniques.
Typiquement, chacun des moyens du dispositif selon l’invention précédemment décrits peuvent comprendre au moins un ordinateur, une unité centrale ou de calcul, un circuit électronique analogique (de préférence dédié), un circuit électronique numérique (de préférence dédié), et/ou un microprocesseur (de préférence dédié), et/ou des moyens logiciels.
Bien sûr, l’invention n’est pas limitée aux exemples qui viennent d’être décrits et de nombreux aménagements peuvent être apportés à ces exemples sans sortir du cadre de l’invention.
Bien entendu, les différentes caractéristiques, formes, variantes et modes de réalisation de l’invention peuvent être associées les unes avec les autres selon diverses combinaisons dans la mesure où elles ne sont pas incompatibles ou exclusives les unes des autres. En particulier toutes les variantes et modes de réalisation décrits précédemment sont combinables entre eux.

Claims (8)

  1. Procédé d’optimisation d’écriture sur un disque dur (10), le disque dur (10) comprenant au moins un disque (1) composé d’au moins une piste (2), l’au moins une piste (2) étant composée d’une pluralité de bloc, la vitesse d’écriture sur le disque (1) étant maximum sur le diamètre extérieur du disque (1) et minimum sur le diamètre intérieur du disque (1), caractérisé en ce que le procédé comprend un balayage du disque (1) selon les étapes suivantes :
    - définition du nombre de blocs par disque (1), les blocs se suivent dans un ordre croissant du diamètre extérieur vers le diamètre intérieur du disque (1),
    - définition d’un premier bloc, d’un bloc central et d’un dernier bloc du disque (1) en fonction du nombre de blocs définis par disque (1),
    - écriture de données sur le premier bloc du disque (1), si le premier bloc du disque (1) est plein, écriture dans le bloc supérieur au premier bloc,
    - écriture de données sur un deuxième bloc du disque (1), le deuxième bloc correspondant au bloc supérieur au bloc central du disque (1), si le bloc supérieur au bloc central est plein, écriture sur le bloc suivant le bloc supérieur au bloc central,
    - écriture de données sur un troisième bloc, le troisième bloc correspondant au bloc inférieur au deuxième bloc, si le bloc inférieur au deuxième bloc est plein, écriture dans le bloc inférieur suivant le bloc inférieur au deuxième bloc,
    - écriture de données sur un quatrième bloc du disque (1), le quatrième bloc correspondant au dernier bloc du disque (1), si le dernier bloc du disque (1) est plein, écriture sur le bloc inférieur au dernier bloc,
    réitération du cycle d’écriture de données jusqu’à l’épuisement des données à écrire sur le disque (1).
  2. Procédé d’optimisation d’écriture sur un disque dur selon la revendication 1, caractérisé en ce que le procédé est mis en œuvre par un système de traitement.
  3. Procédé d’optimisation d’écriture sur un disque dur selon l’une quelconque des revendications précédentes, caractérisé en ce que le procédé est configuré et/ou programmé pour piloter l’écriture de données sur un ensemble de disques durs (11 et 12), les disques durs (11 et 12) étant connectés en parallèle.
  4. Procédé d’optimisation d’écriture sur un disque dur selon l’une quelconque des revendications précédentes, caractérisé en ce que l’au moins un bloc a une taille définie en fonction de la taille d’au moins une mémoire tampon comprise dans le disque dur (10).
  5. Procédé d’optimisation d’écriture selon l’une quelconque des revendications précédentes, caractérisé en ce qu’au moins un saut de piste est effectué entre chaque bloc si le procédé est mis en œuvre sur un seul disque dur (10).
  6. Procédé d’optimisation d’écriture sur un disque dur selon l’une quelconque des revendications précédentes, caractérisé en ce qu’une vitesse d’écriture moyenne minimale sur le disque (1) est supérieure à la vitesse minimum d’écriture du disque (1).
  7. Disque dur pour l’optimisation d’écriture sur ledit disque dur, le disque dur (10) étant équipé d’une unité de traitement pour mettre en œuvre les étapes du procédé selon les revendications 1 à 6.
  8. Produit programme d'ordinateur comprenant des instructions qui, lorsque le programme est exécuté par un ordinateur, conduisent celui-ci à mettre en œuvre les étapes du procédé selon l’une quelconque des revendications 1 à 6.
FR2103530A 2021-04-07 2021-04-07 Procédé d’optimisation d’écriture sur un disque dur Active FR3121778B1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
FR2103530A FR3121778B1 (fr) 2021-04-07 2021-04-07 Procédé d’optimisation d’écriture sur un disque dur

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR2103530A FR3121778B1 (fr) 2021-04-07 2021-04-07 Procédé d’optimisation d’écriture sur un disque dur
FR2103530 2021-04-07

Publications (2)

Publication Number Publication Date
FR3121778A1 true FR3121778A1 (fr) 2022-10-14
FR3121778B1 FR3121778B1 (fr) 2024-04-19

Family

ID=77226851

Family Applications (1)

Application Number Title Priority Date Filing Date
FR2103530A Active FR3121778B1 (fr) 2021-04-07 2021-04-07 Procédé d’optimisation d’écriture sur un disque dur

Country Status (1)

Country Link
FR (1) FR3121778B1 (fr)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0643388A1 (fr) * 1993-09-10 1995-03-15 Matsushita Electric Industrial Co., Ltd. Disque optique, et appareil d'enregistrement et de reproduction optique
US6084831A (en) * 1996-12-16 2000-07-04 Sony Corporation Apparatus and method of averaging disk transfer rate including division of disks into disks accessible in a radially inward direction and disks accessible in a radially outward direction
WO2001001680A1 (fr) * 1999-06-24 2001-01-04 Sony Electronics, Inc. Technologie de memoire de masse
US20090327598A1 (en) * 2008-06-25 2009-12-31 Sony Corporation Disk storage apparatus and program
US8134798B1 (en) 2005-11-23 2012-03-13 Western Digital Technologies, Inc. Disk drive maintaining a substantially constant host transfer rate when reading data from varying data rate data tracks across multiple disk surfaces
EP2759923A2 (fr) * 2013-01-29 2014-07-30 Konica Minolta, Inc. Dispositif de commande d'écriture et appareil de formation d'image

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0643388A1 (fr) * 1993-09-10 1995-03-15 Matsushita Electric Industrial Co., Ltd. Disque optique, et appareil d'enregistrement et de reproduction optique
US6084831A (en) * 1996-12-16 2000-07-04 Sony Corporation Apparatus and method of averaging disk transfer rate including division of disks into disks accessible in a radially inward direction and disks accessible in a radially outward direction
WO2001001680A1 (fr) * 1999-06-24 2001-01-04 Sony Electronics, Inc. Technologie de memoire de masse
US8134798B1 (en) 2005-11-23 2012-03-13 Western Digital Technologies, Inc. Disk drive maintaining a substantially constant host transfer rate when reading data from varying data rate data tracks across multiple disk surfaces
US20090327598A1 (en) * 2008-06-25 2009-12-31 Sony Corporation Disk storage apparatus and program
EP2759923A2 (fr) * 2013-01-29 2014-07-30 Konica Minolta, Inc. Dispositif de commande d'écriture et appareil de formation d'image

Also Published As

Publication number Publication date
FR3121778B1 (fr) 2024-04-19

Similar Documents

Publication Publication Date Title
US6499083B1 (en) Disk-based storage system responsive to a direction-selection signal for autonomously controlling seeks in a sequence determined by the direction-selection signal and a locally-stored doubly linked list
US9921774B2 (en) Data storage management in a memory device
EP0227530B1 (fr) Procédé d'écriture avec mise à jour et de lecture d'informations sur un support non effaçable organisé en secteurs
JP2006024211A5 (fr)
CN107526689B (zh) 读高速缓存管理
FR2687811A1 (fr) Procede et appareil de commande de memoire flash.
JP2012533112A (ja) 階層不揮発性ストレージのためのシステムおよび方法
US20200285391A1 (en) Retention-aware data tiering algorithm for hybrid storage arrays
EP0133706A2 (fr) Procédé et système pour enregistrer et retrouver des données échantillonnées dans des canaux multiples
JP2003507830A (ja) 光データ記憶
US20030149838A1 (en) Data transfer performance through resource allocation
FR3055715A1 (fr) Methodes et dispositifs pour contourner le cache interne d'un controleur memoire dram evolue
US9875030B2 (en) Media write operation
JP4589335B2 (ja) 可変ビットレートメディアストリーム再生時のバッファ再充填時間の決定
US6134586A (en) Striping data across disk zones
US6883062B2 (en) High-speed disk drive system
FR2617627A1 (fr) Disquette d'enregistrement possedant une zone d'enregis trement qui peut etre seulement lue et une zone d'enregistrement sur laquelle il peut etre ecrit, et appareil de commande de celle-ci
FR3121778A1 (fr) Procédé d’optimisation d’écriture sur un disque dur
FR2468163A1 (fr) Dispositif et procede de memorisation virtuelle
JP3637346B1 (ja) 情報記録装置と情報記録方法とプログラム
US20180088833A1 (en) Hybrid data storage device with performance mode data path
EP0952587B1 (fr) DRAM à structure rapide
FR2801388A1 (fr) Procede de commande de memoire dram rapide et controleur adapte
JP2009237902A (ja) 記録装置及びその制御方法
FR3084496A1 (fr) Procede et dispositif de generation d'instructions destinees a un dispositif pour realiser une mise a jour sur place d'un fichier de donnees

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 2

PLSC Publication of the preliminary search report

Effective date: 20221014

PLFP Fee payment

Year of fee payment: 3

CD Change of name or company name

Owner name: EXTREME NETWORKS FRANCE, FR

Effective date: 20240314