28 votos

¿Organización de proyectos SIG?

Llevo mucho tiempo luchando por mantener organizados los archivos de mis proyectos.

¿Cuáles son tus consejos para mantener organizados tus conjuntos de datos, imágenes, shapefiles, etc.?

2 votos

Vea también las respuestas a esta [pregunta][1]. [1]: gis.stackexchange.com/questions/2976/

35voto

Callum Rogers Puntos 161

Nota: Este desvarío se irá actualizando a medida que avance

No soy un profesional de la informática ni de ArcGIS, pero esto es lo que hago:

Archivos base/DBS

  • Se trata de archivos de naturaleza "bruta" que constituyen la base de todos mis análisis
  • Estos archivos, bases de datos y datos están alojados en el exterior de mi projects y están alojados en mi servidor de Internet, en mi ordenador local y en Dropbox. Siempre tengo acceso a ellos, y están muy organizados, dis y agregados. Pasarás mucho tiempo organizándolos.
  • Los pongo todos en bases de datos, ya sea en Arc o en PostGIS.
  • A cada tabla, añado 3 campos en la propia tabla o en los metadatos: FECHA_OBTENIDA, FECHA_DATOS, NOTAS_FUENTE
  • También los archivos de la base pueden ser consultas de otras tablas múltiples. Por ejemplo, una tabla podría agregar todo el recuento de tráfico que obtenga en una gran consulta/tabla.
  • También pongo aquí todos los demás datos que encuentro rastreando en internet.
  • NUNCA HAGO NINGÚN ANÁLISIS DIRECTO EN NINGUNO DE LOS ARCHIVOS DE LA BASE

Archivos de proyectos

  • Todos mis archivos de proyecto van en un my_projects carpeta. Contiene todo lo relacionado con ese proyecto, es decir, si copio y pego esa carpeta en otro lugar, contendrá todo.
  • Normalmente tengo la siguiente estructura:
    • mi_proyecto/
      • admin/
      • comunicación/
      • raw_data/
      • datos_analizados/
      • datos_de_salida/
      • de_cliente/
      • FINAL/
      • código/
      • algún_documento_fecha_tiempo.doc
      • README
  • Poco a poco he ido pasando a un GIT local. (incluso puedes alojarlo localmente o en tu propio servidor). La razón por la que no lo pongo en GitHub es que github tiene un límite de 1,2gb que es inútil para el análisis del SIG
  • Para mis proyectos, suelo replicar todas las tablas del SIG que necesito para mi análisis en una nueva db: project_whatever.
  • 9 de cada 10 veces, trabajo sólo en archivos shp y guardo todos mis SIG (imágenes, excel, coordenadas, etc) en mi projects/my_project/raw_data , projects/my_projects/analyzed_data y projects/my_projects/output_data .
  • Cuando un proyecto está terminado, pongo la copia final presentada en my_projects/FINAL/date_submitted
  • Para mi MXD, suelo guardar en un nuevo MXD cada 2 o 3 horas my_proj_dec_22_11__13_20.mxd por ejemplo
  • Para los documentos de Ms Word, las ilustraciones, y sobre todo los documentos de edición, van en la carpeta my_projects como RFP_TENDER_Dec_22_11__11_15.doc y draft_ver5_Dec_31_11__12_30.doc . De nuevo, todos mis productos finales van en la carpeta FINAL
  • Para el código R, Python y algo de C#, se complica un poco, ya que lo alojo fuera del proyecto pero con una copia de trabajo a my_projects/code carpeta. Hago esto porque la mayor parte del código python es reutilizable. Si pones todo tu código python además de los proyectos, te olvidarás de ellos. Además, todo mi código python va en github.
  • Para mí, los archivos del proyecto incluyen cualquier tipo de archivo, incluido el seguimiento del tiempo, las comunicaciones (guardo todos mis correos electrónicos como archivos .msg), registro todas nuestras comunicaciones verbales en un archivo de Word, y pongo todos esos archivos my_project/communication
  • Con ArcGIS utilice Modelos, LYR y "guardar la selección como una nueva capa shp". Estas herramientas facilitarán el almacenamiento de archivos en formatos más pequeños, la reutilización de archivos y, con los modelos, la posibilidad de utilizar algo en otro lugar.

Resultado final

  • Cada proyecto, una vez finalizado, se comprime y se guarda en mi disco duro externo.
  • Todos los productos finales se convierten en archivos a partir de Tablas, y en PDF a partir de todos los demás formatos.
  • Cada proyecto que hago se imprime para tener una copia de seguridad.

El resultado final

  • Cada persona utiliza múltiples y diferentes programas y herramientas. Mucha gente que conozco se organiza utilizando campamento base , Cosecha o cualquier otra multitud de herramientas. También las personas tienen diferentes hábitos de trabajo y tendencias de TOC. Yo estoy bastante obsesionado con tener las cosas organizadas, quizás un poco más que otros. Así que desarrolla el sistema que te cause menos estrés mientras garantizar la constancia en su aplicación y actualización
  • Hacer copias de seguridad y replicar todo
  • No trabaje directamente sobre sus datos brutos / base
  • Para sus proyectos, utilice siempre un archivo de réplica, ya que los datos cambian con el tiempo, y no querrá estar luchando por encontrar el base_layer_2006.shp .
  • cada carpeta de mis_proyectos debe tener un archivo de texto README que lo editas mientras haces los proyectos para dar alguna información básica que sabes que olvidarás más tarde cuando visites el proyecto dentro de 2 años

0 votos

Muy bien. Supongo que no te preocupa tanto la creación de duplicados de todos tus conjuntos de datos (crudos, analizados) y el espacio que esto ocupa.

2 votos

@dchaboya el coste del espacio en disco es relativamente bajo en comparación con el nivel de estrés que me ahorro. Además no creo en borrado de cualquier cosa.

0 votos

Sólo tengo curiosidad por saber por qué la limitación de github es significativa. ¿Usas git para todo, también para lo que no es código? Estoy empezando a utilizar el control de versiones para los mismos fines y tratando de aprender las buenas prácticas.

7voto

Richard C. McGuire Puntos 3345

No has dicho que sólo trabajas con software SIG de escritorio, así que compartiré algunas de mis experiencias desde la mentalidad orientada a la programación. Permítanme empezar diciendo que estoy de acuerdo con las cosas que dice @dassouki. Creo que lo más importante no es cómo te organizas, sino que lo haces.

Pero para pasar a mi flujo de trabajo. Lo que me gusta de usar un lenguaje de programación (R en mi caso) es que el script que escribo documenta todos los pasos que doy. Esto contrasta con el uso de ArcGIS, donde creo que es más difícil ver cómo un usuario pasó de los datos de entrada en bruto a lo que se puede ver en un archivo mxd. Por supuesto, se puede guardar un registro de todos los pasos que se dan en la interfaz gráfica de usuario, pero creo que un lenguaje de programación se presta mucho más a guardar el flujo de trabajo exacto que se hizo. Esto puede ser particularmente importante cuando un cliente/supervisor te pregunta cómo hiciste algo, o qué hiciste exactamente para producir un determinado producto.

Así que en la práctica tengo varias carpetas en mi disco que son importantes (tenga en cuenta que soy un científico):

  • Experimentos, aquí almaceno todos los experimentos que realizo, por ejemplo, probar un determinado análisis en un determinado cuerpo de datos. Cada experimento tiene su propio directorio. También almaceno aquí las tablas resultantes y demás. Todos mis scripts de R están en este directorio.
  • Datasets, todos mis conjuntos de datos en bruto se almacenan por separado del
  • herramientas, tengo un directorio separado donde almaceno el código que he generalizado para reutilizarlo en otro proyecto.
  • Documentos, mi trabajo gira en torno a la redacción de artículos científicos. Para cada artículo tengo un dir separado donde almaceno mis archivos Latex. Estos archivos leen las ilustraciones y tablas del directorio de experimentos. Un artículo puede contener varias ilustraciones.
  • software, en un dir separado almaceno software, principalmente paquetes R que escribí y algún código fortran que compilo para ejecutar modelos.

Algunas ideas principales que utilizo:

  • Separar las cosas estáticas de las dinámicas (relativamente): por ejemplo, guardar los scripts generalizados en un lugar diferente al de los proyectos a corto plazo. O separar los datos en bruto de los análisis que se realizan sobre ellos.
  • Utiliza un software de gestión de versiones siempre que puedas. Me gusta mercurial y git.
  • ¡¡¡¡AUTOMATICE SUS COPIAS DE SEGURIDAD!!!! Nunca piensas en ellas cuando las haces manualmente, y luego tu disco duro se estropea. En linux este tipo de automatización es fácil. No estoy seguro de cómo es esto bajo Windows/Mac.

En general me gusta usar un lenguaje de programación porque en un script se puede pasar de los datos brutos a las imágenes/tablas resultantes. R es un buen candidato porque puede leer y escribir datos GIS fácilmente y tiene una tonelada de análisis a bordo, tanto GIS como estadísticos.

1 votos

+1 sobre la automatización de las copias de seguridad. Es por eso que Simlink mis carpetas a Dropbox

3 votos

¿Tiene Dropbox el tipo de almacenamiento que necesitas? ¿Y qué te parece poner tu valioso trabajo en manos de una empresa externa?

2voto

dchanson Puntos 29

Me gustaría añadir a la respuesta anterior dos cosas.

  1. Me gusta tener carpetas en el directorio de importación de datos brutos - carpetas para cada vez que recibo un conjunto de datos - por ejemplo, from_clientname-2011dec23. De esta manera puedo rastrear cuando recibí cada pieza de datos utilizados en el proyecto.

  2. También me gusta tener un documento de proyecto plegable sobre la marcha - puedo crear un documento de Word o un simple archivo TXT en el que puedo escribir lo que hice en el proyecto, la fecha y quién lo pidió. De esta manera puedo volver atrás y cubrirme si alguien me pregunta por qué hice algo. Esto puede sonar tedioso para las solicitudes pequeñas, pero puede ahorrarte al final.

1 votos

Esto es ciertamente material de Gestión de Proyectos 101. Aunque una buena parte del tiempo que se invierte en un proyecto puede dedicarse a mantener todo organizado y bien documentado, al final esto puede ahorrar potencialmente tiempo, así como evitar la reducción de su esperanza de vida.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X