Время, необходимое для копирования 1,5 ТБ данных, во многом зависит от типа данных. Если у вас есть несколько 1500 файлов 1 ГБ, это, вероятно, займет всего несколько часов, но если у вас есть полтора миллиарда файлов 1 КБ, это, вероятно, займет несколько дней.
Это связано с двумя конкурирующими характеристиками на дисках: пропускной способностью и средним временем доступа. Традиционный диск с пропускной способностью 100 МБ / с и временем доступа 10 мс довольно распространен. Если вы можете передавать данные последовательно, вы можете получить 100 МБ / с. Однако, если вам нужно прыгнуть в другое место, это займет 10 мс. Если бы вы работали в потоковом режиме, вы могли бы записать 1 МБ данных за время, необходимое для перехода в другое место.
Создание файла может занять несколько попыток, поэтому создание файла размером 1 КБ может стоить столько же, сколько и потоковая передача нескольких МБ данных.
Таким образом, в некоторых случаях лучше делать сырую копию диска блочного устройства, чем копировать в файловую систему с помощью чего-то вроде rsync. Если у вас много файлов, например, в файловой системе, которая заполнена на 50% или более, вам часто лучше просто скопировать полное блочное устройство через «dd», так как это занимает много времени. Конечно, вы не можете сделать это, пока смонтирована файловая система, поэтому у этого также есть недостатки.
Твердотельные накопители могут помочь смягчить это, потому что их время доступа примерно в 100 раз меньше, но накопители MLC SSD имеют сложные проблемы с доступом в зависимости от доступности пула предварительно стертых блоков. SLC SSD могут помочь в этом.
Контроллеры RAID со встроенным кешем могут помочь в поиске, как и модуль ядра flashcache, который позволяет вам кешировать блочное устройство через SSD.
Системы RAID могут обеспечивать несколько параллельных поисков, эффективно сокращая среднее время доступа, а также распараллеливание для увеличения пропускной способности. Но ваша общая производительность часто зависит от того, сколько файлов задействовано.