BigQuery UI নেভিগেশন এবং ডেটা এক্সপ্লোরেশন কোডল্যাব

১. ভূমিকা

BigQuery হলো একটি সার্ভারবিহীন, অত্যন্ত স্কেলেবল এবং সাশ্রয়ী ডেটা ওয়্যারহাউস। শুধু আপনার ডেটা BigQuery-তে স্থানান্তর করুন এবং কঠিন কাজগুলো আমাদের উপর ছেড়ে দিন, যাতে আপনি আপনার ব্যবসার মতো গুরুত্বপূর্ণ কাজে মনোযোগ দিতে পারেন। আপনি আপনার ব্যবসায়িক প্রয়োজন অনুযায়ী প্রজেক্ট এবং ডেটা উভয়ের অ্যাক্সেস নিয়ন্ত্রণ করতে পারেন, যেমন অন্যদের আপনার ডেটা দেখার বা কোয়েরি করার সুযোগ দেওয়া।

এই ল্যাবে, আপনি BigQuery-এর বিশ্লেষণমূলক সম্ভাবনাগুলো সম্পর্কে জানতে পারবেন। আপনি শিখবেন কীভাবে একটি গুগল ক্লাউড স্টোরেজ বাকেট থেকে ডেটাসেট ইম্পোর্ট করতে হয় এবং একটি রিটেইল ব্যাংকিং ডেটাসেট নিয়ে কাজ করার মাধ্যমে BigQuery UI সম্পর্কে ধারণা লাভ করবেন। এছাড়াও, এই ল্যাবটি আপনাকে BigQuery-এর এমন কিছু গুরুত্বপূর্ণ ফিচার ব্যবহার করতে শেখাবে যা আপনার দৈনন্দিন অ্যানালিটিক্সের কাজকে অনেক সহজ করে তোলে; যেমন—স্প্রেডশিটে কোয়েরির ফলাফল এক্সপোর্ট করা, আপনার কোয়েরি হিস্ট্রি থেকে কোয়েরি দেখা ও চালানো, কোয়েরির পারফরম্যান্স দেখা এবং অন্যান্য টিম ও ডিপার্টমেন্টের ব্যবহারের জন্য টেবিল ভিউ তৈরি করা।

আপনি যা শিখবেন

এই ল্যাবে, আপনি নিম্নলিখিত কাজগুলো কীভাবে সম্পাদন করতে হয় তা শিখবেন:

  • BigQuery-তে নতুন ডেটা লোড করা হচ্ছে
  • BigQuery UI-এর সাথে পরিচিত হন।
  • BigQuery-তে কোয়েরি চালানো
  • কোয়েরি পারফরম্যান্স দেখুন
  • BigQuery-তে ভিউ তৈরি করা
  • অন্যদের সাথে নিরাপদে ডেটাসেট শেয়ার করুন

২. ভূমিকা: BigQuery UI বোঝা

এই অংশে আপনি শিখবেন কীভাবে BigQuery UI ব্যবহার করতে হয়, উপলব্ধ ডেটাসেটগুলো দেখতে হয় এবং একটি সাধারণ কোয়েরি চালাতে হয়।

BQ UI লোড হচ্ছে

  1. গুগল ক্লাউড প্ল্যাটফর্ম কনসোলের শীর্ষে অবস্থিত 'BigQuery' টাইপ করুন।
  2. বিকল্প তালিকা থেকে BigQuery নির্বাচন করুন। অবশ্যই সেই বিকল্পটি নির্বাচন করবেন যেটিতে BigQuery লোগো, অর্থাৎ বিবর্ধক কাঁচের চিহ্নটি রয়েছে।

ডেটাসেট দেখা এবং কোয়েরি চালানো

ee95ce13969ee1ad.png

  1. বাম প্যানে রিসোর্স সেকশনে আপনার BigQuery প্রজেক্টটিতে ক্লিক করুন।
  2. সেই ডেটাসেটের টেবিলগুলো দেখতে bq_demo তে ক্লিক করুন।
  3. সার্চ বক্সে "card" টাইপ করলে, সেইসব টেবিল এবং ডেটাসেটের তালিকা দেখা যাবে যাদের নামে "card" শব্দটি রয়েছে।
  4. অনুসন্ধানের ফলাফল তালিকা থেকে "card_transactions" টেবিলটি নির্বাচন করুন

beb6ff6ca2930125.png

  1. এই টেবিলের মেটাডেটা দেখতে card_transactions পেনের অধীনে থাকা Details ট্যাবে ক্লিক করুন।
  2. টেবিলটির প্রিভিউ দেখতে প্রিভিউ ট্যাবে ক্লিক করুন।

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

  1. "card_transactions" টেবিলটি কোয়েরি করতে ম্যাগনিফাইং গ্লাস আইকনটিতে ক্লিক করুন। BigQuery কোয়েরি এডিটরে একটি স্বয়ংক্রিয়ভাবে তৈরি টেক্সট প্রদর্শিত হবে।
  2. Card_Transactions টেবিল থেকে স্বতন্ত্র মার্চেন্টদের দেখানোর জন্য নিচের কোডটি প্রবেশ করান।
SELECT distinct (merchant) FROM bq_demo.card_transactions LIMIT 1000
  1. কোয়েরিটি চালানোর জন্য রান বাটনে ক্লিক করুন।

35113542e7ec6fa6.png

৩. ডেটাসেট তৈরি করা এবং ভিউ শেয়ার করা

ডেটা শেয়ার করা এবং এর পরিচালনা অত্যন্ত গুরুত্বপূর্ণ, যা BQ UI-তে খুব সহজে করা যায়। এই অংশে আপনি শিখবেন কীভাবে একটি নতুন ডেটাসেট তৈরি করতে হয়, সেটিকে একটি ভিউ দিয়ে পূরণ করতে হয় এবং সেই ডেটাসেটটি শেয়ার করতে হয়।

কোয়েরি ইতিহাস দেখা

  1. GCP কনসোলের বাম প্যানে 'কোয়েরি হিস্ট্রি'-তে ক্লিক করুন।
  2. কোয়েরি হিস্ট্রি প্যানে রিফ্রেশ ক্লিক করুন
  3. কোয়েরির ফলাফল দেখতে, কোয়েরির একেবারে ডানদিকে থাকা ডাউনলোড ছবি/তীরচিহ্নে ক্লিক করুন।

6e3232ed96f647b8.png

একটি নতুন ডেটাসেট তৈরি করা হচ্ছে

  1. BigQuery UI-এর রিসোর্স প্যানে [আপনার প্রজেক্টের নাম] নির্বাচন করুন।
  2. প্রজেক্ট ইনফরমেশন প্যান থেকে 'Create new Dataset' নির্বাচন করুন
  3. ডেটাসেট আইডির জন্য:

bq_demo_shared

  1. অন্যান্য সমস্ত ক্ষেত্র ডিফল্ট হিসাবে রাখুন।
  2. "ডেটা সেট তৈরি করুন" এ ক্লিক করুন

b433eba38f55124f.pngdd774aca416e7fbc.png

ভিউ তৈরি করা

[ প্রতিযোগিতামূলক আলোচনার বিষয়]: BigQuery সম্পূর্ণরূপে ANSI SQL অনুবর্তী এবং এটি সাধারণ ও জটিল উভয় প্রকারের মাল্টি-টেবিল জয়েন এবং সমৃদ্ধ বিশ্লেষণাত্মক ফাংশন সমর্থন করে। মাইগ্রেশন প্রক্রিয়া সহজ করার জন্য আমরা প্রচলিত ডেটা ওয়্যারহাউসগুলিতে ব্যবহৃত সাধারণ SQL ডেটা টাইপ এবং ফাংশনগুলির জন্য ক্রমাগত উন্নত সমর্থন প্রকাশ করেছি।

  1. কোয়েরি এডিটর পেনের শীর্ষে 'Compose New Query' নির্বাচন করুন।
  2. কোয়েরি এডিটরে নিম্নলিখিত কোডটি সন্নিবেশ করুন।
WITH revenue_by_month AS (
SELECT
    card.type AS card_type,
    FORMAT_DATE('%Y-%m', trans_date) as revenue_date,
    SUM(amount) as revenue
FROM bq_demo.card_transactions
JOIN bq_demo.card ON card_transactions.cc_number = card.card_number
WHERE trans_date  DATE_ADD(CURRENT_DATE, INTERVAL -1 YEAR)
GROUP BY card_type, revenue_date
)
SELECT
    card_type,
    revenue_date,
    revenue as monthly_rev,
    revenue -  LAG(revenue) OVER (ORDER BY card_type, revenue_date ASC) as rev_change
FROM revenue_by_month
ORDER BY card_type, revenue_date ASC;
  1. 'Save View'-এ ক্লিক করুন
  2. প্রজেক্টের নামের জন্য আপনার বর্তমান প্রজেক্টটি নির্বাচন করুন।
  3. নতুন তৈরি করা ডেটাসেটটি নির্বাচন করুন:

bq_demo_shared

  1. টেবিলের নামের জন্য:

কার্ডের ধরন অনুযায়ী রাজস্ব পরিবর্তন

  1. সংরক্ষণ করুন-এ ক্লিক করুন।

4b111056b544c27d.png

ভিউ এবং ডেটাসেট শেয়ার করা

  1. BigQuery UI-এর বাম দিকের রিসোর্স প্যানে থেকে 'bq_demo_shared' ডেটাসেটটি নির্বাচন করুন।
  2. ডেটাসেট তথ্য প্যানে থেকে 'শেয়ার ডেটাসেট'-এ ক্লিক করুন।
  3. একটি ইমেল ঠিকানা লিখুন
  4. Role ড্রপডাউন মেনু থেকে 'BigQuery Data Viewer' নির্বাচন করুন
  5. 'যোগ করুন' এ ক্লিক করুন
  6. সম্পন্ন ক্লিক করুন

1c04b6b5ebc191dc.png

শীটে ডেটা অন্বেষণ করুন

[ প্রতিযোগিতামূলক আলোচনার বিষয়]: এর প্রতিযোগীদের তুলনায় BigQuery-এর আরেকটি সুবিধা হলো BI ইঞ্জিন। BI ইঞ্জিন ব্যবহার করে ইন-মেমরি ক্যাশিং ইঞ্জিনের মাধ্যমে BI ধরনের সামারি কোয়েরিগুলোকে এক সেকেন্ডেরও কম সময়ে ফলাফল দিতে সক্ষম করা যায়। এটি বর্তমানে গুগল ডেটা স্টুডিও দ্বারা সমর্থিত, কিন্তু শীঘ্রই BigQuery-এর সমস্ত কোয়েরিকে ত্বরান্বিত করার জন্য উপলব্ধ হবে।

উদাহরণস্বরূপ:

ড্যাশবোর্ড এবং ডেটা ভিজ্যুয়ালাইজেশনের জন্য স্নোফ্লেক তৃতীয় পক্ষের বিআই টুলের উপর নির্ভর করে, অন্যদিকে জিসিপি কানেক্টেড শীটস, ডেটা স্টুডিও এবং লুকার-সহ বিভিন্ন সমন্বিত বিআই টুল সরবরাহ করে।

  1. BigQuery UI-এর বাম দিকের রিসোর্স প্যানে থেকে 'rev_change_by_card_type' ভিউটি নির্বাচন করুন।
  2. দৃশ্যটি সম্পর্কে জানতে বিবর্ধক কাচে ক্লিক করুন। 255be22b0eaf339.png
  3. প্রকার:

নির্বাচন করুন *

bq_demo_shared.rev_change_by_card_type থেকে

  1. রান-এ ক্লিক করুন
  2. ফলাফল প্যানেল থেকে 'এক্সপোর্ট' আইকনে ক্লিক করুন
  3. 'Explore Data with Sheets' নির্বাচন করুন

9617b522025fd337.png

  1. "বিশ্লেষণ শুরু করুন"-এ ক্লিক করুন
  2. 'পিভট টেবিল' নির্বাচন করুন
  3. 'নতুন শীট' নির্বাচন করুন
  4. 'তৈরি করুন' এ ক্লিক করুন
  5. শীটস উইন্ডোর ডানদিকে অবস্থিত পিভট টেবিল এডিটরের রো সেকশনের অধীনে "revenue_date" যোগ করুন।
  6. পিভট টেবিল এডিটরের কলাম সেকশনের অধীনে 'card_type' যোগ করুন।
  7. পিভট টেবিল এডিটরের কলাম সেকশনের অধীনে 'monthly_rev' যোগ করুন।
  8. প্রয়োগ করুন ক্লিক করুন

48e67c2e04965796.png

  1. শীটস UI-এর উপরের অংশে যান এবং ইনসার্ট চার্ট নির্বাচন করুন।

৪. সেটআপ: ডেটা ইন্টিগ্রেশন

এই অংশে আপনি শিখবেন কীভাবে একটি নতুন টেবিল তৈরি করতে হয় এবং গুগল ক্লাউডে উপলব্ধ অনেকগুলো পাবলিক ডেটাসেটের যেকোনো একটিতে JOIN অপারেশন সম্পাদন করতে হয়।

[প্রতিযোগিতামূলক আলোচনার বিষয়]:

BigQuery বহু বছর ধরে শেয়ার করা ডেটা সেট সমর্থন করে আসছে। যেকোনো প্রকল্পের গ্রাহকরা পাবলিক ডেটা সেট এবং তাদের সাথে শেয়ার করা অন্যান্য প্রকল্পের ডেটা সেট উভয়ই কোয়েরি করতে পারেন।

BigQuery এক্সটার্নাল টেবিল ব্যবহারের মাধ্যমে GCS-এ ডেটা লেক সমর্থন করতে পারে। বাল্ক লোডিং ছাড়াও, BigQuery প্রতি সেকেন্ডে কয়েকশ মেগাবাইটেরও বেশি হারে ডাটাবেসে ডেটা স্ট্রিম করার ক্ষমতা সমর্থন করে। Snowflake-এ ডেটা স্ট্রিমিংয়ের কোনো সমর্থন নেই।

একটি নতুন টেবিলে ডেটা আমদানি করা

  1. রিসোর্স প্যানে bq_demo ডেটাসেটটি নির্বাচন করুন।
  2. ডেটা সেট তথ্য প্যানে 'টেবিল তৈরি করুন' নির্বাচন করুন।
  3. উৎস হিসেবে গুগল ক্লাউড স্টোরেজ নির্বাচন করুন
  4. ফাইল পাথ টেক্সট বক্সে:

gs://retail-banking-looker/district

  1. ফাইল ফরম্যাটের জন্য CSV নির্বাচন করুন
  2. টেবিলের নামের জন্য 'জেলা' লিখুন
  3. স্বয়ংক্রিয়ভাবে স্কিমা সনাক্তকরণের জন্য চেকবক্সটি নির্বাচন করুন
  4. টেবিল তৈরি করতে ক্লিক করুন

পাবলিক ডেটাসেট কোয়েরি করা

  1. কোয়েরি এডিটরে নিম্নলিখিত কোয়েরিটি লিখুন:
SELECT
    CAST(geo_id as STRING) AS zip_code,
    total_pop,
    median_age,
    households,
    income_per_capita,
    housing_units,
    vacant_housing_units_for_sale,
    ROUND(SAFE_DIVIDE(employed_pop, pop_16_over),4) AS rate_employment,
    ROUND(SAFE_DIVIDE(bachelors_degree_or_higher_25_64, pop_25_64),4) AS rate_bachelors_degree_or_higher_25_64
  FROM
    `bigquery-public-data.census_bureau_acs.zip_codes_2017_5yr`;
  1. রান-এ ক্লিক করুন
  2. ফলাফল দেখুন

dff40709db70d75.png

  1. এখন আমরা এই পাবলিক ডেটা অন্য একটি কোয়েরির সাথে যুক্ত করব। কোয়েরি এডিটরে নিম্নলিখিত SQL কোডটি লিখুন:
WITH customer_counts AS (
    select regexp_extract(address, "[0-9][0-9][0-9][0-9][0-9]") as zip_code, 
    count(*) as num_clients
    FROM bq_demo.client
    GROUP BY zip_code
    )
SELECT 
    CAST(geo_id as STRING) AS zip_code,
    total_pop,
    median_age,
    households,
    income_per_capita,
    ROUND(SAFE_DIVIDE(employed_pop, pop_16_over),4) AS rate_employment,
    num_clients
FROM
    `bigquery-public-data.census_bureau_acs.zip_codes_2017_5yr`
JOIN customer_counts on zip_code = geo_id
ORDER BY num_clients DESC
  1. রান-এ ক্লিক করুন
  2. ফলাফল দেখুন

b853ad571e7a3038.png

৫. ধারণক্ষমতা ব্যবস্থাপনা

স্লট এবং রিজার্ভেশন নিয়ে কাজ করা

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

[ প্রতিযোগিতামূলক আলোচনার বিষয়: কিছু প্রতিযোগী শুধুমাত্র একটি নির্দিষ্ট ধারণক্ষমতার মডেলে কাজ করে, যেখানে গ্রাহকদের তাদের প্রতিষ্ঠানের প্রতিটি ওয়ার্কলোডের জন্য একটি ভার্চুয়াল ওয়্যারহাউস বরাদ্দ করতে হয়। BigQuery-এর সাথে কাজ শুরু করা সহজ করে এমন একটি স্বল্প-খরচের প্রতি-কোয়েরি মডেলের পাশাপাশি, আমরা একটি ফ্ল্যাট রেট ক্যাপাসিটি প্রাইসিং মডেলও সমর্থন করি, যেখানে অব্যবহৃত ধারণক্ষমতা একাধিক ওয়ার্কলোডের মধ্যে ভাগ করে নেওয়া যায়। ]

  1. রিজার্ভেশন ট্যাবে যান।

964f4ab78d35d067.png

  1. 'স্লট কিনুন'-এ ক্লিক করুন

c8cb5ee61bbea814.png

  1. সময়কাল হিসেবে 'ফ্লেক্স' নির্বাচন করুন।
  2. ৫০০টি স্লট নির্বাচন করুন।
  3. ক্রয় নিশ্চিত করুন।

d615f5908dffc1ee.png

  1. স্লট প্রতিশ্রুতি দেখুন-এ ক্লিক করুন।
  2. 'রিজার্ভেশন তৈরি করুন'-এ ক্লিক করুন
  3. রিজার্ভেশন নাম হিসেবে ব্যবহারকারী 'demo'
  4. অবস্থান হিসেবে মার্কিন যুক্তরাষ্ট্র নির্বাচন করুন
  5. স্লটের জন্য ৫০০ টাইপ করুন (সবগুলো উপলব্ধ)
  6. অ্যাসাইনমেন্টগুলিতে ক্লিক করুন
  7. সংস্থার প্রকল্পের জন্য বর্তমান প্রকল্পটি বেছে নিন
  8. রিজার্ভেশন আইডির জন্য 'ডেমো' নির্বাচন করুন
  9. তৈরি করুন-এ ক্লিক করুন।