Долгосрочная архивация исходного кода: действительно ли это возможно?

NullPointerException s - исключения, возникающие при попытке использовать ссылку, которая указывает на отсутствие местоположения в памяти (null), как если бы она ссылалась на объект. Вызов метода по нулевой ссылке или попытка получить доступ к полю нулевой ссылки вызовет функцию NullPointerException. Они наиболее распространены, но другие способы перечислены на странице NullPointerException javadoc.

Вероятно, самый быстрый пример кода, который я мог бы придумать для иллюстрации NullPointerException, be:

public class Example {

    public static void main(String[] args) {
        Object obj = null;
        obj.hashCode();
    }

}

В первой строке внутри main я явно устанавливаю ссылку Object obj равной null. Это означает, что у меня есть ссылка, но она не указывает на какой-либо объект. После этого я пытаюсь обработать ссылку так, как если бы она указывала на объект, вызывая метод на нем. Это приводит к NullPointerException, потому что нет кода для выполнения в местоположении, на которое указывает ссылка.

(Это техничность, но я думаю, что она упоминает: ссылка, которая указывает на null, равна 't то же, что и указатель C, указывающий на недопустимую ячейку памяти. Нулевой указатель буквально не указывает на в любом месте , который отличается от указаний на местоположение, которое оказывается недопустимым.)

9
задан Vinko Vrsalovic 16 September 2008 в 21:10
поделиться

17 ответов

Лучший ответ "в нескольких местах". Если бы я был обеспокоен хранением моего исходного кода максимально долго, то я сделал бы:

1) Резервное копирование на некоторые оптические среды регулярно, говорят, записывают его к DVD один раз в месяц и архивируют его удаленный.

2) Назад это несколько жестких дисков на моих локальных машинах

3) Назад это до услуг Amazon S3. У них есть гарантии, это - распределенная система так никакие единые точки отказа, и можно легко зашифровать данные, таким образом, они не могут "посмотреть" на него.

С теми тремя шагами Ваши возможности проигрывающих данных являются эффективно нулевыми. Нет такой вещи как слишком много резервных копий для ОЧЕНЬ важных данных.

7
ответ дан 4 December 2019 в 07:05
поделиться

Я просто говорил с парнем, который является экспертом в микрофильме. В то время как это - старая технология, для длительного хранения это - одна из самых устойчивых форм хранения данных, если правильно сохраняется. Это не требует, чтобы сложное оборудование (magifying линза и свет) читало, хотя хранение его может взять некоторую работу.

С другой стороны, как был ранее упомянут, если Вы только говорите в промежутках нескольких лет вместо десятилетий, печатая его прочь бумаге и храните его в управляемой среде, вероятно лучший способ. Если Вы хотите стать действительно творческими, Вы могли бы расщепить каждый лист!

0
ответ дан 4 December 2019 в 07:05
поделиться

Drobo для локального резервного копирования

DVD для краткосрочной локальной архивации

Amazon S3 для удаленной, долгосрочной архивации

0
ответ дан 4 December 2019 в 07:05
поделиться

Онлайн-хранилище подвергается прихоти некоторого центра хранения данных, безопасности или отсутствия безопасности там и возможности, что компания сворачивается и т.д. Плюс он дорог,

Не обязательно дорогой (см. rsync.net, например), ни небезопасный. Можно, конечно, зашифровать материал также.

и Вы не можете гарантировать, что они не посмотрели в.

Правда, но существует, вероятно, намного более интересный материал для заглядывания на, чем исходный код.;-)

Более серьезно RAID-массив больше не является настолько дорогим

RAID не является резервным копированием.

0
ответ дан 4 December 2019 в 07:05
поделиться

Я думаю работы Опции 2 достаточно хорошо, если у Вас есть механизмы резервного копирования записи на месте. Они не должны быть дорогими, вовлекающими третье лицо, ни один (за исключением аварийного восстановления). Настроенный сервер RAID 5 добьется цели. Если жесткий диск перестал работать, замените его. ОЧЕНЬ маловероятно, что все жесткие диски перестанут работать одновременно. Даже зеркальный диск RAID 1 был бы достаточно хорош в некоторых случаях.

Если опция 2 все еще походит на дрянное решение, единственная другая вещь, о которой я могу думать, состоит в том, чтобы распечатать бумажные копии исходного кода, который имеет намного больше проблем, чем любое из вышеупомянутых решений.

0
ответ дан 4 December 2019 в 07:05
поделиться

Один путь состоял бы в том, чтобы периодически перерабатывать Ваши носители, т.е. считывать данные от затухающего носителя и писать это в новое. Там существуйте программы для помощи Вам с этим, например, dvdisaster. В конце ничто не длится навсегда. Просто выберите наименее раздражающее решение.

Что касается № 2: можно хранить данные в зашифрованном виде, чтобы препятствовать тому, чтобы эксперты по восстановлению данных поняли его.

0
ответ дан 4 December 2019 в 07:05
поделиться

Если необходимо сохранить его "навсегда", вероятно, самый безопасный путь состоит в том, чтобы распечатать код и палку это в пластмассовом конверте для защиты его от элементов. Я не могу сказать Вам, сколько означает код, который я потерял резервному копированию, которые больше не достижимы.... У меня нет бумажного картридера для чтения моей старой деки Кобола, никакого диска для моих 5 1/4-дюймовых дискет или моих 3 1/2-дюймовых дискет. но печать, что я сделал из своего первого большого проекта все еще, находится читаемая... даже после моего, после того как 3 года решили, что это сделает хорошую книжку-раскраску.

1
ответ дан 4 December 2019 в 07:05
поделиться

Когда Вы заявляете, "создают резервную копию исходного кода", я надеюсь, что Вы включаете в свое значение резервного копирования Вашей системы управления версиями также.

Поддержка Вашего текущего исходного кода (к нескольким местам) определенно очень важна, но резервное копирование Вашей истории изменений, как сохранено Вашим VCS является главным, по-моему. Может казаться тривиальным особенно, когда мы всегда "живем в подарке, смотря на будущее". Однако были слишком много раз, когда мы хотели посмотреть назад для исследования проблемы, рассмотрите цепочку изменений, посмотрите, кто сделал то, что, можем ли мы откатывать к предыдущей сборке/версии. Тем более важный, если Вы занимаетесь тяжелым ветвлением и слиянием. Архивация одиночной соединительной линии не сделает.

Ваша система управления версиями может идти с документацией и предложениями на стратегиях резервного копирования.

1
ответ дан 4 December 2019 в 07:05
поделиться

Для регулирующего переданного под мандат архивирования электронных данных мы сохраняем данные по RAID и по лентам для резервного копирования в двух отдельных местах (одним из которых является Айен-Маунтин). Мы также заменяем ленты и RAID каждые несколько лет.

1
ответ дан 4 December 2019 в 07:05
поделиться

Лучшее применимое домом решение, которое я видел, распечатывало резервные копии с помощью двухмерного штрихкода - плотность данных была довольно высока, это могло быть повторно просканировано довольно легко (предположение подающего лист сканера), и это переместило проблему от цифрового домена назад в физический - который довольно легко встречен чем-то как банковская ячейка или компанией как Айен-Маунтин.

Другой ответ является 'всем вышеупомянутым'. Дублирование всегда помогает.

1
ответ дан 4 December 2019 в 07:05
поделиться

Не забывайте использовать Подверсию (http://subversion.tigris.org/). Я подверсия моя целая жизнь (это является потрясающим).

2
ответ дан 4 December 2019 в 07:05
поделиться

Лучший способ создать резервную копию Ваших проектов состоит в том, чтобы сделать их открытым исходным кодом и известный. Тем путем там всегда будут люди с копией его и способный отправить его Вам.

После этого, просто забота о магнитных / оптических средах, длительное обновление ее и несколько копий (онлайн также, помните, что можно зашифровать ее) на нескольких медиа (включая, почему не, наборы RAID)

3
ответ дан 4 December 2019 в 07:05
поделиться

Я думаю, что Вы были бы удивлены, как онлайн-хранилище по умеренной цене в эти дни. Amazon S3 (простое решение для устройства хранения данных) составляет 0,10$ за гигабайт в месяц с затратами загрузки в размере 0,10$ за ГБ и загрузкой, стоящей максимум за 0,17$ за ГБ.

Поэтому, если бы Вы сохранили 20 ГБ в течение месяца, загрузили 20 ГБ и загрузили 20 ГБ, то это стоило бы Вам 8,40$ (немного более дорогой в европейском дата-центре на уровне 9$).

Это достаточно дешево, чтобы хранить Ваши данные и в дата-центрах США и в ЕС И на DVD - шансы потери всех трех являются небольшими по меньшей мере.

Существуют также доступные фронтенды, такие как JungleDisk.

http://aws.amazon.com
http://www.jungledisk.com/
http://www.google.co.uk/search?q=amazon%20s3%20clients

3
ответ дан 4 December 2019 в 07:05
поделиться

Любые данные, которые Вы хотите сохранить, должны храниться в нескольких местах на нескольких форматах. В то время как разногласия любого сбоя могут быть значительными, разногласия всех их, какой сбой является довольно маленьким.

3
ответ дан 4 December 2019 в 07:05
поделиться

Если бы Вы хотите заархивировать что-то в течение долгого времени, я пошел бы с ленточным накопителем. Они не могут содержать много, но они надежны и в значительной степени предпочтительный носитель для архивации данных. Я лично никогда не испытывал dataloss на ленточном накопителе, как бы то ни было.

3
ответ дан 4 December 2019 в 07:05
поделиться

На основе Вашего уровня паранойи я рекомендовал бы принтер и сейф.

Более серьезно RAID-массив не является настолько дорогим больше, и пока Вы продолжаете использовать и контролировать его, правильно, массив установки, как фактически гарантируют, никогда не не потеряет данные.

6
ответ дан 4 December 2019 в 07:05
поделиться

Для моих проектов я использую комбинацию 1, 2, и 4. Если это - действительно важные данные, у Вас должно быть несколько копий в нескольких местах. Мои важные данные копируются в 3-4 места каждую ночь.

Если Вы хотите простое решение, я рекомендую получить учетную запись онлайн-хранилища от известного поставщика, который имеет обеспеченную гарантию надежности. Если Вы волнуетесь по поводу безопасности, только загружаете данные в зашифрованных архивах TrueCrypt. Насколько стоится, это, вероятно, будет дорого... Но если действительно настолько важно, чтобы стоимость была ничем.

1
ответ дан 4 December 2019 в 07:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: