कनेक्टेड शीट

कनेक्टेड शीट की मदद से, Google Sheets में सीधे तौर पर पेटाबाइट डेटा का विश्लेषण किया जा सकता है. अपनी स्प्रेडशीट को BigQuery डेटा वेयरहाउस या Looker से कनेक्ट किया जा सकता है. इसके बाद, Sheets के जाने-पहचाने टूल, जैसे कि पिवट टेबल, चार्ट, और फ़ॉर्मूला का इस्तेमाल करके डेटा का विश्लेषण किया जा सकता है.

BigQuery डेटा सोर्स मैनेज करना

इस सेक्शन में, कनेक्टेड शीट का इस्तेमाल करने का तरीका दिखाने के लिए, BigQuery के Shakespeare सार्वजनिक डेटासेट का इस्तेमाल किया गया है. डेटासेट में यह जानकारी शामिल होती है:

फ़ील्ड टाइप ब्यौरा
शब्द STRING कॉर्पस से निकाला गया एक ऐसा शब्द जो सिर्फ़ एक बार इस्तेमाल हुआ हो. इसमें स्पेस को डेलिमिटर के तौर पर इस्तेमाल किया जाता है.
word_count INTEGER इस कॉर्पस में यह शब्द कितनी बार दिखता है.
कॉर्पस STRING वह काम जिससे यह शब्द निकाला गया है.
corpus_date INTEGER वह साल जिसमें इस कॉर्पस को पब्लिश किया गया था.

अगर आपका ऐप्लिकेशन, BigQuery Connected Sheets के किसी डेटा का अनुरोध करता है, तो उसे OAuth 2.0 टोकन देना होगा. इससे bigquery.readonly स्कोप मिलता है. इसके अलावा, Google Sheets API के सामान्य अनुरोध के लिए ज़रूरी अन्य स्कोप भी देने होंगे. ज़्यादा जानकारी के लिए, Google Sheets API के स्कोप चुनना लेख पढ़ें.

डेटा सोर्स, डेटा की बाहरी जगह के बारे में बताता है. इसके बाद, डेटा सोर्स को स्प्रेडशीट से कनेक्ट किया जाता है.

BigQuery डेटा सोर्स जोड़ना

डेटा सोर्स जोड़ने के लिए, spreadsheets.batchUpdate तरीके का इस्तेमाल करके, AddDataSourceRequest उपलब्ध कराएं. अनुरोध के मुख्य हिस्से में, DataSource ऑब्जेक्ट टाइप का dataSource फ़ील्ड होना चाहिए.

"addDataSource":{
   "dataSource":{
      "spec":{
         "bigQuery":{
            "projectId":"PROJECT_ID",
            "tableSpec":{
               "tableProjectId":"bigquery-public-data",
               "datasetId":"samples",
               "tableId":"shakespeare"
            }
         }
      }
   }
}

PROJECT_ID की जगह, मान्य Google Cloud प्रोजेक्ट आईडी डालें.

डेटा सोर्स बनाने के बाद, उससे जुड़ी एक DATA_SOURCE शीट बनाई जाती है. इससे 500 लाइनों तक की झलक देखी जा सकती है. झलक तुरंत उपलब्ध नहीं होती. BigQuery का डेटा इंपोर्ट करने के लिए, एसिंक्रोनस तरीके से प्रोसेस शुरू की जाती है.

AddDataSourceResponse में ये फ़ील्ड शामिल होते हैं:

  • dataSource: बनाया गया DataSource ऑब्जेक्ट. dataSourceId एक स्प्रेडशीट के स्कोप वाला यूनीक आईडी है. डेटा सोर्स से हर DataSource ऑब्जेक्ट बनाने के लिए, इस फ़ील्ड में वैल्यू भरी जाती है और इसे रेफ़रंस के तौर पर इस्तेमाल किया जाता है.

  • dataExecutionStatus: यह BigQuery से डेटा इंपोर्ट करने वाले एक्ज़ीक्यूशन की स्थिति दिखाता है. यह डेटा, झलक वाली शीट में इंपोर्ट किया जाता है. ज़्यादा जानकारी के लिए, डेटा प्रोसेसिंग की स्थिति सेक्शन देखें.

BigQuery डेटा सोर्स को अपडेट करना या मिटाना

spreadsheets.batchUpdate तरीके का इस्तेमाल करें और UpdateDataSourceRequest या DeleteDataSourceRequest अनुरोध सबमिट करें.

BigQuery डेटा सोर्स ऑब्जेक्ट मैनेज करना

स्प्रेडशीट में डेटा सोर्स जोड़ने के बाद, उससे डेटा सोर्स ऑब्जेक्ट बनाया जा सकता है. डेटा सोर्स ऑब्जेक्ट, Sheets का एक सामान्य टूल होता है. जैसे, पिवट टेबल, चार्ट, और फ़ॉर्मूला. इसे कनेक्टेड शीट के साथ इंटिग्रेट किया जाता है, ताकि डेटा का विश्लेषण किया जा सके.

ऑब्जेक्ट चार तरह के होते हैं:

  • DataSource टेबल
  • DataSource pivotTable
  • DataSource चार्ट
  • DataSource फ़ॉर्मूला

BigQuery डेटा सोर्स टेबल जोड़ना

Sheets के एडिटर में इसे "एक्सट्रैक्ट" कहा जाता है. टेबल ऑब्जेक्ट, डेटा सोर्स से डेटा का स्टैटिक डंप, Sheets में इंपोर्ट करता है. यह पिवट टेबल की तरह होती है. इसमें टेबल को सबसे ऊपर बाईं ओर मौजूद सेल में सेट किया जाता है.

यहां दिए गए कोड के सैंपल में, spreadsheets.batchUpdate तरीके और UpdateCellsRequest का इस्तेमाल करके, डेटा सोर्स टेबल बनाने का तरीका बताया गया है. इस टेबल में दो कॉलम (word और word_count) और 1,000 लाइनें हो सकती हैं.

"updateCells":{
   "rows":{
      "values":[
         {
            "dataSourceTable":{
               "dataSourceId":"DATA_SOURCE_ID",
               "columns":[
                  {
                     "name":"word"
                  },
                  {
                     "name":"word_count"
                  }
               ],
               "rowLimit":{
                  "value":1000
               },
               "columnSelectionType":"SELECTED"
            }
         }
      ]
   },
   "fields":"dataSourceTable"
}

DATA_SOURCE_ID को स्प्रेडशीट के स्कोप वाले यूनीक आईडी से बदलें. यह आईडी, डेटा सोर्स की पहचान करता है.

डेटा सोर्स टेबल बनाने के बाद, डेटा तुरंत उपलब्ध नहीं होता. Sheets एडिटर में, इसे झलक के तौर पर दिखाया जाता है. BigQuery डेटा फ़ेच करने के लिए, आपको डेटा सोर्स टेबल को रीफ़्रेश करना होगा. एक ही batchUpdate में, RefreshDataSourceRequest को सेट किया जा सकता है. ध्यान दें कि डेटा सोर्स के सभी ऑब्जेक्ट एक जैसे काम करते हैं. ज़्यादा जानकारी के लिए, डेटा सोर्स ऑब्जेक्ट रीफ़्रेश करना लेख पढ़ें.

रीफ़्रेश पूरा होने और BigQuery से डेटा फ़ेच होने के बाद, डेटा सोर्स टेबल में डेटा इस तरह दिखता है:

डेटा सोर्स टेबल में, शेक्सपियर के सार्वजनिक डेटासेट का डेटा दिखाया गया है.

BigQuery डेटा सोर्स की पिवट टेबल जोड़ना

सामान्य पिवट टेबल के उलट, डेटा सोर्स पिवट टेबल को डेटा सोर्स से मदद मिलती है. साथ ही, यह कॉलम के नाम के हिसाब से डेटा को रेफ़रंस करती है. यहां दिए गए कोड के सैंपल में, spreadsheets.batchUpdate तरीके और UpdateCellsRequest का इस्तेमाल करके, एक ऐसी पिवट टेबल बनाने का तरीका बताया गया है जिसमें कॉर्पस के हिसाब से शब्दों की कुल संख्या दिखाई गई है.

"updateCells":{
   "rows":{
      "values":[
         {
            "pivotTable":{
               "dataSourceId":"DATA_SOURCE_ID",
               "rows":{
                  "dataSourceColumnReference":{
                     "name":"corpus"
                  },
                  "sortOrder":"ASCENDING"
               },
               "values":{
                  "summarizeFunction":"SUM",
                  "dataSourceColumnReference":{
                     "name":"word_count"
                  }
               }
            }
         }
      ]
   },
   "fields":"pivotTable"
    }

DATA_SOURCE_ID को स्प्रेडशीट के स्कोप वाले यूनीक आईडी से बदलें. यह आईडी, डेटा सोर्स की पहचान करता है.

BigQuery से डेटा फ़ेच करने के बाद, डेटा सोर्स की पिवट टेबल में डेटा इस तरह दिखता है:

डेटा सोर्स की पिवट टेबल में, शेक्सपियर के सार्वजनिक डेटासेट का डेटा दिखाया गया है.

BigQuery डेटा सोर्स चार्ट जोड़ना

यहां दिए गए कोड के उदाहरण में, spreadsheets.batchUpdate तरीके और AddChartRequest का इस्तेमाल करके, डेटा सोर्स चार्ट बनाने का तरीका बताया गया है. इसमें COLUMN का chartType दिखाया गया है. साथ ही, कॉर्पस के हिसाब से शब्दों की कुल संख्या दिखाई गई है.

"addChart":{
   "chart":{
      "spec":{
         "title":"Corpus by word count",
         "basicChart":{
            "chartType":"COLUMN",
            "domains":[
               {
                  "domain":{
                     "columnReference":{
                        "name":"corpus"
                     }
                  }
               }
            ],
            "series":[
               {
                  "series":{
                     "columnReference":{
                        "name":"word_count"
                     },
                     "aggregateType":"SUM"
                  }
               }
            ]
         }
      },
      "dataSourceChartProperties":{
         "dataSourceId":"DATA_SOURCE_ID"
      }
   }
}

DATA_SOURCE_ID को स्प्रेडशीट के स्कोप वाले यूनीक आईडी से बदलें. यह आईडी, डेटा सोर्स की पहचान करता है.

BigQuery से डेटा फ़ेच करने के बाद, डेटा सोर्स चार्ट इस तरह दिखता है:

डेटा सोर्स चार्ट में, शेक्सपियर के सार्वजनिक डेटासेट का डेटा दिखाया गया है.

BigQuery डेटा सोर्स फ़ॉर्मूला जोड़ना

यहां दिए गए कोड के उदाहरण में, शब्दों की औसत संख्या का हिसाब लगाने के लिए, डेटा सोर्स फ़ॉर्मूला बनाने के लिए spreadsheets.batchUpdate तरीके और UpdateCellsRequest का इस्तेमाल करने का तरीका बताया गया है.

"updateCells":{
   "rows":[
      {
         "values":[
            {
               "userEnteredValue":{
                  "formulaValue":"=AVERAGE(shakespeare!word_count)"
               }
            }
         ]
      }
   ],
   "fields":"userEnteredValue"
}

BigQuery से डेटा फ़ेच करने के बाद, डेटा सोर्स फ़ॉर्मूला इस तरह दिखता है:

डेटा सोर्स का फ़ॉर्मूला, जिसमें शेक्सपियर के सार्वजनिक डेटासेट का डेटा दिखाया गया है.

BigQuery डेटा सोर्स ऑब्जेक्ट को रीफ़्रेश करना

डेटा सोर्स ऑब्जेक्ट को रीफ़्रेश करके, BigQuery से नया डेटा फ़ेच किया जा सकता है. यह डेटा, मौजूदा डेटा सोर्स की खास बातों और ऑब्जेक्ट कॉन्फ़िगरेशन पर आधारित होता है. RefreshDataSourceRequest को कॉल करने के लिए, spreadsheets.batchUpdate तरीके का इस्तेमाल किया जा सकता है. इसके बाद, DataSourceObjectReferences ऑब्जेक्ट का इस्तेमाल करके, रीफ़्रेश करने के लिए एक या उससे ज़्यादा ऑब्जेक्ट रेफ़रंस तय करें.

ध्यान दें कि एक ही batchUpdate अनुरोध में, डेटा सोर्स ऑब्जेक्ट बनाए और रीफ़्रेश किए जा सकते हैं.

Looker डेटा सोर्स मैनेज करना

इस गाइड में, Looker डेटा सोर्स को जोड़ने, अपडेट करने या मिटाने का तरीका बताया गया है. साथ ही, इस पर पिवट टेबल बनाने और उसे रीफ़्रेश करने का तरीका भी बताया गया है.

Looker Connected Sheets के किसी भी डेटा का अनुरोध करने वाले आपके ऐप्लिकेशन के लिए, Looker के साथ लिंक किए गए आपके मौजूदा Google खाते का फिर से इस्तेमाल किया जाएगा.

Looker डेटा सोर्स जोड़ना

डेटा सोर्स जोड़ने के लिए, spreadsheets.batchUpdate तरीके का इस्तेमाल करके, AddDataSourceRequest उपलब्ध कराएं. अनुरोध के मुख्य हिस्से में, DataSource ऑब्जेक्ट टाइप का dataSource फ़ील्ड होना चाहिए.

"addDataSource":{
   "dataSource":{
      "spec":{
         "looker":{
            "instance_uri":"INSTANCE_URI",
            "model":"MODEL",
            "explore":"EXPLORE"
         }
      }
   }
}

INSTANCE_URI, MODEL, और EXPLORE की जगह, Looker इंस्टेंस का मान्य यूआरआई, मॉडल का नाम, और एक्सप्लोर का नाम डालें.

डेटा सोर्स बनाने के बाद, उससे जुड़ी DATA_SOURCE शीट बनाई जाती है. इससे, चुने गए एक्सप्लोर के स्ट्रक्चर की झलक मिलती है. इसमें व्यू, डाइमेंशन, मेज़र, और फ़ील्ड के ब्यौरे शामिल होते हैं.

AddDataSourceResponse में ये फ़ील्ड शामिल होते हैं:

  • dataSource: बनाया गया DataSource ऑब्जेक्ट. dataSourceId, स्प्रेडशीट के स्कोप वाला यूनीक आईडी है. डेटा सोर्स से हर DataSource ऑब्जेक्ट बनाने के लिए, इस फ़ील्ड में वैल्यू भरी जाती है और इसे रेफ़रंस के तौर पर इस्तेमाल किया जाता है.

  • dataExecutionStatus: यह BigQuery से डेटा इंपोर्ट करने वाले एक्ज़ीक्यूशन की स्थिति दिखाता है. यह डेटा, झलक वाली शीट में इंपोर्ट किया जाता है. ज़्यादा जानकारी के लिए, डेटा प्रोसेसिंग की स्थिति सेक्शन देखें.

Looker डेटा सोर्स को अपडेट करना या मिटाना

spreadsheets.batchUpdate तरीके का इस्तेमाल करें और UpdateDataSourceRequest या DeleteDataSourceRequest अनुरोध सबमिट करें.

Looker डेटा सोर्स ऑब्जेक्ट मैनेज करना

स्प्रेडशीट में डेटा सोर्स जोड़ने के बाद, उससे डेटा सोर्स ऑब्जेक्ट बनाया जा सकता है. Looker के डेटा सोर्स के लिए, सिर्फ़ DataSource pivotTable ऑब्जेक्ट बनाया जा सकता है.

Looker के डेटा सोर्स से DataSource फ़ॉर्मूले, एक्सट्रैक्ट, और चार्ट नहीं बनाए जा सकते.

Looker डेटा सोर्स ऑब्जेक्ट को रीफ़्रेश करना

डेटा सोर्स ऑब्जेक्ट को रीफ़्रेश करके, Looker से नया डेटा फ़ेच किया जा सकता है. यह डेटा, मौजूदा डेटा सोर्स की खास बातों और ऑब्जेक्ट कॉन्फ़िगरेशन के आधार पर फ़ेच किया जाता है. RefreshDataSourceRequest को कॉल करने के लिए, spreadsheets.batchUpdate तरीके का इस्तेमाल किया जा सकता है. इसके बाद, DataSourceObjectReferences ऑब्जेक्ट का इस्तेमाल करके, रीफ़्रेश करने के लिए एक या उससे ज़्यादा ऑब्जेक्ट रेफ़रंस तय करें.

ध्यान दें कि एक ही batchUpdate अनुरोध में, डेटा सोर्स ऑब्जेक्ट बनाए और रीफ़्रेश किए जा सकते हैं.

डेटा के इस्तेमाल की स्थिति

डेटा सोर्स बनाने या डेटा सोर्स ऑब्जेक्ट रीफ़्रेश करने पर, बैकग्राउंड में एक प्रोसेस शुरू होती है. इससे BigQuery या Looker से डेटा फ़ेच किया जाता है और DataExecutionStatus वाला जवाब मिलता है. अगर रूटीन लागू होने की प्रोसेस सही तरीके से शुरू हो जाती है, तो DataExecutionState आम तौर पर RUNNING स्थिति में होता है.

यह प्रोसेस एसिंक्रोनस है. इसलिए, आपके ऐप्लिकेशन को पोलिंग मॉडल लागू करना चाहिए, ताकि डेटा सोर्स ऑब्जेक्ट की स्थिति को समय-समय पर वापस पाया जा सके. जब तक स्टेटस SUCCEEDED या FAILED स्थिति में नहीं आ जाता, तब तक spreadsheets.get तरीके का इस्तेमाल करें. ज़्यादातर मामलों में, क्वेरी तुरंत पूरी हो जाती है. हालांकि, यह आपके डेटा सोर्स की जटिलता पर निर्भर करता है. आम तौर पर, इसे पूरा होने में 10 मिनट से ज़्यादा समय नहीं लगता.