2012-06-26 11 views
5

मैं एक परियोजना के लिए Google App Engine का उपयोग करने में देख रहा हूं और यह सुनिश्चित करना चाहता हूं कि मेरे पास अपने सभी डेटा को निर्यात करने का कोई तरीका है यदि मैंने कभी भी GAE (या GAE बंद करने) का निर्णय लेने का निर्णय लिया है।मैं Google ऐप इंजन उच्च प्रतिकृति डेटास्टोर से डेटा कैसे निर्यात कर सकता हूं?

सब कुछ मैं GAE अंकों से डेटा निर्यात करने के बारे में https://developers.google.com/appengine/docs/python/tools/uploadingdata पर खोज करता हूं। हालांकि, उस पृष्ठ में यह नोट शामिल है:

नोट: यह दस्तावेज़ उन ऐप्स पर लागू होता है जो मास्टर/गुलाम डेटास्टोर का उपयोग करते हैं। यदि आपका ऐप उच्च प्रतिकृति डेटास्टोर का उपयोग करता है, तो यह ऐप से डेटा कॉपी करने के लिए संभव है, लेकिन Google वर्तमान में इस उपयोग के मामले का समर्थन नहीं करता है। यदि आप उच्च प्रतिकृति डेटास्टोर से प्रतिलिपि बनाने का प्रयास करते हैं, तो आपको Admin कंसोल में एक उच्च_replication_warning त्रुटि दिखाई देगी, और डाउनलोड किए गए डेटा में हाल ही में इकाइयों को सहेजा नहीं जा सकता है।

समस्या यह है कि हाल ही में मास्टर/गुलाम डेटास्टोर को हाल ही में उच्च प्रतिकृति डेटास्टोर के पक्ष में बहिष्कृत किया गया था। मैं समझता हूं कि मास्टर/गुलाम डेटास्टोर अभी भी थोड़ी देर के लिए समर्थित है, लेकिन मुझे कुछ ऐसा उपयोग करने में सहज महसूस नहीं होता है जिसे आधिकारिक तौर पर बहिष्कृत किया गया है और इसके रास्ते पर है। इसलिए जो मुझे उच्च प्रतिकृति डेटास्टोर के साथ छोड़ देता है और डेटा निर्यात करने का एकमात्र तरीका यह है कि ऊपर की विधि आधिकारिक रूप से समर्थित नहीं है (और इस प्रकार मुझे गारंटी नहीं है कि मैं अपना डेटा प्राप्त कर सकता हूं)।

क्या उच्च प्रतिकृति डेटास्टोर से डेटा निर्यात करने का कोई अन्य (आधिकारिक रूप से समर्थित) तरीका है? मुझे Google App Engine का उपयोग करके सहज महसूस नहीं होता है, इसका मतलब है कि मेरा डेटा हमेशा के लिए लॉक किया जा सकता है।

उत्तर

0

आपको remote_api नामक एक अंतर्निहित कॉन्फ़िगर करने की आवश्यकता है। This article में आपके पास और भविष्य में अपने सभी डेटा डाउनलोड करने में सक्षम होने के लिए आवश्यक सभी जानकारी और मार्गदर्शिका है।

+2

समस्या यह है कि जैसा कि मैंने उल्लेख किया है, यह विधि आधिकारिक तौर पर उच्च प्रतिकृति डेटास्टोर के लिए समर्थित नहीं है, जिसका मैं उपयोग करूँगा। –

+2

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

2

जीएई से डेटा डाउनलोड करने के लिए मुझे काफी लंबा समय लगा क्योंकि दस्तावेज उतना स्पष्ट नहीं है जितना होना चाहिए।

यदि आप यूनिक्स सर्वर से डेटा निकाल रहे हैं, तो आप शायद नीचे लिपि का पुन: उपयोग कर सकते हैं।

इसके अलावा, यदि आप "config_file" पैरामीटर प्रदान नहीं करते हैं, तो यह इस प्रकार के लिए आपके सभी डेटा निकाल देगा लेकिन एक स्वामित्व प्रारूप में जिसका उपयोग केवल बाद में डेटा को बहाल करने के लिए किया जा सकता है।

#!/bin/sh 
#------------------------------------------------------------------ 
#-- Param 1 : Namespace 
#-- Param 2 : Kind (table id) 
#-- Param 3 : Directory in which the csv file should be stored 
#-- Param 4 : output file name 
#------------------------------------------------------------------ 
appcfg.py download_data --secure --email=$BACKUP_USERID --  config_file=configClientExtract.yml --filename=$3/$4.csv --kind=$2 --url=$BACKUP_WEBSITE/remote_api --namespace=$1 --passin <<-EOF $BACKUP_PASSWORD EOF 
+0

configClientExtract.yml (--config_file) और --url क्या है? हां सहायता पृष्ठ वर्णन नहीं करता है कि कॉन्फ़िगरेशन फ़ाइल या यूआरएल एंडपॉइंट क्या स्वीकार करता है –

1

वर्तमान में ऐप इंजन डेटास्टोर एक और विकल्प का भी समर्थन करता है। डेटा बैकअप प्रावधान का उपयोग चयनित डेटा को ब्लॉब स्टोर या Google क्लाउड स्टोरेज में कॉपी करने के लिए किया जा सकता है। यह फ़ंक्शन ऐप इंजन कंसोल में डेटास्टोर व्यवस्थापक क्षेत्र के अंतर्गत उपलब्ध है। यदि आवश्यक हो, तो बैक अप डेटा को ब्लॉब व्यूअर या क्लाउड स्टोरेज से डाउनलोड किया जा सकता है। उच्च प्रतिकृति डेटास्टोर के लिए बैकअप करने के लिए, यह अनुशंसा की जाती है कि बैकअप लेने से पहले डेटास्टोर लिखने को अक्षम कर दिया जाए।

संबंधित मुद्दे