Vous n'êtes pas identifié(e).

#1 Le 30/07/2022, à 09:41

P'skhal
Explorateur
Lieu : Au-delà du portail
Inscription : Le 18/08/2016,
Messages : 37 373

The tar archive format, its extensions, ...

... and why GNU tar extracts in quadratic time

A couple of days ago, I had a 518GiB tar.gz file (1.1 TiB uncompressed) that I had to extract. At first, GNU tar was doing a great job, chewing through the tar.gz at around 100MiB/s. But after a while, it slowed significantly; down to less than a kilobyte per second. pv's time estimate went from a bit over an hour, to multiple hours, to over a day, to almost a week. After giving it some time, and after failing to find anything helpful through Google, I decided that learning the tar file format and making my own tar extractor would probably be faster than waiting for tar. And I was right; before the day was over, I had a working tar extractor, and I had successfully extracted my 1.1TiB tarball.

I will explain why GNU tar is so slow later in this post, but first, let's take a look at:

The original tar file format

Tar is pretty unusual for an archive file format. There's no archive header, no index of files to fascilitate seeking, no magic bytes to help file and its ilk detect whether a file is a tar archive, no footer, no archive-wide metadata. The only kind of thing in a tar file is a file object.

La suite : https://mort.coffee/home/tar/


“ Aujourd'hui plus qu'hier et bien moins que demain „

P'skhal

#1 Le 30/07/2022, à 09:41

Explorateur
Lieu : Au-delà du portail
Inscription : Le 18/08/2016,
Messages : 37 373
... and why GNU tar extracts in quadratic time

A couple of days ago, I had a 518GiB tar.gz file (1.1 TiB uncompressed) that I had to extract. At first, GNU tar was doing a great job, chewing through the tar.gz at around 100MiB/s. But after a while, it slowed significantly; down to less than a kilobyte per second. pv's time estimate went from a bit over an hour, to multiple hours, to over a day, to almost a week. After giving it some time, and after failing to find anything helpful through Google, I decided that learning the tar file format and making my own tar extractor would probably be faster than waiting for tar. And I was right; before the day was over, I had a working tar extractor, and I had successfully extracted my 1.1TiB tarball.

I will explain why GNU tar is so slow later in this post, but first, let's take a look at:

The original tar file format

Tar is pretty unusual for an archive file format. There's no archive header, no index of files to fascilitate seeking, no magic bytes to help file and its ilk detect whether a file is a tar archive, no footer, no archive-wide metadata. The only kind of thing in a tar file is a file object.

La suite : https://mort.coffee/home/tar/


“ Aujourd'hui plus qu'hier et bien moins que demain „

Hors ligne

Hors ligne

#2 Le 30/07/2022, à 10:02

M'lou
MétalWoman
Lieu : Quelque part dans la Galaxie
Inscription : Le 18/08/2016,
Messages : 41 725

Re : The tar archive format, its extensions, ...

In French please ?     tongue   

J'ai quand même compris de quoi ça parle    tongue   


L'amour est comme un jardin, il doit se cultiver chaque  jour pour donner le meilleur de lui-même

M'lou

#2 Le 30/07/2022, à 10:02

MétalWoman
Lieu : Quelque part dans la Galaxie
Inscription : Le 18/08/2016,
Messages : 41 725

In French please ?     tongue   

J'ai quand même compris de quoi ça parle    tongue   


L'amour est comme un jardin, il doit se cultiver chaque  jour pour donner le meilleur de lui-même

Hors ligne

Hors ligne

#3 Le 30/07/2022, à 22:03

P'skhal
Explorateur
Lieu : Au-delà du portail
Inscription : Le 18/08/2016,
Messages : 37 373

Re : The tar archive format, its extensions, ...

big_smile

Ouaip, le gars s'est concocté un tar beaucoup plus efficace vis à vis de son cas mais bon, ce n'est pas très courant d'extraire 1 To de données je pense...   tongue


“ Aujourd'hui plus qu'hier et bien moins que demain „

P'skhal

#3 Le 30/07/2022, à 22:03

Explorateur
Lieu : Au-delà du portail
Inscription : Le 18/08/2016,
Messages : 37 373

big_smile

Ouaip, le gars s'est concocté un tar beaucoup plus efficace vis à vis de son cas mais bon, ce n'est pas très courant d'extraire 1 To de données je pense...   tongue


“ Aujourd'hui plus qu'hier et bien moins que demain „

Hors ligne

Hors ligne

#4 Le 31/07/2022, à 10:06

M'lou
MétalWoman
Lieu : Quelque part dans la Galaxie
Inscription : Le 18/08/2016,
Messages : 41 725

Re : The tar archive format, its extensions, ...

Ah ?     tongue      lol


L'amour est comme un jardin, il doit se cultiver chaque  jour pour donner le meilleur de lui-même

M'lou

#4 Le 31/07/2022, à 10:06

MétalWoman
Lieu : Quelque part dans la Galaxie
Inscription : Le 18/08/2016,
Messages : 41 725

Ah ?     tongue      lol


L'amour est comme un jardin, il doit se cultiver chaque  jour pour donner le meilleur de lui-même

Hors ligne

Hors ligne

#5 Le 31/07/2022, à 10:17

P'skhal
Explorateur
Lieu : Au-delà du portail
Inscription : Le 18/08/2016,
Messages : 37 373

Re : The tar archive format, its extensions, ...

lol  lol  lol

Bon, je retire !   r_tirelangue7


“ Aujourd'hui plus qu'hier et bien moins que demain „

P'skhal

#5 Le 31/07/2022, à 10:17

Explorateur
Lieu : Au-delà du portail
Inscription : Le 18/08/2016,
Messages : 37 373

lol  lol  lol

Bon, je retire !   r_tirelangue7


“ Aujourd'hui plus qu'hier et bien moins que demain „

Hors ligne

Hors ligne

#6 Le 31/07/2022, à 10:22

M'lou
MétalWoman
Lieu : Quelque part dans la Galaxie
Inscription : Le 18/08/2016,
Messages : 41 725

Re : The tar archive format, its extensions, ...

lol  lol  lol  lol    wink


L'amour est comme un jardin, il doit se cultiver chaque  jour pour donner le meilleur de lui-même

M'lou

#6 Le 31/07/2022, à 10:22

MétalWoman
Lieu : Quelque part dans la Galaxie
Inscription : Le 18/08/2016,
Messages : 41 725

lol  lol  lol  lol    wink


L'amour est comme un jardin, il doit se cultiver chaque  jour pour donner le meilleur de lui-même

Hors ligne

Hors ligne

#7 Le 31/07/2022, à 10:23

P'skhal
Explorateur
Lieu : Au-delà du portail
Inscription : Le 18/08/2016,
Messages : 37 373

Re : The tar archive format, its extensions, ...

wink


“ Aujourd'hui plus qu'hier et bien moins que demain „

P'skhal

#7 Le 31/07/2022, à 10:23

Explorateur
Lieu : Au-delà du portail
Inscription : Le 18/08/2016,
Messages : 37 373

wink


“ Aujourd'hui plus qu'hier et bien moins que demain „

Hors ligne

Hors ligne

Pied de page des forums