के साथ चादरों में काम करने की कोशिश कर रहा है मेरे पास Google ड्राइव में "मेरे डैशबोर्ड" शीट में एक स्वचालित डैशबोर्ड है।बड़े डेटासेट
डैशबोर्ड का डेटा API के माध्यम से Google Analytics (GA) से आता है। अधिकांश डेटा मैं Google शीट्स GA का उपयोग करके खींचने में सक्षम हूं।
डैशबोर्ड में से किसी एक टेबल के लिए मेरा स्रोत डेटा बहुत बड़ा है - शीट के भीतर फिट होने के लिए बहुत बड़ा है।
तो, कुछ सीमित स्क्रिप्टिंग कौशल और इस मंच की सहायता और कुछ ऑनलाइन ट्यूटोरियल के साथ मैंने Google-Apps-Script में एक स्क्रिप्ट बनाई है जो GA api से पूछताछ करता है और मुझे आवश्यक सभी डेटा देता है और फिर इसे अंदर रखता है मुख्य डैशबोर्ड के समान निर्देशिका में एक सीएसवी फ़ाइल।
तो अब, डिस्क में मेरी "डैशबोर्ड" फ़ोल्डर में मैं 2 फ़ाइलें है: "मेरे डैशबोर्ड" - एक शीट और "मेरे डेटा" एक csv फ़ाइल। अगर मैं चाहता था, तो मैं एपीआई कॉल के परिणामों को एक शीट पर आउटपुट कर सकता था, मैंने अभी माना कि एक सीएसवी फ़ाइल अधिक कुशल होगी।
मैंने गेटशी में "मेरा डेटा" सीएसवी फ़ाइल खोला और इसे "संयुक्त" कहा। यहां डेटा का एक नमूना है:
ga:year ga:month ga:medium ga:source ga:campaign ga:goal1Completions
2013 5 (none) (direct) (not set) 116
2013 5 (not set) Adperio silvercontact?dp 0
2013 5 (not set) Conde*it _medium=email 0
2013 5 (not set) Hearst (not set) 0
2013 5 (not set) stackersocial stackersocial 0
2013 5 12111 9591 201fHN000xRGGszT3aEAA11uIsaT000. 0
2013 5 12111 9591 201fHN00BrT.K.AY0Hvf3q1uIqgl000. 0
2013 5 12111 9591 201fHN00CK619oBE3OsBZp1uIqGX000. 0
2013 5 12111 9591 201fHN00DFXJxnUu1jx25M1uIzkC000. 0
डेटा की ~ 65k पंक्तियां हैं।
अब, अपने डैशबोर्ड में मैं एक मेज है कि समूहों और "संयुक्त" शीट में डेटा एकत्र की जरूरत है (या मैं सीएसवी किसी भी तरह इस्तेमाल कर सकते हैं?)। फॉर्मूला में मेरा पसंदीदा जाना आम तौर पर उदा।
=sum(filter(ga:goal1Completions, ga:year="2015"...))
में खींच और इस डेटा से क्वेरी मुश्किल साबित हो रहा है और मैं कुछ सलाह के लिए उम्मीद कर रहा हूँ।
मैं बस के बाद से मैं 200k कोशिकाओं की चादर अधिकतम आकार से अधिक के बारे में सूचना प्राप्त मेरे डैशबोर्ड में डेटा आयात नहीं कर सकते। इसलिए मुझे प्रत्येक बार डेटा आयात करने और गणना चलाने के लिए फॉर्मूला पर भरोसा करना चाहिए।
=SUM(filter(IMPORTRANGE("https://docs.google.com/spreadsheets/d/xxxxxxxx/edit?usp=sharing","combined!F2:F"),
IMPORTRANGE("https://docs.google.com/spreadsheets/d/xxxxxxxx/edit?usp=sharing","combined!A2:A")=year(G$17),
IMPORTRANGE("https://docs.google.com/spreadsheets/d/xxxxxxxx/edit?usp=sharing","combined!B2:B")=month(G$17),
IMPORTRANGE("https://docs.google.com/spreadsheets/d/xxxxxxxx/edit?usp=sharing","combined!C2:C")="(direct)",
IMPORTRANGE("https://docs.google.com/spreadsheets/d/xxxxxxxx/edit?usp=sharing","combined!D2:D")="(none)"))
तो एक सेल में समारोह में प्रत्येक पैरामीटर के लिए मैं डेटा के स्तंभ को आयात और यह सबसेट चाहिए: यहाँ अभी मैं क्या उपयोग कर रहा हूँ का एक उदाहरण है।
मुझे यकीन है कि एक बेहतर तरीका होना चाहिए। अभी यह वास्तव में काम करता है लेकिन यह असाधारण रूप से धीमा है।
रास्ते के बारे में मैं सोच रहा था: अतः कैश सेवा here का उपयोग करके उल्लिखित पर
- किसी ने। लेकिन यह कैसे काम करेगा या मैं इसे अपने आयात() कार्यों के साथ कैसे एकीकृत करूं?
- क्या सीएसवी फ़ाइल रखने का कोई फायदा है या क्या मुझे परिणामों को आउटसेट से जीएसशीट में आउटपुट करना चाहिए?
- स्क्रिप्ट में मैं डेटा प्राप्त करने के लिए चलाता हूं, इसे एक सीएसवी फ़ाइल में आउटपुट करने से पहले (या एक ग्रिशी अगर यह बेहतर है?) मेरे पास फ़ाइल में रूपांतरण से पहले एक सरणी के रूप में डेटा है। क्या कोई ऐसी कल्पना है जो मैं यहां कर सकता हूं, जैसे कि इस सरणी को सीधे शीट के भीतर से पूछताछ करना? ध्यान में रखते हुए मेरे पटकथा कौशल बहुत बुनियादी हैं।
- संभवतः मैं प्रत्येक सेल के लिए जीए एपीआई को व्यक्तिगत रूप से कॉल करने के लिए एक समारोह बना सकता हूं, जिसमें प्रत्येक व्यक्ति में परिणाम लौटाया जा सकता है (इसलिए ऊपर दिए गए उदाहरण में, वर्ष = वर्ष के लिए जीए एपीआई को कॉल करने के लिए एक फ़ंक्शन (जी 17) & महीने = महीना (जी 17) & मध्यम = [some_other_cell_reference)। तो इस विकल्प के परिणामस्वरूप अधिक एपीआई कॉल होंगे लेकिन परिणामस्वरूप छोटे डेटा पर काम करना होगा। सुनिश्चित नहीं है कि यह एक अच्छा विचार है या पूरी तरह से गलत दिशा जा रहा है।
मुझे आशा है कि मैंने अपनी समस्या को पर्याप्त रूप से सूचित किया है। मुझे डैशबोर्ड में बाहरी डेटा को पूछताछ करने का एक और अधिक प्रभावी तरीका खोजने की आवश्यकता है।
क्या आपने BigQuery में देखा है? https://cloud.google.com/bigquery/what-is-bigquery आप जीएसएचईटी क्या कर सकते हैं की सीमा को दबा सकते हैं। –
बहुत व्यापक। "या तो बहुत सारे संभावित उत्तर हैं, या इस प्रारूप के लिए अच्छे उत्तर बहुत लंबे होंगे"। कृपया "कुछ ऐसे अनुच्छेदों को अलग करें जिन्हें कुछ अनुच्छेदों में उत्तर दिया जा सकता है"। –
तो आपने फ़्यूज़नटेबल्स के खिलाफ निर्णय लिया है? http://stackoverflow.com/questions/30695675/union-data-in-multiple-tabs/30725158?noredirect=1#comment49536435_30725158 यह जानने में रुचि होगी कि आपका दिमाग किसने बनाया है? :) – Tim