বিষয়বস্তুতে যান

BigQuery: সারি সন্নিবেশ করুন

একটি জার্নি স্টেপ থেকে BigQuery টেবিলে একটি সারি স্ট্রিম করার জন্য BigQuery: insert row ব্যবহার করুন, স্ট্রিমিং ইনসার্ট API-এর মাধ্যমে। Google Sheets: add row-এর মতো, এই পয়েন্টটি পুরো অ্যাকাউন্টের জন্য একবার সংযুক্ত Google অ্যাকাউন্টের মাধ্যমে প্রমাণীকরণ করে। পয়েন্টটিতে কোনো টোকেন ফিল্ড নেই।

সাধারণ ব্যবহার:

  • একটি রিপোর্টিং টেবিল ফিড করুন: একটি ড্যাশবোর্ড বা ডাউনস্ট্রিম নির্ধারিত কোয়েরির জন্য, প্রতিটি জার্নি স্টেপে পৌঁছানোর জন্য একটি সারি সন্নিবেশ করুন।
  • ইভেন্টগুলি ঘটার সাথে সাথে লগ করুন: একটি ব্যাচ এক্সপোর্টের জন্য অপেক্ষা না করে BigQuery-তে র’ জার্নি ডেটা স্ট্রিম করুন।
  • বিদ্যমান ডেটার সাথে যোগ করুন: একটি ডিভাইস বা ট্যাগ ভ্যালু সন্নিবেশ করুন যা আপনার BigQuery টেবিলগুলি আপনার নিজস্ব ডেটাসেটের সাথে যোগ করতে পারে।

শুরু করার আগে

Anchor link to

Settings > 3rd-party integrations > Google-এর অধীনে একটি Google অ্যাকাউন্ট সংযুক্ত করুন। এটি একই সংযোগ যা Google Sheets: add row ব্যবহার করে। আপনি Google সংযোগ করার পরে, ইন্টিগ্রেশন ইনস্টল করুন যাতে পয়েন্টটি জার্নি বিল্ডারে উপস্থিত হয়।

এটি সেই পৃষ্ঠার Google BigQuery কার্ড নয়। সেটি হল BigQuery ইন্টিগ্রেশন: এটি একটি অ্যাপ্লিকেশনের প্রতিটি মেসেজ ইভেন্টকে একটি সার্ভিস অ্যাকাউন্ট কী-এর উপর একটি নির্দিষ্ট স্কিমাতে স্ট্রিম করে। এই পয়েন্টটি আপনার সংজ্ঞায়িত একটি সারি লেখে, যে স্টেপে আপনি এটি স্থাপন করেন, এবং এর নিজস্ব কোনো কী নেয় না।

সেটিংস ৩য়-পক্ষ ইন্টিগ্রেশন যা পৃথক Google BigQuery কার্ডের পাশে Google কানেক্ট কার্ড দেখাচ্ছে

Google Cloud-এর দিকেও দুটি জিনিস ঠিক থাকতে হবে, নতুবা অনুরোধটি ব্যর্থ হবে:

  • ডেটাসেট এবং টেবিলটি আগে থেকেই বিদ্যমান থাকতে হবে। এই পয়েন্টটি সারি লেখে। এটি কখনও টেবিল তৈরি করে না।
  • সংযুক্ত Google অ্যাকাউন্টের সেই ডেটাসেটে BigQuery Data Editor ভূমিকা (বা bigquery.tables.updateData প্রদানকারী যেকোনো ভূমিকা) প্রয়োজন।

পয়েন্টটি কনফিগার করুন

Anchor link to
  1. ইন্টিগ্রেশন বিভাগ থেকে BigQuery: insert row বাম প্যানেল থেকে ক্যানভাসে টেনে আনুন।
  2. পয়েন্টটিতে ডাবল-ক্লিক করুন এবং একটি Step Name লিখুন।
  3. Project ID-তে, Google Cloud প্রজেক্ট আইডি লিখুন। ডিসপ্লে নামের পরিবর্তে আইডি ব্যবহার করুন, উদাহরণস্বরূপ my-analytics-prod।
BigQuery ইনসার্ট রো ড্রয়ার যেখানে স্টেপ নেম পূরণ করা আছে এবং প্রজেক্ট আইডি my-analytics-prod-এ সেট করা আছে
  1. Dataset-এ, ডেটাসেটের নাম লিখুন।
ডেটাসেট ফিল্ড marketing-এ সেট করা আছে
  1. Table-এ, টেবিলের নাম লিখুন।
টেবিল ফিল্ড journey_events-এ সেট করা আছে
  1. Columns-এ, প্রতিটি BigQuery কলাম লেখার জন্য একটি করে সারি যোগ করুন। কলামের নাম এবং ভ্যালু লিখুন। নামগুলি খালি থাকা যাবে না এবং অনন্য হতে হবে। আপনার তালিকাভুক্ত প্রতিটি কলাম টেবিলের স্কিমাতে বিদ্যমান থাকতে হবে। একটি ভ্যালু নির্দিষ্ট টেক্সট বা একটি ট্র্যাভেলার ম্যাক্রো হতে পারে যেমন {{tag:Name}}, যা একটি Webhook বডিতে ব্যবহৃত ম্যাক্রোগুলির মতোই। অথবা এই জার্নির আগের কোনো স্টেপে তৈরি হওয়া একটি অ্যাট্রিবিউট বাছাই করতে Insert Dynamic Value-তে ক্লিক করুন, উদাহরণস্বরূপ একটি LLM প্রতিক্রিয়া বা একটি ম্যাপ করা Webhook ভ্যালু।
কলামের নাম এবং ভ্যালু টেবিল যেখানে device_id একটি ডিভাইস hwid ম্যাক্রোতে ম্যাপ করা আছে
  1. Save-এ ক্লিক করুন।

প্রতিক্রিয়া

Anchor link to

ট্র্যাভেলার ক্যানভাসে আপনার পরবর্তী সংযুক্ত স্টেপের দিকে এগিয়ে যায়।

স্টেপ চলার পরে অ্যাট্রিবিউট

Anchor link to

এই পয়েন্টটি সফল হলে কোনো অ্যাট্রিবিউট ফেরত দেয় না। যদি BigQuery একটি সারি প্রত্যাখ্যান করে, তাহলে ত্রুটিটি bigquery_insert_error-এ লেখা হয়। দেখুন ব্যর্থতা এবং অপ্রত্যাশিত প্রতিক্রিয়া।

ব্যর্থতা এবং অপ্রত্যাশিত প্রতিক্রিয়া

Anchor link to

পয়েন্টের ড্রয়ারে Calls log খুলুন এবং প্রতিক্রিয়াটি পরীক্ষা করুন:

  • 401 — Google সংযোগটি অনুপস্থিত বা মেয়াদোত্তীর্ণ। Settings > 3rd-party integrations-এর অধীনে এটি পুনরায় সংযোগ করুন।
  • accessDenied: Streaming insert is not allowed in the free tier সহ 403 — প্রজেক্টের সাথে কোনো বিলিং অ্যাকাউন্ট সংযুক্ত নেই। স্ট্রিমিং ইনসার্ট, যা এই পয়েন্টটি ব্যবহার করে, BigQuery স্যান্ডবক্সের অংশ নয়। প্রজেক্টে বিলিং সক্ষম করুন এবং একই অনুরোধটি সফল হবে।
  • accessDenied বা insufficientPermissions সহ 403 — BigQuery সাপোর্ট যোগ করার আগে সংযোগটি মঞ্জুর করা হয়েছিল (এটি পুনরায় সংযোগ করুন), অথবা Google অ্যাকাউন্টের ডেটাসেটে লেখার অ্যাক্সেস নেই।
  • quotaExceeded বা rateLimitExceeded সহ 403 — প্রজেক্টের স্ট্রিমিং ইনসার্ট কোটা শেষ হয়ে গেছে। পুনরায় সংযোগ করার কিছু নেই। জার্নিকে কম পাঠাতে হবে, অথবা Google Cloud-এ কোটা বাড়াতে হবে।
  • 404 — প্রজেক্ট, ডেটাসেট, বা টেবিলের নাম কোনো কিছুর সাথে মেলে না।

একটি ব্যর্থ অনুরোধ ট্র্যাভেলারকে জার্নি থেকে বাদ দেয়। দেখুন ত্রুটি এবং ব্যর্থ অনুরোধ।

উদাহরণ পরিস্থিতি: একটি BigQuery রিপোর্টিং টেবিল ফিড করা

Anchor link to

একটি দল তাদের নির্ধারিত রিপোর্টগুলি যে BigQuery ডেটাসেট থেকে কোয়েরি করে, সেই একই ডেটাসেটে জার্নির কার্যকলাপ চায়।

  1. আপনি যে স্টেপটি লগ করতে চান তার ঠিক পরে BigQuery: insert row যোগ করুন। Dataset marketing-এ এবং Table journey_events-এ সেট করুন। Columns-এ, device_id-কে {{device:hwid}}-তে সেট করুন।
  2. Save-এ ক্লিক করুন।

এটি একবার চললে, সারিটি সেই একই টেবিলে চলে যায় যেখান থেকে নির্ধারিত কোয়েরি পড়ে, তাই পরবর্তী রিপোর্ট রানে এটি ইতিমধ্যেই অন্তর্ভুক্ত থাকে।