Hive-पार्टिशन किए गए डेटासेट को स्कैन करना
टीम साफ़ किए गए Parquet checkouts को hive-पार्टिशन लेआउट में भी स्टोर करती है, जहाँ हर साल के लिए एक डायरेक्टरी होती है (checkoutyear=2023/, checkoutyear=2024/). पार्टिशन किए गए डेटासेट को स्कैन करें और पार्टिशन कॉलम पर फ़िल्टर करें ताकि Polars केवल वही साल पढ़े जिनकी आपको वास्तव में ज़रूरत है.
polars pl के रूप में लोड है, और रूट डायरेक्टरी HIVE_DIR में है. पार्टिशन डायरेक्टरीज़ आपके लिए प्रिंट की गई हैं, ताकि आप लेआउट देख सकें.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Polars के साथ Data Pipelines का स्केलिंग और ऑप्टिमाइज़ेशन
अभ्यास निर्देश
- hive partitioning सक्षम करने के लिए सही आर्ग्युमेंट के साथ
HIVE_DIRको स्कैन करें. - नतीजे को 2024 से आगे के checkouts तक फ़िल्टर करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
requests = pl.scan_parquet(
HIVE_DIR,
# Enable hive partitioning
____=True,
)
result = (
requests
# Filter to the 2024 partition
.filter(pl.col("checkoutyear") >= ____)
.group_by("format")
.agg(pl.col("checkouts").sum().alias("total"))
.sort("total", descending=True)
.collect()
)
print(result)