এই কোডল্যাব সম্পর্কে
1. ভূমিকা
একটি কোডিং বিশেষজ্ঞ হওয়ার প্রয়োজন ছাড়াই দ্রুত এবং আরও দক্ষতার সাথে বিশ্লেষণের জন্য আপনার ডেটা প্রস্তুত করতে সক্ষম হওয়ার কল্পনা করুন৷ BigQuery ডেটা প্রস্তুতির সাথে, এটি একটি বাস্তবতা। এই শক্তিশালী বৈশিষ্ট্যটি ডেটা ইনজেশন, ট্রান্সফর্মেশন এবং ক্লিনজিংকে সহজ করে, আপনার প্রতিষ্ঠানের সমস্ত ডেটা অনুশীলনকারীদের হাতে ডেটা প্রস্তুতির কাজ করে।
আপনার পণ্যের ডেটাতে লুকানো গোপনীয়তা আনলক করতে প্রস্তুত?
পূর্বশর্ত
- Google ক্লাউড, কনসোলের একটি প্রাথমিক ধারণা
- এসকিউএল এর একটি প্রাথমিক ধারণা
আপনি কি শিখবেন
- ফ্যাশন এবং সৌন্দর্য শিল্প থেকে বাস্তবসম্মত উদাহরণ ব্যবহার করে BigQuery ডেটা প্রস্তুতি কীভাবে আপনার কাঁচা ডেটাকে কার্যযোগ্য ব্যবসায়িক বুদ্ধিমত্তায় পরিস্কার এবং রূপান্তর করতে পারে।
- আপনার পরিষ্কার করা ডেটার জন্য ডেটা প্রস্তুতি কীভাবে চালাবেন এবং সময়সূচী করবেন
আপনি কি প্রয়োজন হবে
- একটি Google ক্লাউড অ্যাকাউন্ট এবং Google ক্লাউড প্রকল্প
- একটি ওয়েব ব্রাউজার যেমন ক্রোম
2. মৌলিক সেটআপ এবং প্রয়োজনীয়তা
স্ব-গতিসম্পন্ন পরিবেশ সেটআপ
- Google ক্লাউড কনসোলে সাইন-ইন করুন এবং একটি নতুন প্রকল্প তৈরি করুন বা বিদ্যমান একটি পুনরায় ব্যবহার করুন৷ আপনার যদি ইতিমধ্যেই একটি Gmail বা Google Workspace অ্যাকাউন্ট না থাকে, তাহলে আপনাকে অবশ্যই একটি তৈরি করতে হবে।
- প্রকল্পের নাম এই প্রকল্পের অংশগ্রহণকারীদের জন্য প্রদর্শনের নাম। এটি একটি অক্ষর স্ট্রিং যা Google API দ্বারা ব্যবহৃত হয় না। আপনি সবসময় এটি আপডেট করতে পারেন.
- প্রোজেক্ট আইডি সমস্ত Google ক্লাউড প্রোজেক্ট জুড়ে অনন্য এবং অপরিবর্তনীয় (সেট করার পরে পরিবর্তন করা যাবে না)। ক্লাউড কনসোল স্বয়ংক্রিয়ভাবে একটি অনন্য স্ট্রিং তৈরি করে; সাধারণত আপনি এটা কি যত্ন না. বেশিরভাগ কোডল্যাবে, আপনাকে আপনার প্রকল্প আইডি উল্লেখ করতে হবে (সাধারণত
PROJECT_ID
হিসাবে চিহ্নিত)। আপনি যদি জেনারেট করা আইডি পছন্দ না করেন, তাহলে আপনি অন্য একটি এলোমেলো আইডি তৈরি করতে পারেন। বিকল্পভাবে, আপনি নিজের চেষ্টা করতে পারেন, এবং এটি উপলব্ধ কিনা দেখতে পারেন। এই ধাপের পরে এটি পরিবর্তন করা যাবে না এবং প্রকল্পের সময়কালের জন্য থাকে। - আপনার তথ্যের জন্য, একটি তৃতীয় মান আছে, একটি প্রকল্প নম্বর , যা কিছু API ব্যবহার করে। ডকুমেন্টেশনে এই তিনটি মান সম্পর্কে আরও জানুন।
- এরপরে, ক্লাউড রিসোর্স/এপিআই ব্যবহার করতে আপনাকে ক্লাউড কনসোলে বিলিং সক্ষম করতে হবে। এই কোডল্যাবের মাধ্যমে চালানোর জন্য খুব বেশি খরচ হবে না, যদি কিছু হয়। এই টিউটোরিয়ালের বাইরে বিলিং এড়াতে সংস্থানগুলি বন্ধ করতে, আপনি আপনার তৈরি করা সংস্থানগুলি মুছতে বা প্রকল্প মুছতে পারেন। নতুন Google ক্লাউড ব্যবহারকারীরা $300 USD বিনামূল্যের ট্রায়াল প্রোগ্রামের জন্য যোগ্য৷
3. আপনি শুরু করার আগে
API সক্ষম করুন
BigQuery-এ Gemini ব্যবহার করতে, আপনাকে অবশ্যই Google Cloud API-এর জন্য Gemini সক্ষম করতে হবে। serviceusage.services.enable
IAM অনুমতি সহ একজন পরিষেবা প্রশাসক বা প্রকল্পের মালিক সাধারণত এই পদক্ষেপটি সম্পাদন করে।
- Google ক্লাউড API-এর জন্য Gemini সক্ষম করতে, Google ক্লাউড মার্কেটপ্লেসে Google ক্লাউডের জন্য Gemini পৃষ্ঠাতে যান৷ গুগল ক্লাউডের জন্য মিথুনে যান
- প্রজেক্ট সিলেক্টরে, একটি প্রোজেক্ট সিলেক্ট করুন।
- সক্ষম করুন ক্লিক করুন। পৃষ্ঠাটি আপডেট করে এবং সক্রিয় এর একটি স্থিতি দেখায়। BigQuery-এ Gemini এখন নির্বাচিত Google ক্লাউড প্রজেক্টে সমস্ত ব্যবহারকারীর কাছে উপলব্ধ রয়েছে যাদের কাছে প্রয়োজনীয় IAM অনুমতি রয়েছে৷
ডেটা প্রস্তুতির বিকাশের জন্য ভূমিকা এবং অনুমতি সেট আপ করুন
- IAM এবং Admin-এ, IAM নির্বাচন করুন
- আপনার ব্যবহারকারী নির্বাচন করুন এবং 'প্রিন্সিপাল সম্পাদনা করুন' করতে পেন্সিল আইকনে ক্লিক করুন
BigQuery ডেটা প্রস্তুতি ব্যবহার করতে, আপনার নিম্নলিখিত ভূমিকা এবং অনুমতির প্রয়োজন হবে:
- BigQuery ডেটা এডিটর (roles/bigquery.dataEditor)
- পরিষেবা ব্যবহার উপভোক্তা (roles/serviceusage.serviceUsageConsumer)
4. BigQuery Analytics হাবে "bq ডেটা প্রস্তুতির ডেমো" তালিকা খোঁজা এবং সদস্যতা নেওয়া
আমরা এই টিউটোরিয়ালের জন্য bq data preparation demo
ডেটাসেট ব্যবহার করব। এটি BigQuery অ্যানালিটিক্স হাবের একটি লিঙ্ক করা ডেটাসেট যা থেকে আমরা পড়ব।
ডেটা প্রস্তুতি কখনই উত্সে ফিরে আসে না এবং আমরা আপনাকে লিখতে একটি গন্তব্য সারণী নির্ধারণ করতে বলব৷ এই অনুশীলনের জন্য আমরা যে টেবিলের সাথে কাজ করব তাতে খরচ ন্যূনতম রাখার জন্য শুধুমাত্র 1,000 সারি রয়েছে কিন্তু ডেটা প্রস্তুতি BigQuery-এ চলে এবং পাশাপাশি স্কেল করা হবে।
লিঙ্ক করা ডেটাসেট খুঁজে পেতে এবং সদস্যতা নিতে এই পদক্ষেপগুলি অনুসরণ করুন:
- অ্যানালিটিক্স হাব অ্যাক্সেস করুন : Google ক্লাউড কনসোলে, BigQuery-এ নেভিগেট করুন।
- BigQuery নেভিগেশন মেনুতে, "গভর্নেন্স"-এর অধীনে "Analytics Hub" বেছে নিন।
- তালিকার জন্য অনুসন্ধান করুন: অ্যানালিটিক্স হাব UI-তে, অনুসন্ধান তালিকায় ক্লিক করুন।"
- অনুসন্ধান বারে
bq data preparation demo
টাইপ করুন এবং এন্টার টিপুন।
- তালিকাটিতে সদস্যতা নিন: অনুসন্ধান ফলাফল থেকে
bq data preparation demo
তালিকা নির্বাচন করুন। - তালিকা বিস্তারিত পৃষ্ঠায়, সাবস্ক্রাইব বোতামে ক্লিক করুন।
- কোনো নিশ্চিতকরণ ডায়ালগ পর্যালোচনা করুন এবং প্রয়োজন হলে প্রকল্প/ডেটাসেট আপডেট করুন। ডিফল্ট সঠিক হতে হবে.
- BigQuery-এ ডেটাসেট অ্যাক্সেস করুন: একবার আপনি সফলভাবে সদস্যতা নিলে, তালিকার মধ্যে থাকা ডেটাসেটগুলি আপনার BigQuery প্রকল্পের সাথে লিঙ্ক করা হবে।
BigQuery স্টুডিওতে ফিরে যান।
5. ডেটা এক্সপ্লোর করুন এবং ডেটা প্রস্তুতি চালু করুন
- ডেটাসেট এবং সারণী সনাক্ত করুন: এক্সপ্লোরার প্যানেলে, আপনার প্রকল্প নির্বাচন করুন এবং তারপরে
bq data preparation demo
তালিকায় অন্তর্ভুক্ত করা ডেটাসেটটি খুঁজুন।stg_product
টেবিল নির্বাচন করুন। - ডেটা প্রস্তুতিতে খুলুন: টেবিলের নামের পাশে তিনটি উল্লম্ব বিন্দুতে ক্লিক করুন এবং
Open in Data Preparation
নির্বাচন করুন।
এটি ডেটা প্রস্তুতি ইন্টারফেসে টেবিলটি খুলবে, আপনার ডেটা রূপান্তর শুরু করার জন্য প্রস্তুত।
আপনি নীচের ডেটা প্রিভিউতে দেখতে পাচ্ছেন, আমাদের কিছু ডেটা চ্যালেঞ্জ রয়েছে যা আমরা মোকাবেলা করব, এর মধ্যে রয়েছে:
- মূল্য কলামে পরিমাণ এবং মুদ্রা উভয়ই রয়েছে, যা বিশ্লেষণকে কঠিন করে তোলে।
- পণ্যের কলামটি পণ্যের নাম এবং বিভাগ মিশ্রিত করে (একটি পাইপ প্রতীক দ্বারা পৃথক করা হয়েছে |)।
এখনই, মিথুন আপনার ডেটা বিশ্লেষণ করে এবং বিভিন্ন রূপান্তরের পরামর্শ দেয়। এই উদাহরণে, আমরা বেশ কয়েকটি সুপারিশ দেখতে পাই। পরবর্তী ধাপে আমরা আমাদের প্রয়োজনীয় বিষয়গুলো প্রয়োগ করব।
6. মূল্য কলাম হ্যান্ডলিং
এর মূল্য কলাম মোকাবেলা করা যাক. আমরা দেখেছি, এতে মুদ্রা এবং পরিমাণ উভয়ই রয়েছে। আমাদের লক্ষ্য হল এগুলিকে দুটি স্বতন্ত্র কলামে বিভক্ত করা: মুদ্রা এবং পরিমাণ ।
Gemini মূল্য কলামের জন্য বেশ কিছু সুপারিশ চিহ্নিত করেছে।
- একটি সুপারিশ খুঁজুন যা অনুরূপ কিছু বলে:
বর্ণনা: "এই অভিব্যক্তিটি নির্দিষ্ট ক্ষেত্র থেকে অগ্রণী 'USD' সরিয়ে দেয়"
REGEXP_REPLACE(Price,` `r'^USD\s',` `r'')
- পূর্বরূপ নির্বাচন করুন
- আবেদন নির্বাচন করুন
মূল্য কলামের জন্য পরবর্তী, STRING থেকে NUMERIC-এ ডেটা টাইপ রূপান্তর করা যাক।
- একটি সুপারিশ খুঁজুন যা অনুরূপ কিছু বলে:
বর্ণনা: "কলামের দামকে টাইপ স্ট্রিং থেকে float64 এ রূপান্তর করে"
SAFE_CAST(Price AS float64)
- আবেদন নির্বাচন করুন।
আপনি এখন আপনার ধাপ তালিকায় তিনটি প্রয়োগ করা পদক্ষেপ দেখতে হবে।
7. পণ্য কলাম হ্যান্ডলিং
পণ্যের কলামে একটি পাইপ (|) দ্বারা পৃথক করা পণ্যের নাম এবং বিভাগ উভয়ই রয়েছে।
যদিও আমরা আবার প্রাকৃতিক ভাষা ব্যবহার করতে পারি, আসুন মিথুনের আরও একটি শক্তিশালী বৈশিষ্ট্য অন্বেষণ করি।
পণ্যের নাম পরিষ্কার করুন
-
|
সহ একটি পণ্য এন্ট্রির বিভাগ অংশ নির্বাচন করুন অক্ষর এবং এটি মুছে দিন।
মিথুন বুদ্ধিমত্তার সাথে এই প্যাটার্নটি চিনবে এবং পুরো কলামে প্রয়োগ করার জন্য একটি রূপান্তরের পরামর্শ দেবে।
- "সম্পাদনা" নির্বাচন করুন।
মিথুনের সুপারিশ স্পট অন: এটি '|' অক্ষরের পরে সবকিছু সরিয়ে দেয়, কার্যকরভাবে পণ্যের নাম আলাদা করে।
কিন্তু এই সময় আমরা আমাদের আসল ডেটা ওভাররাইট করতে চাই না।
- টার্গেট কলাম ড্রপডাউনে, "নতুন কলাম তৈরি করুন" নির্বাচন করুন।
- নামটিকে ProductName এ সেট করুন।
- সবকিছু ভাল দেখাচ্ছে তা নিশ্চিত করতে পরিবর্তনগুলির পূর্বরূপ দেখুন।
- রূপান্তর প্রয়োগ করুন।
পণ্যের বিভাগটি বের করুন
প্রাকৃতিক ভাষা ব্যবহার করে, আমরা জেমিনিকে পণ্য কলামে পাইপ (|) এর পরে শব্দটি বের করতে নির্দেশ দেব। এই নিষ্কাশিত মানটি পণ্য নামক বিদ্যমান কলামে ওভাররাইট করা হবে।
- একটি নতুন রূপান্তর পদক্ষেপ যোগ করতে
Add Step
এ ক্লিক করুন।
- ড্রপডাউন মেনু থেকে
Transformation
নির্বাচন করুন - প্রাকৃতিক ভাষা প্রম্পট ক্ষেত্রে, "পণ্য কলামে পাইপের পরে (|) শব্দটি বের করুন।" তারপর এসকিউএল তৈরি করতে রিটার্ন চাপুন ।
- লক্ষ্য কলামটিকে "পণ্য" হিসাবে ছেড়ে দিন।
- আবেদন ক্লিক করুন.
রূপান্তর আপনাকে নিম্নলিখিত ফলাফল দিতে হবে।
8. তথ্য সমৃদ্ধ করতে যোগদান
প্রায়শই, আপনি অন্যান্য উত্স থেকে তথ্য দিয়ে আপনার ডেটা সমৃদ্ধ করতে চান৷ আমাদের উদাহরণে, আমরা তৃতীয় পক্ষের টেবিল থেকে বর্ধিত পণ্য বৈশিষ্ট্য, stg_extended_product
সহ আমাদের পণ্য ডেটাতে যোগ দেব। এই টেবিলে ব্র্যান্ড এবং লঞ্চের তারিখের মতো বিশদ বিবরণ রয়েছে।
-
Add Step
এ ক্লিক করুন -
Join
নির্বাচন করুন -
stg_extended_product
টেবিলে ব্রাউজ করুন।
BigQuery-এ Gemini স্বয়ংক্রিয়ভাবে আমাদের জন্য প্রোডাক্টিড জয়েন কী বেছে নিয়েছে এবং মূল নামটি অভিন্ন হওয়ার কারণে বাম ও ডান দিকে যোগ্য।
দ্রষ্টব্য: নিশ্চিত করুন যে বর্ণনার ক্ষেত্রটি 'প্রোডাক্টিড দ্বারা যোগ দিন' লেখা রয়েছে। যদি এতে অতিরিক্ত যোগ কী অন্তর্ভুক্ত থাকে, তাহলে বর্ণনার ক্ষেত্রটিকে 'প্রোডাক্টিড দ্বারা যোগদান করুন'-এ ওভাররাইট করুন এবং নিম্নলিখিত শর্ত L সহ জয়েন এক্সপ্রেশন পুনরায় তৈরি করতে বিবরণ ক্ষেত্রে জেনারেট বোতামটি নির্বাচন করুন।
productid
= আর.
productid
- ঐচ্ছিকভাবে, ফলাফলের পূর্বরূপ দেখতে পূর্বরূপ নির্বাচন করুন।
-
Apply
ক্লিক করুন।
বর্ধিত বৈশিষ্ট্যগুলি পরিষ্কার করা
যোগদান সফল হওয়ার সময়, বর্ধিত বৈশিষ্ট্য ডেটার জন্য কিছু পরিষ্কারের প্রয়োজন। LaunchDate
কলামে অসামঞ্জস্যপূর্ণ তারিখ বিন্যাস রয়েছে এবং Brand
কলামে কিছু অনুপস্থিত মান রয়েছে।
আমরা LaunchDate
কলামে ঠিকানা দিয়ে শুরু করব।
কোনও রূপান্তর তৈরি করার আগে, মিথুনের সুপারিশগুলি পরীক্ষা করুন৷
-
LaunchDate
কলাম নামের উপর ক্লিক করুন. আপনি নীচের চিত্রের মত কিছু সুপারিশ উত্পন্ন দেখতে হবে.
- আপনি যদি নিম্নলিখিত SQL এর সাথে একটি সুপারিশ দেখতে পান তাহলে সুপারিশটি প্রয়োগ করুন এবং পরবর্তী পদক্ষেপগুলি এড়িয়ে যান।
COALESCE(SAFE.PARSE_DATE('%Y-%m-%d',
LaunchDate),SAFE.PARSE_DATE('%Y/%m/%d', LaunchDate))
- আপনি যদি উপরের এসকিউএল-এর সাথে মিলে যাওয়া কোনো সুপারিশ দেখতে না পান,
Add Step
ক্লিক করুন। -
Transformation
নির্বাচন করুন। - SQL ক্ষেত্রে, নিম্নলিখিত লিখুন:
COALESCE(SAFE.PARSE_DATE('%Y-%m-%d',
LaunchDate),SAFE.PARSE_DATE('%Y/%m/%d', LaunchDate))
-
Target Columns
LaunchDate
সেট করুন। -
Apply
ক্লিক করুন।
LaunchDate কলামে এখন একটি সামঞ্জস্যপূর্ণ তারিখ বিন্যাস রয়েছে।
9. একটি গন্তব্য টেবিল যোগ করা হচ্ছে
আমাদের ডেটাসেট এখন পরিষ্কার এবং আমাদের ডেটা গুদামের একটি ডাইমেনশন টেবিলে লোড করার জন্য প্রস্তুত৷
-
ADD STEP
ক্লিক করুন। -
Destination
নির্বাচন করুন। - প্রয়োজনীয় প্যারামিটারগুলি পূরণ করুন: ডেটাসেট:
bq_data_preparation_demo
টেবিল:DimProduct
-
Save
ক্লিক করুন.
আমরা এখন "ডেটা" এবং "স্কিমা" ট্যাবগুলির সাথে কাজ করেছি৷ এগুলি ছাড়াও, BigQuery ডেটা প্রিপারেশন একটি "গ্রাফ" ভিউ প্রদান করে যা দৃশ্যত আপনার পাইপলাইনে রূপান্তর পদক্ষেপগুলির ক্রম প্রদর্শন করে৷
10. বোনাস A: প্রস্তুতকারকের কলাম পরিচালনা করা এবং ত্রুটি সারণী তৈরি করা
আমরা Manufacturer
কলামে খালি মানগুলিও শনাক্ত করেছি। এই রেকর্ডগুলির জন্য, আমরা একটি ডেটা গুণমান পরীক্ষা কার্যকর করতে চাই এবং আরও পর্যালোচনার জন্য সেগুলিকে একটি ত্রুটি টেবিলে নিয়ে যেতে চাই৷
একটি ত্রুটি টেবিল তৈরি করুন
-
stg_product data preparation
শিরোনামের পাশেMore
বোতামে ক্লিক করুন। -
Setting
বিভাগের অধীনে,Error Table
নির্বাচন করুন। -
Enable error table
বক্স চেক করুন, নিম্নরূপ সেটিংস কনফিগার করুন:
- ডেটাসেট:
bq_data_preparation_demo
নির্বাচন করুন - টেবিল:
err_dataprep
লিখুন -
Define duration for keeping errors
অধীনে,30 days (default)
-
Save
ক্লিক করুন.
ম্যানুফ্যাকচারার কলামে যাচাইকরণ সেট আপ করুন
- প্রস্তুতকারক কলাম নির্বাচন করুন।
- মিথুন সম্ভবত একটি প্রাসঙ্গিক রূপান্তর চিহ্নিত করবে। সুপারিশটি সন্ধান করুন যা কেবলমাত্র সারি রাখছে যেখানে প্রস্তুতকারকের ক্ষেত্রটি খালি নেই। এটির মতো এসকিউএল থাকবে:
Manufacturer IS NOT NULL
2. এটি পর্যালোচনা করতে এই সুপারিশের "সম্পাদনা" বোতামে ক্লিক করুন৷
- এটি চেক করা না থাকলে "বিফল বৈধকরণ সারি ত্রুটি টেবিলে যান" বিকল্পটি চেক করুন
-
Apply
ক্লিক করুন।
যেকোনো সময়ে, আপনি "প্রয়োগকৃত পদক্ষেপ" বোতামে ক্লিক করে আপনার প্রয়োগ করা রূপান্তর পর্যালোচনা, সংশোধন বা মুছে ফেলতে পারেন।
অপ্রয়োজনীয় ProductID_1 কলামটি পরিষ্কার করুন৷
ProductID_1 কলাম, যা আমাদের যোগ করা টেবিল থেকে ProductID-এর নকল করে, এখন মুছে ফেলা যেতে পারে৷
-
Schema
ট্যাবে যান -
ProductID_1
কলামের পাশে 3টি বিন্দুতে ক্লিক করুন৷ -
Drop
এ ক্লিক করুন।
আমরা এখন ডেটা প্রস্তুতির কাজ চালাতে এবং আমাদের সম্পূর্ণ পাইপলাইন যাচাই করতে প্রস্তুত। একবার আমরা ফলাফলের সাথে সন্তুষ্ট হলে, আমরা স্বয়ংক্রিয়ভাবে কাজ চালানোর জন্য নির্ধারিত করতে পারি।
- ডেটা প্রস্তুতির দৃশ্য থেকে দূরে নেভিগেট করার আগে, আপনার প্রস্তুতিগুলি সংরক্ষণ করুন।
stg_product data preparation
শিরোনামের পাশে, আপনি একটিSave
বোতাম দেখতে পাবেন। সংরক্ষণ করতে বোতামে ক্লিক করুন।
11. পরিচ্ছন্ন পরিবেশ
-
stg_product data preparation
মুছুন -
bq data preparation demo
ডেটাসেট মুছুন
12. অভিনন্দন
কোডল্যাব সম্পূর্ণ করার জন্য অভিনন্দন।
আমরা কভার করেছি কি
- ডেটা প্রস্তুতি সেট আপ করা হচ্ছে
- খোলা টেবিল এবং নেভিগেট তথ্য প্রস্তুতি
- সংখ্যাসূচক এবং একক বর্ণনাকারী ডেটা সহ কলামগুলিকে বিভক্ত করা
- তারিখ বিন্যাস প্রমিতকরণ
- তথ্য প্রস্তুতি চলমান