Home › Lectures › Engineering & Career

🏗️ বিগ ডেটা ও ডেটা ইঞ্জিনিয়ারিং · Big Data & Data Engineering

বিশাল ডেটা সংগ্রহ, সংরক্ষণ ও প্রসেসিং।

Collecting, storing and processing data at scale.

📅 ৬. ইঞ্জিনিয়ারিং ও ক্যারিয়ার⏳ ~3 সপ্তাহ📘 7 টপিক🧩 21 সাব-টপিক🎬 0 ভিডিও💻 রানযোগ্য কোড

🎯 যা শিখবেন / Outcomes

Build ETL pipelines, use Spark and warehouses

🧰 টুলস / Tools

Spark, Airflow, BigQuery

🏁 প্রজেক্ট / Capstone

Automated daily data pipeline

📌 পূর্বশর্ত / Prerequisites

🗄️ SQL & Databases

📅

সাপ্তাহিক পরিকল্পনা · Weekly plan

~২ ঘণ্টা/দিন ধরে
1

ETL Pipelines

Extract, transform, load.
Beginner
📘 বাংলা: ডেটা এক্সট্র্যাক্ট, ট্রান্সফর্ম, লোড।
🌐 English: Extract, transform, load.

💡 বিভিন্ন উৎসের ডেটা নিয়মিত পরিষ্কার করে এক জায়গায় আনা—সব বিশ্লেষণের ভিত্তি।

  1. 1
    Extract: ডাটাবেস, API, ফাইল, ওয়েব থেকে ডেটা আনা
  2. 2
    Transform: পরিষ্কার, টাইপ ঠিক, একীভূত, সারাংশ
  3. 3
    Load: ডেটা ওয়্যারহাউস বা ডাটাবেসে লেখা
  4. 4
    ELT: আগে লোড, পরে ওয়্যারহাউসেই রূপান্তর (dbt); ইনক্রিমেন্টাল লোড ও লগিং
Extractউৎস থেকে
Transformপরিষ্কার ও একীভূত
Loadওয়্যারহাউসে; ELT বিকল্প
2

Apache Spark PySpark

Parallel processing of massive data.
Beginner
📘 বাংলা: বিশাল ডেটা সমান্তরাল প্রসেসিং।
🌐 English: Parallel processing of massive data.

💡 এক কম্পিউটারে না আঁটা ডেটা অনেক মেশিনে সমান্তরালে প্রসেস।

  1. 1
    SparkSession তৈরি; spark.read.csv/parquet
  2. 2
    DataFrame API: select, filter, groupBy, join—pandas-এর মতো
  3. 3
    লেজি ইভ্যালুয়েশন: action (show, count, write) না আসা পর্যন্ত কিছুই চলে না
  4. 4
    Spark SQL ও MLlib; পার্টিশন ও Parquet ফরম্যাট দিয়ে দক্ষতা
RDD ও DataFrame
লেজি ইভ্যালুয়েশন
Spark SQL ও MLlib
3

Apache Airflow

Workflow scheduling.
Beginner
📘 বাংলা: ওয়ার্কফ্লো শিডিউলিং।
🌐 English: Workflow scheduling.

💡 শত শত নির্ভরশীল কাজ সঠিক ক্রমে, সঠিক সময়ে, ব্যর্থ হলে পুনরায়।

  1. 1
    DAG: টাস্ক ও তাদের নির্ভরতা (extract >> transform >> load)
  2. 2
    Operator: PythonOperator, BashOperator, SQL অপারেটর
  3. 3
    schedule_interval (যেমন "@daily"), retries, alerts
  4. 4
    Web UI-তে রান, লগ ও ব্যর্থতা দেখা; backfill দিয়ে পুরোনো তারিখ চালানো
DAGটাস্ক নির্ভরতা
Operator ও Scheduler
রিট্রাই ও মনিটরিং
4

Data Warehouse

BigQuery, Snowflake, Redshift.
Intermediate
📘 বাংলা: BigQuery, Snowflake, Redshift।
🌐 English: BigQuery, Snowflake, Redshift.

💡 বিশ্লেষণের জন্য অপ্টিমাইজড কেন্দ্রীয় ডেটা ভান্ডার।

  1. 1
    OLTP (লেনদেন, অ্যাপ ডাটাবেস) বনাম OLAP (বিশ্লেষণ, ওয়্যারহাউস)
  2. 2
    কলাম-ভিত্তিক স্টোরেজ: শুধু দরকারি কলাম পড়ে—বড় কুয়েরি দ্রুত
  3. 3
    স্টার স্কিমা: ফ্যাক্ট (ঘটনা) + ডাইমেনশন (তারিখ, এলাকা)
  4. 4
    ক্লাউড: BigQuery, Snowflake, Redshift; লোকাল: DuckDB
OLTP বনাম OLAP
স্টার স্কিমা
কলাম-ভিত্তিক স্টোরেজ
5

NoSQL MongoDB

Document database.
Intermediate
📘 বাংলা: ডকুমেন্টভিত্তিক ডাটাবেস।
🌐 English: Document database.

💡 নমনীয় কাঠামোর ডেটা (JSON, লগ, IoT) দ্রুত সংরক্ষণ।

  1. 1
    ডকুমেন্ট (JSON-এর মতো) → কালেকশন → ডাটাবেস
  2. 2
    insert_one, find({"district":"Dhaka"}), update_one
  3. 3
    aggregate পাইপলাইন: $match → $group → $sort
  4. 4
    কখন: পরিবর্তনশীল স্কিমা, বড় লেখার চাপ; কখন নয়: জটিল JOIN ও কঠোর লেনদেন
ডকুমেন্ট ও কালেকশন
find ও aggregate
কখন NoSQL বেছে নেবেন
6

Web Scraping BeautifulSoup

Collect data from websites.
Advanced
📘 বাংলা: ওয়েব থেকে ডেটা সংগ্রহ।
🌐 English: Collect data from websites.

💡 API নেই এমন ওয়েবসাইট থেকে ডেটা সংগ্রহ।

  1. 1
    robots.txt ও ব্যবহারের শর্ত পড়ুন
  2. 2
    requests.get(url, headers=...) দিয়ে HTML
  3. 3
    BeautifulSoup(html, "html.parser").select("table tr") দিয়ে প্রয়োজনীয় অংশ
  4. 4
    JavaScript-নির্ভর পাতায় Playwright/Selenium; ধীরে (time.sleep) ও ক্যাশিংসহ
requests দিয়ে পেজ আনা
BeautifulSoup দিয়ে পার্স
নৈতিকতাrobots.txt ও রেট লিমিট
7

REST APIs for Data

Pull data from APIs.
Advanced
📘 বাংলা: API থেকে ডেটা আনা।
🌐 English: Pull data from APIs.

💡 আধুনিক ডেটার বড় অংশ API দিয়ে আসে—আবহাওয়া, স্যাটেলাইট, সরকারি ডেটা।

  1. 1
    ডকুমেন্টেশন পড়ুন: endpoint, প্যারামিটার, অথেন্টিকেশন, রেট লিমিট
  2. 2
    requests.get(url, params={...}, headers={"Authorization": ...})
  3. 3
    r.raise_for_status(); r.json() থেকে pandas.json_normalize
  4. 4
    পেজিনেশন লুপ, রিট্রাই, API key গোপন রাখা (.env)
HTTP মেথডGET, POST
JSON রেসপন্স পার্স
অথেন্টিকেশন ও পেজিনেশন
💻

হাতে-কলমে কোড · Hands-on code

Run চাপুন — পাইথন আপনার ব্রাউজারেই চলবে (Ctrl+Enter)
import pandas as pd, sqlite3, io
# Mini ETL: extract CSV -> transform -> load into a warehouse table
raw=io.StringIO("date,district,cases\n2026-01-01,Dhaka,12\n2026-01-01,Sylhet,x\n2026-01-02,Dhaka,15\n")
df=pd.read_csv(raw)                                   # Extract
df["cases"]=pd.to_numeric(df.cases,errors="coerce").fillna(0).astype(int); df["date"]=pd.to_datetime(df.date)  # Transform
con=sqlite3.connect(":memory:"); df.to_sql("fact_cases",con,index=False)   # Load
print(pd.read_sql("SELECT district, SUM(cases) total FROM fact_cases GROUP BY district",con))
📝

অনুশীলন · Practice tasks

  1. একটি দৈনিক ETL পাইপলাইনের DAG আঁকুন
  2. PySpark-এ ১০ লাখ সারির groupby (Colab)
  3. একটি পাবলিক API থেকে ডেটা এনে ডাটাবেসে রাখুন
  4. ক্যাপস্টোন: Automated daily data pipeline
❓

কুইজ · Quick quiz

1. Airflow-এ ওয়ার্কফ্লোকে বলে?

2. OLAP কীসের জন্য?

🎬

ভিডিও লাইব্রেরি · Videos

সাইটের ভেতরে ফ্লোটিং প্লেয়ারে চলবে
এই শাখার ভিডিও এখনো সংরক্ষিত হয়নি। যেকোনো টপিক পেজ খুললে ভিডিও স্বয়ংক্রিয়ভাবে খুঁজে MySQL-এ সংরক্ষিত হবে (API key থাকলে)।

📺 Reference channels

🔗

সংযুক্ত বিষয় · Connected

← আগের শাখা🌏 GeoAIপরের শাখা →🚀 MLOps & Deployment
🎬 Video