Why apt
is always going to be faster than yum
One of the things that people report (to put it politely) when they
switch between a Debian-derived distribution and Fedora is that apt
is
faster than yum
. This is indeed the case, and it is always going to be
the case, because yum
is simply doing far more work than apt
is.
(Whether or not the speed difference matters in practice is another debate. It doesn't bother me, but then I use fairly fast and beefy machines.)
As I understand it, the different amount of work is ultimately due to a basic difference in how each system approaches dependencies. In Debian, the approach to dependencies is entirely package based; package A declares that it requires packages B, C, and D. In RPMs, the dependencies are mostly on things, like files and libraries; while you can make your RPM explicitly depend on packages, you generally don't.
The end result is that there are a lot more dependencies running around an RPM-based system than there are around a Debian one, and many of them are indirect dependencies (you don't depend on a package directly, you depend on something provided by a package). Thus, doing things on an RPM-based system means checking a lot more dependencies, in bigger indexes, and generally taking more steps in resolving each dependency to a package. In short, more work that deals with more data, which means slower.
(The RPM based system has bigger dependency indexes because it has to include files and libraries and so on in them, not just packages.)
As a side note, I suspect that it doesn't help that yum
has larger
indexes and downloads them a lot more often than apt
does.
|
|