जीआईएस परियोजनाओं का आयोजन? [बन्द है]


27

मैं अपनी परियोजना फाइलों को व्यवस्थित रखने के साथ काफी लंबे समय से संघर्ष कर रहा हूं।

आपके डेटासेट, चित्र, आकार आकृति आदि को व्यवस्थित रखने के लिए आपके सुझाव क्या हैं?


2
इस [प्रश्न] [१] के उत्तर भी देखें। [१]: gis.stackexchange.com/questions/2976/…
jonatr

जवाबों:


36

नोट: मेरे जाते ही यह रेंट अपडेट हो जाएगा

मैं किसी भी तरह से कंप्यूटर या आर्कगिस समर्थक नहीं हूँ, लेकिन यहाँ मैं क्या करूँ:

आधार फाइलें / डीबीएस

  • ये ऐसी फाइलें हैं जो प्रकृति में "कच्ची" हैं और मेरे सभी विश्लेषणों का आधार हैं
  • ये फ़ाइलें, डेटाबेस और डेटा मेरे फ़ोल्डर के बाहर होस्ट किए जाते हैं projects, और मेरे इंटरनेट सर्वर, स्थानीय कंप्यूटर और ड्रॉपबॉक्स पर होस्ट किए जाते हैं। मेरी हमेशा उन तक पहुंच है, और वे बहुत संगठित, डिस और एग्रीगेटेड हैं। आप इन्हें व्यवस्थित करने में बहुत समय व्यतीत करेंगे।
  • मैंने उन सभी को डेटाबेस में रखा है चाहे आर्क या पोस्टगिस में।
  • प्रत्येक तालिका में, मैं तालिका या मेटा डेटा में 3 फ़ील्ड जोड़ता हूं: DATE_OBTAINED, DATA_DATE, SOURCE_NOTES
  • इसके अलावा बेस फाइलें कई अन्य तालिकाओं के प्रश्न हो सकते हैं। उदाहरण के लिए, एक तालिका एक बड़ी क्वेरी / तालिका में प्राप्त सभी ट्रैफ़िक गणना को एकत्र कर सकती है।
  • मैंने यहां अन्य सभी डेटा भी डाल दिए हैं जो मुझे इंटरनेट को परिमार्जन करने के लिए मिलते हैं।
  • मैं कभी भी फिल्मों में से किसी पर भी प्रत्यक्ष विश्लेषण नहीं करता है

प्रोजेक्ट फाइलें

  • मेरी सभी प्रोजेक्ट फाइलें एक my_projectsफ़ोल्डर में जाती हैं। इसमें उस प्रोजेक्ट से संबंधित सब कुछ शामिल है, जैसे अगर मैं उस फ़ोल्डर को कहीं और कॉपी और पेस्ट करता हूं, तो उसमें सब कुछ होगा।
  • आमतौर पर मेरे पास निम्नलिखित संरचना है:
    • मेरी परियोजना/
      • व्यवस्थापक/
      • संचार /
      • कच्चा डेटा/
      • analyzed_data /
      • उत्पादित आंकड़े/
      • from_client /
      • अंतिम/
      • कोड /
      • some_document_date_time.doc
      • README
  • धीरे-धीरे मैं एक स्थानीय जीआईटी में जा रहा हूं। (आप इसे स्थानीय या अपने स्वयं के सर्वर पर भी होस्ट कर सकते हैं)। GitHub पर इसे न डालने का कारण यह है कि github की 1.2gb सीमा है जो GIS विश्लेषण के लिए बेकार है
  • अपनी परियोजनाओं के लिए, मैं आमतौर पर सभी जीआईएस तालिकाओं को दोहराता हूं जो मुझे अपने विश्लेषण के लिए एक नए डीबी: प्रोजेक्ट_हैवर में चाहिए।
  • 10 में से 9 बार, मैं shp फाइलों में ही काम करते हैं और मैं अपने को मेरे सभी जीआईएस (चित्र, एक्सेल, निर्देशांक, आदि) को बचाने projects/my_project/raw_data, projects/my_projects/analyzed_dataऔर projects/my_projects/output_data
  • जब कोई परियोजना पूरी हो जाती है, तो मैं अंतिम सबमिट की गई कॉपी डाल देता हूं my_projects/FINAL/date_submitted
  • अपने एमएक्सडी के लिए, मैं आमतौर पर my_proj_dec_22_11__13_20.mxdउदाहरण के लिए हर 2 या 3 घंटे में एक नए एमएक्सडी को बचाता हूं
  • Ms Word दस्तावेज़, चित्र और ज्यादातर संपादन दस्तावेज़ों के लिए, वे my_projects फ़ोल्डर में जाते हैं जैसे RFP_TENDER_Dec_22_11__11_15.docऔर draft_ver5_Dec_31_11__12_30.doc। फिर से मेरे सभी अंतिम डिलिवरेबल्स फाइनल फ़ोल्डर में जाते हैं
  • आर, पायथन कोड और कुछ सी # के लिए, यह थोड़ा मुश्किल हो जाता है, क्योंकि मैं इसे परियोजना के बाहर होस्ट करता हूं, लेकिन my_projects/codeफ़ोल्डर में काम करने वाली कॉपी के साथ । मैं इसे करता हूं क्योंकि अधिकांश अजगर कोड पुन: प्रयोज्य हैं। यदि आप परियोजनाओं के अलावा अपने सभी अजगर कोड डालते हैं, तो आप उनके बारे में भूल जाएंगे। इसके अलावा, मेरे सारे अजगर कोड गिथब पर चलते हैं।
  • मेरे लिए प्रोजेक्ट फ़ाइलों में टाइम ट्रैकिंग, संचार सहित कोई भी फ़ाइल प्रकार शामिल हैं (मैं अपने सभी ईमेल को .msg फ़ाइलों के रूप में सहेजता हूं), मैं एक शब्द फ़ाइल में हमारे सभी मौखिक संचार लॉग करता हूं, और मैंने उन सभी फ़ाइलों को my_project / संचार में डाल दिया है
  • ArcGIS के साथ मॉडल, LYR, और "एक नई shp लेयर के रूप में चयन सहेजें" का उपयोग करें। ये उपकरण छोटे स्वरूपों में फ़ाइलों को संग्रहीत करना, फ़ाइलों का पुन: उपयोग करना और मॉडल के साथ, किसी अन्य स्थान पर कुछ का उपयोग करने में सक्षम होना आसान बना देंगे।

अंतिम आउटपुट

  • प्रत्येक प्रोजेक्ट जब फाइनल हो जाता है तो ज़िप किया जाता है और मेरे बाहरी हार्डड्राइव पर डाल दिया जाता है।
  • सभी अंतिम उत्पादों को टेबल्स से फ़ाइलों और अन्य सभी प्रारूपों से पीडीएफ में परिवर्तित किया जाता है।
  • हर प्रोजेक्ट जो मैं करता हूं, हार्ड कॉपी बैकअप के लिए प्रिंट हो जाता है

तल - रेखा

  • प्रत्येक व्यक्ति कई और अलग-अलग सॉफ़्टवेयर और टूल का उपयोग करता है। बहुत से लोग जानते हैं कि मैं बेसकैंप , हार्वेस्ट , या किसी अन्य उपकरण का उपयोग करके संगठित हो गया हूं । इसके अलावा लोगों में काम करने की आदतें और ओसीडी की प्रवृत्ति अलग-अलग होती है। मैं काफी हद तक दूसरों की तुलना में थोड़ा सा संगठित होने के लिए काफी उत्सुक हूं। इसलिए उस प्रणाली को विकसित करें जो आपको गारंटी देते हुए कम से कम तनाव का कारण बनती है कि आप इसे लागू करने और अद्यतन करने में सुसंगत होंगे
  • बैकअप और सब कुछ दोहराने
  • अपने कच्चे / आधार डेटा पर सीधे काम न करें
  • आपकी परियोजनाओं के लिए हमेशा समय के साथ डेटा परिवर्तन के रूप में एक प्रतिकृति फ़ाइल का उपयोग होता है, और आप इसे ढूंढने के लिए नहीं चाहते हैं base_layer_2006.shp
  • प्रत्येक my_projects फ़ोल्डर में एक README पाठ फ़ाइल होनी चाहिए जिसे आप इसे संपादित करते समय कुछ बुनियादी जानकारी देने के लिए प्रोजेक्ट्स कर रहे हैं, जिसे आप जानते हैं कि आप बाद में भूल जाएंगे जब आप प्रोजेक्ट को सड़क पर 2 साल से नीचे जाते हैं

बहुत अच्छा। मुझे लगता है कि आप अपने सभी डेटासेट (कच्चे, विश्लेषित) के डुप्लिकेट बनाने के बारे में चिंतित नहीं हैं और यह जो स्थान लेता है।
dchaboya

2
जब मैं बचत करता हूं तो तनाव के स्तर की तुलना में डिस्क स्पेस की लागत अपेक्षाकृत कम होती है। इसके अलावा, मैं कुछ भी हटाने में विश्वास नहीं करता ।
डसौकी

बस उत्सुक क्यों github सीमा महत्वपूर्ण है। क्या आप सब कुछ के लिए गिट का उपयोग कर रहे हैं, गैर-कोड भी? मैं बहुत ही उद्देश्यों के लिए संस्करण नियंत्रण का उपयोग करना शुरू कर रहा हूं और अच्छी प्रथाओं को सीखने की कोशिश कर रहा हूं।
djq

@dassouki, जब आप git का उपयोग करते हैं तो आप mxd फ़ाइलों के नए संस्करण क्यों बनाते हैं? आप इन mxd फ़ाइलों को भी नियंत्रित कर सकते हैं।
पॉल हीमस्ट्रा

@PaulHiemstra ज्यादातर इसलिए क्योंकि मेरे लिए एक ही समय में कई संस्करण खोलना आसान है।
dassouki

8

आपने यह नहीं बताया कि आप केवल डेस्कटॉप जीआईएस सॉफ्टवेयर के साथ काम करते हैं, इसलिए मैं अपने कुछ अनुभव प्रोग्रामिंग उन्मुख मानसिकता से साझा करूंगा। पहले मुझे यह कहने से शुरू करें कि मैं @dassouki की बातों से सहमत हूं। मुझे लगता है कि सबसे महत्वपूर्ण बात यह नहीं है कि आप कैसे व्यवस्थित करते हैं, बल्कि यह कि आप ऐसा करते हैं।

लेकिन मेरे वर्कफ़्लो पर जाने के लिए। एक प्रोग्रामिंग भाषा (मेरे मामले में आर) का उपयोग करने के बारे में मुझे जो पसंद है वह यह है कि जिस स्क्रिप्ट को मैं अपने सभी चरणों में दस्तावेज लिखता हूं। यह आर्कजीआईएस का उपयोग करने के विपरीत है जहां मुझे लगता है कि यह देखना मुश्किल है कि एक उपयोगकर्ता कच्चे इनपुट डेटा से कैसे एक एमएक्सडी फ़ाइल में देख सकता है। बेशक, आप जीयूआई में आपके द्वारा उठाए गए सभी कदमों का एक लॉग रख सकते हैं, लेकिन मुझे लगता है कि आपके द्वारा लिए गए सटीक वर्कफ़्लो को बचाने के लिए एक प्रोग्रामिंग लैंग्वेज खुद को बहुत बेहतर बनाती है। यह विशेष रूप से महत्वपूर्ण हो सकता है जब एक ग्राहक / पर्यवेक्षक पूछता है कि आपने कुछ कैसे किया, या आपने वास्तव में एक निश्चित उत्पाद का उत्पादन करने के लिए क्या किया।

तो व्यवहार में मेरे पास मेरे ड्राइव पर कई फ़ोल्डर हैं जो महत्वपूर्ण हैं (ध्यान दें कि मैं एक वैज्ञानिक हूं):

  • प्रयोग, यहां मैं उन सभी प्रयोगों को संग्रहीत करता हूं जो मैं करता हूं, उदाहरण के लिए डेटा के एक निश्चित शरीर पर एक निश्चित विश्लेषण की कोशिश कर रहा हूं। प्रत्येक प्रयोग की अपनी एक निर्देशिका होती है। मैं परिणामी तालिकाएँ और यहाँ भी संग्रहीत करता हूँ। मेरी सभी आर स्क्रिप्ट इस निर्देशिका में हैं।
  • डेटासेट, मेरे सभी कच्चे डेटासेट से अलग होते हैं
  • उपकरण, मेरी एक अलग निर्देशिका है जहां मैं कोड को स्टोर करता हूं जिसे मैंने किसी अन्य परियोजना में पुन: उपयोग के लिए सामान्यीकृत किया है।
  • दस्तावेज, मेरा काम वैज्ञानिक पत्र लिखने के इर्द-गिर्द घूमता है। प्रत्येक पेपर के लिए मेरे पास एक अलग डायर है जहां मैं अपनी लेटेक्स फाइलें संग्रहीत करता हूं। ये फाइलें प्रयोगों निर्देशिका से चित्र और तालिकाओं को पढ़ती हैं। एक पेपर में कई चित्र शामिल हो सकते हैं।
  • सॉफ्टवेयर, एक अलग डीआईआर में मैं सॉफ्टवेयर स्टोर करता हूं, मुख्य रूप से आर पैकेज मैंने लिखा है और कुछ फोरट्रान कोड मैं मॉडल चलाने के लिए संकलित करता हूं।

कुछ मुख्य विचार जो मैं उपयोग करता हूं:

  • अलग (अपेक्षाकृत) स्थैतिक रूप से गतिशील सामान: उदाहरण के लिए सामान्यीकृत लिपियों को बचाने के लिए, जहां आप लघु परियोजनाओं को बचाते हैं, उससे कहीं अलग। या उन पर अपने विश्लेषण से अपने कच्चे डेटा को अलग करें।
  • संस्करण प्रबंधन सॉफ़्टवेयर का उपयोग करें जहां आपका हो सकता है। मुझे मर्क्यूरियल और गिट पसंद है।
  • अपने बैकअप को स्वचालित करें !!!! जब आप उन्हें मैन्युअल रूप से करते हैं, तो आप उनके बारे में कभी नहीं सोचते हैं और फिर आपका हार्डड्राइव क्रैश हो जाता है। लाइनक्स के तहत इस तरह का स्वचालन आसान है। मुझे यकीन नहीं है कि यह विंडोज / मैक के तहत कैसे है।

सामान्य तौर पर मुझे एक प्रोग्रामिंग भाषा का उपयोग करना पसंद है क्योंकि एक स्क्रिप्ट में आप कच्चे डेटा से परिणामी चित्रों / तालिकाओं में जा सकते हैं। आर काफी अच्छा उम्मीदवार है क्योंकि यह जीआईएस डेटा को आसानी से पढ़ और लिख सकता है और इसमें जीआईएस और सांख्यिकी दोनों में एक टन विश्लेषण है।


1
बैकअप को स्वचालित करने के बारे में +1। यही कारण है कि मैं अपने फ़ोल्डर्स को ड्रॉपबॉक्स में डाल देता हूं
dassouki

3
क्या ड्रॉपबॉक्स में आपके स्टोरेज की जरूरत है? और आप अपने कीमती काम को बाहरी फर्म के हाथों में रखने के बारे में कैसा महसूस करते हैं?
पॉल हैमस्ट्रा

3

मैं सिर्फ उपरोक्त उत्तर - 2 चीजों को जोड़ना चाहूंगा।

  1. मुझे आयात कच्चे डेटा निर्देशिका में फ़ोल्डर्स रखना पसंद है - हर बार एक डेटासेट प्राप्त करने के लिए फ़ोल्डर - यानी from_clientname-2011dec23। इस तरह से मैं वापस ट्रेस कर सकता हूं जब मुझे परियोजना में उपयोग किए गए प्रत्येक डेटा प्राप्त हुआ।

  2. मुझे चलते-फिरते प्रोजेक्ट डॉच फोल्डिंग भी पसंद है - फिर मैं यहाँ एक शब्द डॉक्टर या एक साधारण TXT फाइल बना सकता हूँ, जिसमें मैं लिख सकता हूँ कि मैंने प्रोजेक्ट पर क्या किया, तारीख, और जिसने यह अनुरोध किया। इस तरह से मैं वापस जा सकता हूं और अपने आप को कवर कर सकता हूं। यह छोटे अनुरोधों के लिए थकाऊ लग सकता है, लेकिन यह आपको अंत में बचा सकता है।


1
यह निश्चित रूप से परियोजना प्रबंधन 101 सामग्री है। हालाँकि समय का एक अच्छा हिस्सा आप एक परियोजना पर खर्च करते हैं जो सब कुछ व्यवस्थित और अच्छी तरह से प्रलेखित रखने के लिए समर्पित हो सकता है, अंत में यह आपको समय बचाने के साथ-साथ आपके जीवन प्रत्याशा को कम करने से भी बचा सकता है।
dchaboya
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.