Организация ГИС-проектов? [закрыто]

27

Я довольно долго боролся за то, чтобы мои файлы проекта были организованы.

Каковы ваши советы по организации ваших наборов данных, изображений, шейп-файлов и т. Д.?

relima
источник
2
Смотрите также ответы на этот [вопрос] [1]. [1]: gis.stackexchange.com/questions/2976/…
jonatr

Ответы:

36

Примечание: эта напыщенная речь будет обновляться по мере продвижения

Я ни в коем случае не компьютер или ArcGIS pro, но вот что я делаю:

Базовые файлы / DBS

  • Это файлы, которые имеют «сырой» характер и составляют основу всего моего анализа.
  • Эти файлы, базы данных и данные размещены вне моей projectsпапки и размещены на моем интернет-сервере, локальном компьютере и в Dropbox. У меня всегда есть к ним доступ, и они очень организованы, разрознены и агрегированы. Вы потратите много времени на их организацию.
  • Я помещаю их все в базы данных, будь то в Arc или PostGIS.
  • К каждой таблице я добавляю 3 поля в самой таблице или метаданных: DATE_OBTAINED, DATA_DATE, SOURCE_NOTES
  • Также базовые файлы могут быть запросами нескольких других таблиц. Например, таблица может объединять весь полученный трафик в один большой запрос / таблицу.
  • Я также поместил здесь все другие данные, которые я нахожу в интернете.
  • Я НИКОГДА НЕ ИМЕЮ НИКАКОГО ПРЯМОГО АНАЛИЗА НА ЛЮБОМ ФАЙЛЕ В БАЗОВЫХ ФАЙЛАХ

Файлы проекта

  • Все мои файлы проекта идут в my_projectsпапке. Он содержит все, что связано с этим проектом, например, если я скопирую и вставлю эту папку в другое место, он будет содержать все.
  • Обычно у меня есть следующая структура:
    • мой проект/
      • админ /
      • связь /
      • необработанные данные/
      • analyzed_data /
      • output_data /
      • from_client /
      • FINAL /
      • код/
      • some_document_date_time.doc
      • ПРОЧТИ МЕНЯ
  • Постепенно я переехал в местный GIT. (Вы можете даже разместить его локально или на своем собственном сервере). Причина, по которой я не помещаю его на GitHub, заключается в том, что github имеет ограничение в 1,2 ГБ, которое бесполезно для анализа ГИС.
  • Для своих проектов я обычно копирую все таблицы ГИС, которые мне нужны для анализа, в новую базу данных: project_whothing.
  • 9 раз из 10, я работаю только в SHP - файлов , и я сохранить все мои ГИС (изображения, Excel, координаты и т.д.) на мой projects/my_project/raw_data, projects/my_projects/analyzed_dataи projects/my_projects/output_data.
  • Когда проект завершен, я помещаю окончательную отправленную копию в my_projects/FINAL/date_submitted
  • Для моего MXD я обычно сохраняю в новый MXD каждые 2 или 3 часа, my_proj_dec_22_11__13_20.mxdнапример
  • Для документов Ms Word, иллюстраций и, в основном, для редактирования документов, они находятся в папке my_projects, например, RFP_TENDER_Dec_22_11__11_15.docи draft_ver5_Dec_31_11__12_30.doc. Опять все мои окончательные результаты помещаются в папку FINAL
  • Для R, Python-кода и некоторого C # это становится немного сложнее, так как я размещаю его вне проекта, но с рабочей копией в my_projects/codeпапку. Я делаю это, так как большая часть кода Python может использоваться повторно. Если вы поместите весь свой код Python помимо проектов, вы забудете о них. Кроме того, весь мой код Python идет на GitHub.
  • Для меня файлы проекта включают в себя любые типы файлов, включая отслеживание времени, обмен сообщениями (я сохраняю все свои электронные письма в виде файлов MSG), я записываю все наши устные сообщения в текстовый файл и помещаю все эти файлы в my_project / communication
  • В ArcGIS используйте Models, LYR и «сохранить выделение как новый слой shp». Эти инструменты позволят легко хранить файлы в меньших форматах, повторно использовать файлы и с моделями, иметь возможность использовать что-то в другом месте.

Окончательный вывод

  • Каждый завершенный проект упакован в архив и помещен в мой внешний жесткий диск.
  • Все конечные продукты преобразуются в файлы из таблиц и в PDF из всех других форматов.
  • Каждый проект, который я делаю, распечатывается на бумажном носителе

Суть

  • Каждый человек использует несколько разных программ и инструментов. Многие люди, которых я знаю, организуются с помощью basecamp , Harvest или любого другого множества инструментов. Также у людей разные рабочие привычки и склонности к ОКР. Я довольно одержим организацией вещей, может быть, немного больше, чем другие. Поэтому разработайте систему, которая будет вызывать у вас наименьшее напряжение, гарантируя, что вы будете последовательно применять и обновлять ее.
  • Резервное копирование и копирование всего
  • Не работайте напрямую с вашими необработанными / базовыми данными
  • Для ваших проектов всегда используйте файл реплики, так как данные меняются со временем, и вы не хотите, чтобы карабкаться, чтобы найти base_layer_2006.shp.
  • каждая папка my_projects должна иметь текстовый файл README, который вы редактируете во время выполнения проектов, чтобы предоставить некоторую базовую информацию, которую, как вы знаете, вы забудете позже, когда посетите проект через 2 года
dassouki
источник
Очень хорошо. Я предполагаю, что вы не все заинтересованы в создании дубликатов всех ваших наборов данных (необработанных, проанализированных) и занимаемого ими места.
Дчабоя
2
@dchaboya стоимость дискового пространства относительно низкая по сравнению с уровнем стресса, который я экономлю. Также я не верю в удаление чего-либо.
Дассуки
Просто любопытно, почему ограничение GitHub является значительным. Вы используете git для всего, кроме кода? Я начинаю использовать контроль версий для тех же самых целей и пытаюсь изучить хорошие практики.
DJQ
@dassouki, почему вы создаете новые версии ваших mxd файлов при использовании git? Вы также можете управлять версиями этих файлов MXD.
Пол Химстра
@PaulHiemstra В основном потому, что мне легче открывать несколько версий одновременно.
Дассоуки
8

Вы не утверждали, что работаете только с программным обеспечением Desktop GIS, поэтому я поделюсь с вами своим опытом, связанным с мышлением, ориентированным на программирование. Позвольте мне сначала сказать, что я согласен с тем, что говорит @dassouki. Я думаю, что самое важное не в том, как вы организовываете, а в том, как вы это делаете.

Но перейти к моему рабочему процессу. Что мне нравится в использовании языка программирования (в моем случае это R), так это то, что сценарий, который я пишу, документирует все мои шаги. Это отличается от использования ArcGIS, где, на мой взгляд, сложнее увидеть, как пользователь прошел путь от необработанных входных данных к тому, что можно увидеть в файле mxd. Конечно, вы можете вести журнал всех шагов, которые вы делаете в графическом интерфейсе, но я думаю, что язык программирования гораздо лучше сохраняет тот рабочий процесс, который вы предприняли. Это может быть особенно важно, когда клиент / руководитель спрашивает, как вы что-то сделали, или что именно вы сделали для производства определенного продукта.

Поэтому на практике у меня на диске есть несколько важных папок (обратите внимание, что я ученый):

  • Эксперименты, здесь я храню все эксперименты, которые я выполняю, например, пробуя определенный анализ на определенном массиве данных. У каждого эксперимента есть свой каталог. Я также храню результирующие таблицы и такие здесь. Все мои R-скрипты находятся в этом каталоге.
  • Наборы данных, все мои сырые наборы данных хранятся отдельно от
  • У меня есть отдельный каталог, где я храню код, который я обобщил для повторного использования в другом проекте.
  • Документы, моя работа вращается вокруг написания научных работ. Для каждой статьи у меня есть отдельный каталог, где я храню свои латексные файлы. Эти файлы читают иллюстрации и таблицы из каталога экспериментов. Бумага может содержать несколько иллюстраций.
  • Программное обеспечение, в отдельном каталоге я храню программное обеспечение, в основном R-пакеты, которые я написал, и некоторый код Fortran, который я компилирую для запуска моделей.

Некоторые основные идеи, которые я использую:

  • Отдельные (относительно) статические формы динамических вещей: например, сохранение обобщенных сценариев где-то, отличное от того, где вы сохраняете краткосрочные проекты. Или отделите ваши необработанные данные от ваших анализов на них.
  • Используйте программное обеспечение для управления версиями там, где можете. Мне нравится Mercurial и Git.
  • АВТОМАТИЗИРУЙТЕ СВОЕ РЕЗЕРВНОЕ КОПИРОВАНИЕ !!!! Вы никогда не думаете о них, когда вы делаете их вручную, а затем ваш жесткий диск падает. Под Linux этот вид автоматизации прост. Я не уверен, как это под Windows / Mac.

В целом, мне нравится использовать язык программирования, потому что в одном скрипте вы можете перейти от необработанных данных к результирующим рисункам / таблицам. R - неплохой кандидат, потому что он может легко читать и записывать данные ГИС и имеет массу анализов, как ГИС, так и статистики.

Пол Химстра
источник
1
+1 об автоматизации резервного копирования. Вот почему я связываю свои папки с Dropbox
dassouki
3
Есть ли в Dropbox необходимый тип хранилища? А как вы относитесь к тому, чтобы отдать свою драгоценную работу в руки сторонней фирмы?
Пол Химстра
3

Я просто хотел бы добавить к ответу выше - 2 вещи.

  1. Мне нравится иметь папки в каталоге импорта необработанных данных - папки для каждого получения набора данных - т.е. from_clientname-2011dec23. Таким образом, я могу проследить, когда я получил каждый кусок данных, используемых в проекте.

  2. Мне также нравится, когда документ проекта сворачивается на ходу - тогда я могу создать здесь документ Word или простой файл TXT, чтобы я мог записать, что я сделал в проекте, дату и кто его запросил. Таким образом, я могу вернуться и укрыться - кто-то спрашивает, почему я что-то сделал. Это может показаться утомительным для небольших запросов, но это может спасти вас в конце концов.

dklassen
источник
1
Это, безусловно, материал «Управление проектами». Хотя значительная часть времени, которую вы тратите на проект, может быть посвящена обеспечению того, чтобы все было организовано и хорошо задокументировано, в конечном итоге это может сэкономить ваше время, а также предотвратить сокращение продолжительности вашей жизни.
Дчабоя