3 पॉइंट द्वारा GN⁺ 2025-05-24 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • यह extension AI-आधारित IntelliSense और ‘@pgsql’ GitHub Copilot agent के साथ query लिखने और database management को सरल बनाता है
  • Entra ID authentication, Azure Database for PostgreSQL integration आदि के ज़रिए एकीकृत security और cloud deployment management को support करता है
  • Schema visualization, query history management, context IntelliSense जैसी सुविधाओं के ज़रिए developer productivity और efficiency बढ़ाने पर फोकस करता है
  • कई database connections, passwordless authentication, और सहज UI के साथ onboarding और context switching की लागत को न्यूनतम करता है

परिचय

  • Microsoft ने Visual Studio Code (आगे VS Code) के लिए नए PostgreSQL extension का public preview घोषित किया है
  • यह extension PostgreSQL database management और developer workflow को एक ही environment में आसानी से संभालने के लिए डिज़ाइन किया गया है
  • Developer, VS Code छोड़े बिना database object management, query draft तैयार करना, context IntelliSense, और ‘@pgsql’ GitHub Copilot agent की मदद ले सकते हैं.

डेवलपर्स की चुनौतियाँ और समाधान

  • हाल की 2024 StackOverflow Developer Survey के अनुसार 41% developers context switching की कठिनाई का सामना करते हैं
  • 2024 Stripe Developer Coefficient Report से पता चलता है कि development time का अधिकतम 50% debugging और troubleshooting में खर्च होता है
  • database management और application development को एकीकृत करने वाले extension tools की कमी inefficiency को बढ़ाती है
  • नया extension Postgres database tools और @pgsql GitHub Copilot को एकीकृत करके एक ही environment में development, management, और debugging संभव बनाता है
  • Entra ID authentication, Azure Database for PostgreSQL के साथ करीबी integration आदि के ज़रिए security और centralized management को support करता है

मुख्य फीचर्स

Schema visualization

  • Object Explorer में database item पर right-click करके 'Visualize Schema' विकल्प से schema को visualize किया जा सकता है

Database-aware GitHub Copilot

  • VS Code के भीतर PostgreSQL context को समझने वाला AI support प्रदान करता है
  • natural language के ज़रिए database query, schema optimization, SQL execution आदि को सरल बनाता है
  • “@pgsql” command, “Rewrite Query”, “Explain Query”, “Analyze Query Performance” जैसे context menu के साथ AI-आधारित query analysis/optimization support करता है
  • development के दौरान real-time expert-level guidance और security, performance improvement features प्रदान करता है

Copilot chat agent mode

  • conversation-based intelligent chat agent (@pgsql) सिर्फ़ Q&A तक सीमित नहीं है, बल्कि multi-step tasks भी support करता है
  • यह workspace के वास्तविक context को समझता है, और permission मिलने पर code लिखना और debug करना भी कर सकता है
  • database बनाना, extension activate करना जैसे complex tasks को भी natural language में निर्देशित किया जा सकता है
  • database change operations के लिए स्पष्ट user permission आवश्यक है

Database connection और management

  • local और cloud PostgreSQL instances से आसानी से connect किया जा सकता है
  • multiple connection profiles, connection string parsing, और connection settings को सरल बनाता है
  • Azure Database for PostgreSQL deployments को सीधे browse और filter किया जा सकता है
  • Entra ID integration के साथ security मजबूत होती है और admin-केंद्रित database access management संभव होता है

Passwordless authentication और security

  • Entra ID के साथ passwordless authentication प्रदान करता है
    • manual login की आवश्यकता नहीं, automatic token refresh support
    • authentication timeout को न्यूनतम करता है, development continuity बनाए रखता है
    • enterprise security standards के अनुरूप
    • मौजूदा Entra ID credentials का उपयोग संभव
    • अलग account management की आवश्यकता नहीं

Database explorer और query history

  • schema, table, function आदि database objects को संरचित रूप से देखना और manage करना संभव है
  • object creation, modification, और deletion support करता है
  • query history management से पहले चलाए गए queries का दोबारा उपयोग आसान हो जाता है

Query editing और context IntelliSense

  • SQL keywords, table names, और function names के लिए autocomplete और syntax highlighting support
  • query auto-formatting, history management, और पढ़ने में आसान editing environment प्रदान करता है

अंतर और प्रमुख ताकतें

  • Productivity में सुधार: context IntelliSense, SQL formatting आदि से काम का समय घटता है और errors कम होते हैं
  • Smart AI support: database/workspace-aware Copilot chat agent से multi-step support
  • तेज़ onboarding: connection manager की मदद से beginners भी कुछ ही मिनटों में environment setup कर सकते हैं
  • Security: Entra ID के ज़रिए centralized access control, Azure deployments को आसानी से browse करने की सुविधा
  • Integrated toolset: database object management, query execution, और instance deployment तक सब कुछ VS Code के भीतर संभव
  • Cloud-friendly: Azure Database for PostgreSQL के साथ गहरे integration से cloud database operations सरल होते हैं

शुरुआत कैसे करें

  • VS Code Extensions Marketplace में 'PostgreSQL' खोजें और Preview PostgreSQL extension (नीले हाथी वाले icon) को install करें
  • GitHub Copilot और Copilot chat extension की आवश्यकता होगी, और "@pgsql" command से Copilot के साथ इंटरैक्ट किया जा सकता है

फ़ीडबैक और आगे की योजना

  • VS Code के भीतर feedback tool से user opinions और issues जमा किए जा सकते हैं
  • standard preview license को भविष्य में update किया जाएगा
  • अधिक जानकारी और getting started guide के लिए https://aka.ms/pg-vscode-docs देखें

1 टिप्पणियां

 
GN⁺ 2025-05-24
Hacker News की राय
  • हमारी टीम की रिलीज़ पर बधाई। पिछले हफ़्ते Microsoft sponsor session में इसे सबसे पहले लाइव डेमो करने का मेरा अनुभव साझा कर रहा हूँ। डेमो वीडियो यहाँ देखा जा सकता है। MSFT booth पर एक अलग session भी किया था, लेकिन उसकी recording अभी अपलोड नहीं हुई है। उसकी जगह, मैंने जिन सभी features का demo किया था, उन्हें आप खुद आज़मा सकें, इसके लिए repo यहाँ है। अगर कोई issue आए, तो यहाँ टीम को बताने का अनुरोध है

  • यह tool उन मुख्य समस्याओं को भी हल करता है जिन्हें मैंने पहले अपने बनाए npm package “pgstrap” से सुलझाया था। यह tool database structure को directory के रूप में बनाता है, ताकि मेरे database schema को LLM (large language model) इस्तेमाल कर सकें, और code review के समय table changes साफ़ दिखाई दें। यह मेरे DB की हर table के लिए SQL file बनाता है और schema के हिसाब से directory में व्यवस्थित करता है। यह Rails के schema.rb जैसी अवधारणा है। सोचने वाली बात है कि editor का database-aware होना बेहतर है, या codebase में context commit करना बेहतर है। अगर generated code/artifacts कम हों तो codebase ज़्यादा साफ़ रहता है। लेकिन हर कोई VS Code इस्तेमाल नहीं करता, और हो सकता है कि लोग इस integration का उपयोग करना न जानते हों। DB browser GUI में कभी कोई स्थायी market winner नहीं रहा। फिर भी, VS Code की भारी market share की वजह से यह development environment के भीतर DB browsing का standard बन सकता है। pgstrap लिंक

    • क्या database schema की current state और सभी migrations को version control में रखना web frameworks में पूरी तरह standard नहीं है?
    • उपयोगी tool है, साझा करने के लिए धन्यवाद। क्या यह tables/columns/indexes के अलावा triggers और stored procedures जैसी चीज़ें भी output करता है? कई tools table definitions पर ही रुक जाते हैं। DB की ज़्यादा capabilities का उपयोग करने वाले tools की ज़रूरत है
    • MCP server (और copilot/cline) के साथ मेरे DB के लिए सिर्फ़ एक read-only login इस्तेमाल करने का तरीका साझा किया
  • पहली नज़र में यह tool सचमुच शानदार लगता है। यह देखकर हैरानी हुई कि Microsoft, SQL Server के बजाय Postgres के लिए tool पर इतनी मेहनत कर रहा है। शायद Postgres की demand उतनी ज़्यादा है

    • VS Code में Microsoft SQL Server extension पहले से मौजूद है, और यह नया tool दरअसल उसी का लगभग clone लगता है। खुद इस्तेमाल करने पर menus, dialogs वगैरह सब काफ़ी समान लगे। पहले Azure Data Studio (अब discontinued) इस extension का आधार था। SQL Server extension लिंक
    • Microsoft developer evangelist के नज़रिए से देखें तो SQL Server और PostgreSQL extension teams, दोनों ही बहुत मेहनत कर रही हैं। दोनों teams के usability tests और bug bash में शामिल होने के अनुभव से यह साफ़ दिखा कि वे developer-friendly tools बनाना चाहती हैं। जो भी चाहिए, उसका feedback ज़रूर दें। SQL Server updates के लिए Carlos Robles और PostgreSQL updates के लिए Joshua Johnson को follow करने की सलाह
    • मेरा अनुमान है कि MSSQL tool ADS के ज़रिए लगातार maintain होता रहा और उसकी quality भी अच्छी रही। Azure Data Studio अब बंद किया जा रहा है, और VS Code के Postgres extension में पिछले 6 साल से कोई meaningful commit नहीं था। इससे पहले Postgres के लिए कोई अच्छा विकल्प नहीं था, इसलिए मैं ADS का इस्तेमाल करता रहा। संदर्भ लिंक
    • क्या SQL Server Management Studio (SSMS) पहले से यही काम नहीं कर रहा? शायद योजना यह हो कि आख़िरकार SSMS को VS Code में ले जाया जाए। इसलिए हो सकता है कि पहले Postgres support के साथ प्रयोग किया जा रहा हो। SSMS लिंक
    • काश SQLite के लिए भी ऐसा ही कोई extension होता
  • मैंने तय कर लिया है कि इस extension को खुद ज़रूर आज़माऊँगा। मेरे career की शुरुआत SQL Server से हुई थी और SSMS मुझे बिल्कुल सही लगता है। करीब 10 साल से Postgres इस्तेमाल कर रहा हूँ, लेकिन pgadmin, dbeaver, datagrip जैसी management/query tools से पूरी तरह संतुष्ट नहीं रहा। Postgres DBMS अपने आप में शानदार है, और SQL Server भी कीमत को छोड़ दें तो बेहतरीन है। लेकिन community में Postgres के DB tooling ecosystem को लेकर और ज़्यादा असंतोष क्यों नहीं है, यह मेरे लिए रहस्य है

    • निजी तौर पर अब तक इस्तेमाल किए गए general-purpose DB tools में Datagrip सबसे ज़्यादा प्रभावशाली लगा। कई DB tools आज़माए, लेकिन ज़्यादातर ऐसे लगे जैसे DB experts ने बनाए हों; IDE experts द्वारा बनाए गए products बहुत कम दिखे। features, extensibility, और improvement speed हर मामले में बहुत संतोषजनक। open source विकल्पों (pgadmin, dbeaver) से यह अलग स्तर का लगता है। Oracle के काम में Datagrip ने मेरी मानसिक शांति बचाई
    • लगभग ज़्यादातर SQL developers वास्तव में tooling पर ज़्यादा ध्यान नहीं देते। आमतौर पर database/table design करने वाले अलग होते हैं, और ज़्यादातर developers DB से ज़्यादा tables/views तक सीमित रहते हैं; indexes पर तो वे लगभग ध्यान ही नहीं देते। tooling में दिलचस्पी रखने वाले लोग 'developer DBA' कहलाते हैं, वे बहुत कम होते हैं, और इसलिए उनकी hiring मुश्किल तथा attrition high रहती है
  • JetBrains की VSCode पर एक साफ़ बढ़त यह है कि वह बढ़िया built-in DB tools देता है

    • हर साल कम से कम एक बार VSCode पर लौटने की कोशिश करता हूँ, लेकिन JetBrains की मज़बूत git और DB integration हमेशा रोक देती है
    • Datagrip को अलग से इस्तेमाल करना भी संभव है, और मैंने वही रास्ता चुना है
  • Postico हमेशा Postgres के साथ काम करने के लिए मेरा standard tool रहा है। क्या किसी Postico user ने यह नया extension आज़माया है?

    • Postico ज़्यादा Mac-केंद्रित है, और IntelliJ का built-in DB editor features के मामले में कहीं अधिक समृद्ध लगता है
    • 10 साल से ज़्यादा समय से Postico इस्तेमाल करने वाले user के रूप में, मैं इस extension को भी आज़माने वाला हूँ। उम्मीद है कि node-pg के साथ इस्तेमाल करते समय Copilot schema को पहचान पाएगा
  • अभी Microsoft में सबसे "valuable" IDE कौन-सा है, यह जानने की उत्सुकता है। कुछ साल पहले तक VSCode को "beginners के लिए Visual Studio" की तरह promote किया जाता था, लेकिन अब VSCode सबसे ज़्यादा इस्तेमाल होने वाला "IDE" बन गया है। Visual Studio को मुख्यतः "legacy" के रूप में देखा जाता है, हालांकि C++ और .NET के लिए यह अभी भी अच्छा है

    • developer reach के हिसाब से तो निस्संदेह VSCode ही है। भले किसी को MS ecosystem में ज़्यादा रुचि न हो, .Net developers अब काफ़ी संख्या में Rider इस्तेमाल कर रहे हैं, और Visual Studio शायद Eclipse/Netbeans की तरह उन environments में रह गया है जहाँ बदलाव कठिन है। मैं खुद emacs user हूँ, लेकिन non-Windows environment में SQL Server इस्तेमाल करना हो तो मजबूरी में VSCode खोलना पड़ता है
    • profitability के हिसाब से Visual Studio कहीं आगे होगा। enterprise workflows और plugins का बड़ा हिस्सा शायद VSCode में port नहीं होगा। लेकिन MS ecosystem के entry channel, mindshare, और web IDE तक विस्तार की क्षमता में VSCode आगे है। कई फायदों के साथ-साथ Electron shell की सीमाओं पर भी अफ़सोस जताया गया
    • भारी अंतर से VSCode। यह मुफ़्त है, लेकिन MS ecosystem में आने का gateway बनता है और इससे MS developer market में बना रहता है
    • game industry में Visual Studio अब भी व्यापक रूप से इस्तेमाल होता है, और कुछ platforms को target करते समय यह अनिवार्य है। Rider का इस्तेमाल बढ़ रहा है, लेकिन build system के हिस्से के रूप में VS अभी भी साथ चलता है
    • VSCode से Visual Studio में जाकर "real developer" बनने वाली branding कभी वास्तव में नहीं थी। Python/HTML/JavaScript जैसी चीज़ें शुरू से ही VS में ठीक से नहीं चलती थीं, इसलिए कोई वास्तविक migration path था ही नहीं
  • क्या यह Microsoft Access और PostgreSQL के लगभग 30 साल बाद फिर मिलने जैसा है?

    • अगर मैं Access से जुड़ी कोई बात miss कर रहा हूँ तो कृपया बताइए। अगर DBeaver से बेहतर कोई विकल्प है तो उसकी सिफारिश चाहूँगा
  • क्या SQLite में भी ऐसी functionality है? क्या हर DB के लिए पूरी तरह नया extension चाहिए, या कुछ हिस्सा shared/reusable हो सकता है?

  • VSCode काफ़ी ठीक लगता है, लेकिन काश कई monitors पर खुद VSCode को फैलाकर इस्तेमाल करने का आसान तरीका होता। अभी मैं code एक monitor पर और DB tool के लिए दूसरे monitor पर DataGrip इस्तेमाल करता हूँ

    • VSCode पहले से multi-monitor support देता है, official docs देखें
    • अनुभव से कह सकता हूँ कि VSCode में tabs को अलग windows में निकालकर कई monitors पर रखा जा सकता है। terminal के साथ भी ऐसा संभव है। UI बहुत intuitive नहीं है, लेकिन एक बार आदत हो जाए तो काफ़ी संतोषजनक है। code और terminal को साथ-साथ रखना भी संभव है (और emacs में यह बहुत पहले से संभव था)
    • कल ही पता चला कि tabs को नई window में detach किया जा सकता है। यह पूरी तरह natural multi-monitor अनुभव नहीं है, लेकिन दो monitors पर रखना संभव है, इसलिए जानकारी के लिए बता रहा हूँ
    • hardware से समस्या हल करने का तरीका भी है, यानी एक 38-inch ultrawide monitor ले लीजिए