Как проблема обслуживания, мне нужно регулярно (3-5 раз в год) копировать репозиторий, который теперь имеет более 20 миллионов файлов и превышает 1,5 терабайта в общем объеме дискового пространства. В настоящее время я использую RICHCOPY, но пробовал другие. RICHCOPY кажется самым быстрым, но я не верю, что приближаюсь к возможностям моей машины XP.
Я играю с использованием того, что я прочитал в The Art of Assembly Language, чтобы написать программу для копирования моих файлов. Моя другая мысль - начать учиться тому, как многопоточность в Python делать копии.
Я собираюсь объединиться с идеей сделать это на Ассамблее, потому что это кажется интересным, но пока мое время не невероятно ценно, это достаточно дорого, что я пытаюсь понять, действительно ли я увижу достаточно значительные прибыли в скорости копирования. Я предполагаю, что я бы, но я только начал действительно учиться программировать 18 месяцев, и это все еще более или менее хобби. Таким образом, я могу упустить некоторую фундаментальную концепцию того, что происходит с интерпретируемыми языками.
Любые наблюдения или опыт будут оценены. Заметьте, я не ищу никакого кода. Я уже написал базовую программу копирования в Python 2.6, которая не медленнее, чем RICHCOPY. Я ищу некоторые наблюдения, по которым мне будет больше скорости. Прямо сейчас мне требуется более 50 часов, чтобы сделать копию с диска на Drobo, а затем обратно с Drobo на диск. У меня есть LogicCube, когда я просто дублирую диск, но иногда мне нужно перейти с диска на Drobo или наоборот. Я думаю, что, учитывая, что я могу сектор копировать 3/4 полный 2 терабайт диск с использованием LogicCube менее чем через семь часов, я должен быть в состоянии приблизиться к этому с помощью Assembly, но я не знаю достаточно, чтобы узнать, действительно ли это, (Да, иногда невежество - это блаженство)
Причина, по которой мне нужно ускорить это, - это то, что у меня было два или три цикла, когда что-то произошло во время копирования (пятьдесят часов - это долгое время, чтобы ожидать, что мир будет оставаться неподвижным), что привело к тому, что мне пришлось уничтожить копию и начните сначала. Например, на прошлой неделе водная магистраль прорвалась под нашим зданием и укоротила власть.
Спасибо за ранние ответы, но я не думаю, что это ограничения ввода-вывода. Я не перехожу через сеть, диск подключен к моей материнской плате с подключением sata, а мой Drobo подключен к порту Firewire, я думаю, что оба соединения должны обеспечивать более быструю передачу.
На самом деле я не могу использовать копию сектора, кроме перехода с одного диска на Drobo. Это не сработает иначе, поскольку файловая структура Drobo является загадкой. Мое ненаучное наблюдение заключается в том, что копия с одного внутреннего диска на другой не быстрее, чем копия на или из Drobo на внутренний диск.
Я связан аппаратным обеспечением, я не могу позволить себе 10 000 об/мин 2 терабайта (если они даже делают их).
Некоторые из вас предлагают решение для синхронизации файлов. Но это не решает мою проблему. Во-первых, решения синхронизации файлов, которые я сыграл, сначала создали карту (не имея лучшего термина) данных, у меня слишком много маленьких файлов, чтобы они задохнулись. Одной из причин, по которым я использую RICHCOPY, является то, что он начинает копировать немедленно, он не использует память для построения карты. Во-вторых, у меня было одно из моих трех резервных копий Drobo, которые выработали пару недель назад. Мое правило: если у меня есть резервный сбой, остальные два должны оставаться в стороне, пока не будет построен новый. Поэтому мне нужно скопировать одну из трех резервных копий одного диска, которые я использую с LogicCube.
В конце дня я должен иметь хорошую копию на одном диске, потому что это то, что я доставляю своим клиентам. Поскольку у моих клиентов есть разные системы, я доставляю их на диски SATA.
Я арендую какое-то облачное пространство от кого-то, где мои данные также хранятся как самая глубокая резервная копия, но при этом стоит тянуть, если оттуда там.