منصوبے کے بارے میں
SQLGlot ایک ڈیپنڈنسی فری SQL پارسر فراہم کرتا ہے جو وسیع اقسام کے SQL ان پٹ پڑھ سکتا ہے اور ہدف ڈائلیکٹس میں نحوی اور معنوی طور پر درست SQL پیدا کر سکتا ہے۔ اس میں ایک ٹرانسپائلر شامل ہے جو DuckDB، Presto/Trino، Spark/Databricks، Snowflake، BigQuery اور دیگر جیسے ڈائلیکٹس کے درمیان سوالات کو تبدیل کرنے کے لیے استعمال ہوتا ہے۔ لائبریری ایک آپٹیمائزر پیش کرتی ہے جو سوالات کو ایک معیاری AST میں دوبارہ لکھتی ہے، AST انٹروسپیکشن، ڈِفنگ، اور SQL ایکسپریشنز کی پروگرامیٹک تعمیر یا ترمیم کے لیے افادیتیں فراہم کرتی ہے۔ صارفین کالم اور ٹیبل جیسی میٹا ڈیٹا نکال سکتے ہیں، تفصیلی غلطی پیغامات کے ساتھ نحوی غلطیوں کا پتہ لگا سکتے ہیں، اور غیر تعاون یافتہ خصوصیات کو قابل ترتیب انتباہ یا غلطی کی سطحوں کے ذریعے سنبھال سکتے ہیں۔ SQLGlot میں Python ڈکشنریوں کے خلاف SQL کا جائزہ لینے کے لیے ایک ہلکا پھلکا ایگزیکیوٹر بھی شامل ہے، جو جانچ اور پروٹوٹائپنگ کے لیے مفید ہے۔ Dialect کلاس کو سب کلاس کر کے حسب ضرورت ڈائلیکٹس شامل کیے جا سکتے ہیں، اور پلگ ان ڈائلیکٹس کو انٹری پوائنٹس کے ذریعے تقسیم کیا جا سکتا ہے۔ کارکردگی بینچ مارکس ظاہر کرتے ہیں کہ خالص Python ورژن مسابقتی ہے، جبکہ mypyc سے مرتب شدہ ورژن تقریباً 3-5 گنا رفتار میں بہتری فراہم کرتا ہے۔ یہ پروجیکٹ SQLMesh، Apache Superset، Dagster، Ibis اور dlt جیسے ٹولز کے ذریعے استعمال ہوتا ہے، اور وسیع دستاویزات، ایک ٹیسٹ سوٹ، اور انٹرول سادگی کے لیے dateutil جیسے اختیاری ڈیپنڈنسی فراہم کرتا ہے۔
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.