সংযুক্ত পত্রক

কানেক্টেড শীটস আপনাকে সরাসরি গুগল শীটসের মধ্যেই পেটাবাইট পরিমাণ ডেটা বিশ্লেষণ করার সুযোগ দেয়। আপনি আপনার স্প্রেডশীটগুলোকে বিগকোয়েরি ডেটা ওয়্যারহাউস বা লুকারের সাথে সংযুক্ত করতে পারেন এবং পিভট টেবিল, চার্ট ও ফর্মুলার মতো পরিচিত শীটস টুল ব্যবহার করে বিশ্লেষণ করতে পারেন।

BigQuery ডেটা সোর্স পরিচালনা করুন

এই বিভাগে কানেক্টেড শীটস কীভাবে ব্যবহার করতে হয় তা দেখানোর জন্য BigQuery Shakespeare পাবলিক ডেটাসেটটি ব্যবহার করা হয়েছে। ডেটাসেটটিতে নিম্নলিখিত তথ্য রয়েছে:

মাঠ প্রকার বর্ণনা
শব্দ STRING একটি কর্পাস থেকে নিষ্কাশিত একটিমাত্র অনন্য শব্দ (যেখানে স্পেস হলো বিভাজক)।
শব্দ_সংখ্যা INTEGER এই কর্পাসে শব্দটি যতবার এসেছে তার সংখ্যা।
কর্পাস STRING যে রচনা থেকে এই শব্দটি নেওয়া হয়েছে।
কর্পাস_তারিখ INTEGER যে বছরে এই সংকলনটি প্রকাশিত হয়েছিল।

আপনার অ্যাপ্লিকেশন যদি কোনো BigQuery Connected Sheets ডেটার জন্য অনুরোধ করে, তাহলে একটি সাধারণ Google Sheets API অনুরোধের জন্য প্রয়োজনীয় অন্যান্য স্কোপগুলোর পাশাপাশি, এটিকে অবশ্যই একটি OAuth 2.0 টোকেন প্রদান করতে হবে যা bigquery.readonly স্কোপ মঞ্জুর করে। আরও তথ্যের জন্য, “Choose Google Sheets API scopes ” দেখুন।

ডেটা সোর্স এমন একটি বাহ্যিক অবস্থান নির্দিষ্ট করে যেখানে ডেটা পাওয়া যায়। এরপর ডেটা সোর্সটিকে স্প্রেডশিটের সাথে সংযুক্ত করা হয়।

একটি BigQuery ডেটা সোর্স যোগ করুন

ডেটা সোর্স যোগ করতে, spreadsheets.batchUpdate মেথড ব্যবহার করে একটি AddDataSourceRequest প্রদান করুন। রিকোয়েস্ট বডিতে DataSource অবজেক্ট টাইপের একটি dataSource ফিল্ড নির্দিষ্ট করতে হবে।

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

PROJECT_ID জায়গায় একটি বৈধ গুগল ক্লাউড প্রজেক্ট আইডি বসান।

একটি ডেটা সোর্স তৈরি করার পরে, ৫০০টি পর্যন্ত সারির প্রিভিউ দেখানোর জন্য একটি সংশ্লিষ্ট DATA_SOURCE শীট তৈরি করা হয়। এই প্রিভিউটি তাৎক্ষণিকভাবে পাওয়া যায় না। BigQuery ডেটা ইম্পোর্ট করার জন্য অ্যাসিঙ্ক্রোনাসভাবে একটি এক্সিকিউশন ট্রিগার করা হয়।

AddDataSourceResponse এ নিম্নলিখিত ফিল্ডগুলো রয়েছে:

  • dataSource : তৈরি করা DataSource অবজেক্ট। dataSourceId হলো একটি স্প্রেডশীট-স্কোপড অনন্য আইডি। ডেটা সোর্স থেকে প্রতিটি DataSource অবজেক্ট তৈরি করার জন্য এটি পূরণ করা হয় এবং রেফারেন্স হিসেবে ব্যবহৃত হয়।

  • dataExecutionStatus : যে এক্সিকিউশনটি প্রিভিউ শীটে BigQuery ডেটা ইম্পোর্ট করে, তার স্ট্যাটাস। আরও তথ্যের জন্য, ডেটা এক্সিকিউশন স্ট্যাটাস সেকশনটি দেখুন।

BigQuery ডেটা সোর্স আপডেট বা ডিলিট করুন

spreadsheets.batchUpdate মেথডটি ব্যবহার করুন এবং সেই অনুযায়ী একটি UpdateDataSourceRequest বা DeleteDataSourceRequest রিকোয়েস্ট সরবরাহ করুন।

BigQuery ডেটা সোর্স অবজেক্টগুলি পরিচালনা করুন

স্প্রেডশিটে একবার কোনো ডেটা সোর্স যোগ করা হলে, তা থেকে একটি ডেটা সোর্স অবজেক্ট তৈরি করা যায়। ডেটা সোর্স অবজেক্ট হলো শিটস-এর একটি সাধারণ টুল, যেমন পিভট টেবিল, চার্ট এবং ফর্মুলা, যা আপনার ডেটা বিশ্লেষণকে শক্তিশালী করার জন্য কানেক্টেড শিটস-এর সাথে সমন্বিত থাকে।

চার ধরনের বস্তু আছে:

  • DataSource টেবিল
  • DataSource পিভট টেবিল
  • DataSource চার্ট
  • DataSource সূত্র

একটি BigQuery ডেটা সোর্স টেবিল যোগ করুন

শীটস এডিটরে 'এক্সট্র্যাক্ট' নামে পরিচিত টেবিল অবজেক্টটি ডেটা সোর্স থেকে ডেটার একটি স্ট্যাটিক ডাম্প শীটসে ইম্পোর্ট করে। পিভট টেবিলের মতোই, এই টেবিলটি উপরের বাম দিকের সেলে নির্দিষ্ট ও অ্যাঙ্কর করা থাকে।

নিম্নলিখিত কোড নমুনাটি দেখায় কিভাবে spreadsheets.batchUpdate পদ্ধতি এবং একটি UpdateCellsRequest ব্যবহার করে দুটি কলাম ( word এবং word_count ) সহ ১০০০টি সারি পর্যন্ত একটি ডেটা সোর্স টেবিল তৈরি করা যায়।

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

DATA_SOURCE_ID একটি স্প্রেডশীট-ভিত্তিক অনন্য আইডি দিয়ে প্রতিস্থাপন করুন যা ডেটা উৎসকে শনাক্ত করে।

একটি ডেটা সোর্স টেবিল তৈরি করার পর, ডেটা তাৎক্ষণিকভাবে পাওয়া যায় না। শীটস এডিটরে এটি একটি প্রিভিউ হিসেবে দেখানো হয়। BigQuery ডেটা আনার জন্য আপনাকে ডেটা সোর্স টেবিলটি রিফ্রেশ করতে হবে। আপনি একই batchUpdate মধ্যে একটি RefreshDataSourceRequest নির্দিষ্ট করতে পারেন। মনে রাখবেন যে, সমস্ত ডেটা সোর্স অবজেক্ট একইভাবে কাজ করে। আরও তথ্যের জন্য, “Refresh a data source object” দেখুন।

রিফ্রেশ সম্পন্ন হওয়ার পর এবং 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 Connected Sheets-এর কোনো ডেটার জন্য অনুরোধ করবে, তখন এটি Looker-এর সাথে আপনার বিদ্যমান Google অ্যাকাউন্ট লিঙ্কটি পুনরায় ব্যবহার করবে।

একটি লুকার ডেটা উৎস যোগ করুন

ডেটা সোর্স যোগ করতে, spreadsheets.batchUpdate মেথড ব্যবহার করে একটি AddDataSourceRequest প্রদান করুন। রিকোয়েস্ট বডিতে DataSource অবজেক্ট টাইপের একটি dataSource ফিল্ড নির্দিষ্ট করতে হবে।

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

INSTANCE_URI , MODEL এবং EXPLORE যথাক্রমে একটি বৈধ Looker ইনস্ট্যান্স URI, মডেলের নাম এবং এক্সপ্লোরের নাম দিয়ে প্রতিস্থাপন করুন।

একটি ডেটা সোর্স তৈরি করার পরে, একটি সংশ্লিষ্ট DATA_SOURCE শীট তৈরি হয়, যা নির্বাচিত Explore-এর কাঠামোর একটি প্রিভিউ প্রদান করে, যার মধ্যে ভিউ, ডাইমেনশন, মেজার এবং যেকোনো ফিল্ডের বিবরণ অন্তর্ভুক্ত থাকে।

AddDataSourceResponse এ নিম্নলিখিত ফিল্ডগুলো রয়েছে:

  • dataSource : তৈরি করা DataSource অবজেক্ট। dataSourceId হলো একটি স্প্রেডশীট-স্কোপড অনন্য আইডি। ডেটা সোর্স থেকে প্রতিটি DataSource অবজেক্ট তৈরি করার জন্য এটি পূরণ করা হয় এবং রেফারেন্স হিসেবে ব্যবহৃত হয়।

  • dataExecutionStatus : যে এক্সিকিউশনটি প্রিভিউ শীটে BigQuery ডেটা ইম্পোর্ট করে, তার স্ট্যাটাস। আরও তথ্যের জন্য, ডেটা এক্সিকিউশন স্ট্যাটাস সেকশনটি দেখুন।

একটি লুকার ডেটা উৎস আপডেট বা ডিলিট করুন

spreadsheets.batchUpdate মেথডটি ব্যবহার করুন এবং সেই অনুযায়ী একটি UpdateDataSourceRequest বা DeleteDataSourceRequest রিকোয়েস্ট সরবরাহ করুন।

লুকার ডেটা সোর্স অবজেক্টগুলি পরিচালনা করুন

স্প্রেডশিটে একবার কোনো ডেটা সোর্স যোগ করা হলে, তা থেকে একটি ডেটা সোর্স অবজেক্ট তৈরি করা যায়। লুকার ডেটা সোর্সের ক্ষেত্রে, আপনি শুধু তা থেকে একটি DataSource pivotTable অবজেক্ট তৈরি করতে পারবেন।

লুকার ডেটা সোর্স থেকে DataSource ফর্মুলা, এক্সট্র্যাক্ট এবং চার্ট তৈরি করা সম্ভব নয়।

একটি লুকার ডেটা সোর্স অবজেক্ট রিফ্রেশ করুন

বর্তমান ডেটা সোর্স স্পেসিফিকেশন এবং অবজেক্ট কনফিগারেশনের উপর ভিত্তি করে লুকার (Looker) থেকে সর্বশেষ ডেটা আনার জন্য আপনি একটি ডেটা সোর্স অবজেক্ট রিফ্রেশ করতে পারেন। RefreshDataSourceRequest কল করার জন্য আপনি spreadsheets.batchUpdate মেথডটি ব্যবহার করতে পারেন। এরপর, DataSourceObjectReferences অবজেক্টটি ব্যবহার করে রিফ্রেশ করার জন্য এক বা একাধিক অবজেক্ট রেফারেন্স নির্দিষ্ট করুন।

মনে রাখবেন যে, আপনি একটিমাত্র batchUpdate অনুরোধের মধ্যেই ডেটা সোর্স অবজেক্ট তৈরি এবং রিফ্রেশ উভয়ই করতে পারেন।

ডেটা সম্পাদনের অবস্থা

যখন আপনি ডেটা সোর্স তৈরি করেন বা ডেটা সোর্স অবজেক্ট রিফ্রেশ করেন, তখন BigQuery বা Looker থেকে ডেটা আনার জন্য এবং DataExecutionStatus সম্বলিত একটি রেসপন্স ফেরত দেওয়ার জন্য একটি ব্যাকগ্রাউন্ড এক্সিকিউশন তৈরি হয়। যদি এক্সিকিউশনটি সফলভাবে শুরু হয়, তাহলে DataExecutionState সাধারণত RUNNING অবস্থায় থাকে।

যেহেতু প্রক্রিয়াটি অ্যাসিঙ্ক্রোনাস, তাই আপনার অ্যাপ্লিকেশনটিতে ডেটা সোর্স অবজেক্টগুলোর স্ট্যাটাস পর্যায়ক্রমে জানার জন্য একটি পোলিং মডেল প্রয়োগ করা উচিত। স্ট্যাটাসটি SUCCEEDED বা FAILED অবস্থায় না আসা পর্যন্ত spreadsheets.get মেথডটি ব্যবহার করুন। বেশিরভাগ ক্ষেত্রে এক্সিকিউশন দ্রুত সম্পন্ন হয়, তবে এটি আপনার ডেটা সোর্সের জটিলতার উপর নির্ভর করে। সাধারণত এক্সিকিউশন ১০ মিনিটের বেশি সময় নেয় না।