2P by GN⁺ 11시간전 | ★ favorite | 댓글 1개
  • 이 확장은 AI 기반 IntelliSense와 ‘@pgsql’ GitHub Copilot 에이전트로 쿼리 작성 및 데이터베이스 관리를 간소화함
  • Entra ID 인증, Azure Database for PostgreSQL 연동 등으로 통합된 보안 및 클라우드 배포 관리 지원
  • 스키마 시각화, 쿼리 이력 관리, 컨텍스트 인텔리센스 등 개발자의 생산성 및 효율성 향상에 초점을 맞춤
  • 여러 데이터베이스 연결, 무비밀번호 인증, 직관적인 UI로 온보딩과 작업 전환 비용을 최소화함

소개

  • Microsoft는 Visual Studio Code(이하 VS Code)를 위한 새로운 PostgreSQL 확장 프로그램의 공개 프리뷰를 발표함
  • 이 확장은 PostgreSQL 데이터베이스 관리와 개발자 워크플로우를 단일 환경에서 손쉽게 처리하도록 설계됨
  • 개발자는 VS Code를 벗어나지 않고도 데이터베이스 객체 관리, 쿼리 초안 작성, 컨텍스트 인텔리센스 및 ‘@pgsql’ GitHub Copilot 에이전트의 도움을 받을 수 있음.

개발자들이 겪는 어려움과 해결 방안

  • 최근 2024 StackOverflow 개발자 설문조사에 따르면 41%의 개발자가 작업 전환의 어려움을 겪고 있음
  • 2024 Stripe Developer Coefficient Report에서는 개발 시간의 최대 50%가 디버깅 및 문제 해결에 소요됨을 확인할 수 있음
  • 데이터베이스 관리와 애플리케이션 개발을 통합하는 확장 툴 부재가 비효율성에 영향을 줌
  • 새 확장은 Postgres 데이터베이스 도구와 @pgsql GitHub Copilot을 통합하여 하나의 환경에서 개발, 관리, 디버깅을 처리할 수 있음
  • Entra ID 인증, Azure Database for PostgreSQL와의 긴밀한 연동 등 보안과 중앙 집중 관리를 지원함

주요 기능

스키마 시각화

  • 오브젝트 탐색기(Object Explorer)에서 데이터베이스 항목을 오른쪽 클릭하면 'Visualize Schema' 옵션을 통해 스키마를 시각화할 수 있음

데이터베이스 인식 GitHub Copilot

  • VS Code 내에서 PostgreSQL 컨텍스트를 인식하는 AI 지원 제공
  • 자연어를 통한 데이터베이스 질의, 스키마 최적화, SQL 실행 등 간소화
  • “@pgsql” 명령어, “Rewrite Query”, “Explain Query”, “Analyze Query Performance”와 같은 컨텍스트 메뉴로 AI 기반 쿼리 분석/최적화 지원
  • 개발 중 실시간 전문가 수준의 가이드와 보안, 성능 향상 기능 제공

Copilot 채팅 에이전트 모드

  • 대화 기반의 지능형 채팅 에이전트(@pgsql)가 질의 응답을 넘어서 다단계 작업까지 지원
  • 워크스페이스 실제 컨텍스트를 이해하며, 허가를 받아 코드 작성 및 디버그도 수행 가능
  • 데이터베이스 생성, 확장 활성화 등 복잡한 작업도 자연어로 지시 가능
  • 데이터베이스 변경 작업에는 명시적 사용자 허가 필요

데이터베이스 연결 및 관리

  • 로컬 및 클라우드 PostgreSQL 인스턴스에 손쉽게 연결
  • 다수의 연결 프로필, 연결 문자열 파싱, 연결 정보 설정의 간편화
  • Azure Database for PostgreSQL 배포를 직접 탐색, 필터링 가능
  • Entra ID 연동으로 보안성 강화 및 관리자 중심 데이터베이스 접근 관리

무비밀번호 인증 및 보안

  • Entra ID로 무비밀번호 인증 제공
    • 수동 로그인 불필요, 자동 토큰 갱신 지원
    • 인증 시간초과 최소화, 개발 중 연속성 보장
    • 엔터프라이즈 보안 기준 호환
    • 기존 Entra ID 자격증명 사용 가능
    • 별도의 계정 관리 필요 없음

데이터베이스 탐색기 및 쿼리 이력

  • 스키마, 테이블, 함수 등 데이터베이스 오브젝트 구조적으로 확인 및 관리 가능
  • 오브젝트의 생성, 수정, 삭제 지원
  • 쿼리 이력 관리로 과거 실행 쿼리의 재활용이 용이

쿼리 편집 및 컨텍스트 인텔리센스

  • SQL 키워드, 테이블명, 함수명 자동 완성 및 문법 하이라이트 지원
  • 쿼리 자동 포매팅, 이력 관리, 읽기 쉬운 편집 환경 제공

차별점 및 강점

  • 생산성 향상: 컨텍스트 인텔리센스, SQL 포매팅 등으로 작업 시간 단축, 오류 감소
  • 스마트 AI 지원: 데이터베이스/워크스페이스 인식형 Copilot 채팅 에이전트의 다단계 지원
  • 빠른 온보딩: 연결 관리자 덕분에 초보자도 수 분 내 환경 셋업 가능
  • 보안성: Entra ID 도입을 통한 중앙 집중적 접근통제, Azure 배포 탐색 용이
  • 통합 도구 집합: 데이터베이스 객체 관리, 쿼리 실행, 인스턴스 배포까지 VS Code 내에서 가능
  • 클라우드 친화성: Azure Database for PostgreSQL과의 깊은 통합으로 클라우드 데이터베이스 운영 간소화

시작 방법

  • VS Code Extensions Marketplace에서 'PostgreSQL' 검색 후 Preview PostgreSQL extension(파란 코끼리 아이콘) 설치
  • GitHub Copilot 및 Copilot chat 확장이 필요하며, "@pgsql" 명령어로 Copilot과 상호작용 가능

피드백 및 향후 계획

  • VS Code 내 피드백 도구로 사용자 의견 및 이슈 제출 가능
  • 표준 프리뷰 라이선스는 향후 업데이트 예정
  • 자세한 정보 및 시작 가이드는 https://aka.ms/pg-vscode-docs 참고
Hacker News 의견
  • 우리 팀의 출시를 축하하는 마음. 지난주 Microsoft 스폰서 세션에서 이걸 실제로 가장 먼저 시연했던 경험 공유. 시연 영상을 여기에서 볼 수 있는 안내. 또 MSFT 부스에서 별도의 세션을 진행했지만 아직 녹화본은 미업로드 상태. 대신 내가 시연했던 모든 기능을 직접 따라해볼 수 있는 레포가 여기 있다는 정보 공유. 만약 이슈가 생기면 이곳에서 팀에 알려달라는 안내

  • 예전에 직접 만든 npm 패키지 “pgstrap”을 통해 해결했던 주요 문제를 이번 툴이 또 해결해주는 내용 언급. 이 툴은 데이터베이스 구조를 디렉토리 형태로 생성해서 내 데이터베이스 스키마를 LLM(대형 언어모델)이 활용할 수 있게 하고, 코드 리뷰 시 테이블 변경사항을 확실히 볼 수 있게 만드는 장점. 내 DB의 각 테이블마다 SQL 파일을 생성하고 스키마마다 디렉토리로 정리. Rails의 schema.rb와 유사한 개념. 에디터가 데이터베이스를 인식하는 게 더 나은지, 아니면 코드베이스에 컨텍스트를 커밋하는 게 나은지 고민. 생성되는 코드/산출물이 적어지면 코드베이스는 더 깔끔함. 하지만 모든 사람이 VS Code를 쓰는 것도 아니고 이 통합을 활용할 줄 모를 수도 있는 현실. DB 브라우저 GUI는 항상 시장 우승자가 없었음. 그렇지만 VS Code의 압도적 점유율로 인해 개발 환경 내 DB 조회의 표준이 될 수도 있다는 전망 제시. pgstrap 링크

    • 데이터베이스 스키마의 현재 상태와 모든 마이그레이션을 버전 컨트롤에 포함하는 게 웹 프레임워크의 완전 표준이라는 의문 제기
    • 실용적인 툴이라는 평가와 함께 공유에 대한 감사 표시. 테이블/컬럼/인덱스 외에 트리거나 스토어드 프로시저 등도 출력하는지 궁금증. 많은 툴이 테이블 정의에서 그친다는 점 지적. DB의 더 많은 기능을 활용할 도구가 더 필요하다는 바람
    • MCP 서버(및 copilot/cline)로 내 DB에 read only 로그인 하나만 사용하는 방식 소개
  • 이 툴이 정말 멋져보인다는 첫 인상. Microsoft가 SQL Server 대신 Postgres용 툴에 심혈을 기울인 점이 놀라움. 그만큼 Postgres의 수요가 많다는 추측

    • 이미 Microsoft SQL Server 확장 기능이 VS Code에 있는데 이번에 나온 건 사실상 그와 비슷한 클론이라는 의견. 직접 써보니 메뉴, 대화창 등 전체적으로 동일한 느낌. 예전에는 Azure Data Studio(이젠 지원 종료)가 이 확장의 기반이었다는 설명. SQL Server 확장 링크
    • Microsoft 개발자 에반젤리스트 입장에서 보면, SQL Server와 PostgreSQL 확장 개발팀 모두 각자 엄청난 노력을 쏟고 있다는 경험 공유. 두 팀 모두의 사용성 테스트, 버그배시 참가 경험을 통해 개발자 친화적인 도구를 만들려는 열정을 확인했다는 이야기. 필요한 점을 꼭 팀에 피드백해달라는 요청. SQL Server 소식은 카를로스 로블레스 PostgreSQL 소식은 Joshua Johnson 팔로우 안내
    • 내 생각엔 MSSQL 툴이 ADS를 통해 지속적으로 관리되어왔고, 품질도 높았기 때문이라는 추측. Azure Data Studio는 이제 종료되는 중이고, VS Code용 Postgres 확장은 최근 6년간 의미있는 커밋이 없었다는 이야기. 이전까지는 Postgres용 대체제가 없어 계속 ADS를 썼었다는 경험. 참조 링크
    • SQL Server Management Studio(SSMS)가 이미 유사한 역할을 담당하고 있지 않나 하는 생각. 아마 SSMS를 궁극적으로 VS Code로 옮기려는 계획이 있을 것으로 추정. 그래서 먼저 Postgres 지원으로 실험중일 수 있다는 견해. SSMS 링크
    • SQLite에도 이런 비슷한 확장이 있으면 좋겠다는 바람
  • 이 확장을 꼭 직접 써보겠다는 결심. 내 커리어의 시작은 SQL Server였고 SSMS가 내게 딱 맞는다는 이야기. Postgres를 10년 가까이 써왔지만 pgadmin, dbeaver, datagrip 등 관리/쿼리 툴이 만족스럽지 못했다는 고백. Postgres DBMS 자체는 훌륭하고 SQL Server 역시 비용만 빼면 최고라는 생각. 다만 커뮤니티에서 Postgres의 DB 툴링 생태계에 불만이 더 커야 하는데 조용했던 점이 미스터리

    • 개인적으로 지금까지 써본 범용 DB 툴 중에서 Datagrip이 압도적으로 인상적이라는 평가. 여러 DB 툴을 써봤지만 대부분 DB 전문가가 만든 느낌이고 IDE 전문가가 만든 제품은 드물다는 시각. 기능, 확장성, 개선 속도 등 모든 면에서 만족감. 오픈소스(pgadmin, dbeaver)와는 차원이 다르다는 생각. Oracle 업무에선 Datagrip이 정신건강을 지켜줬다는 경험 공유
    • 거의 대부분의 SQL 개발자는 실은 툴링에 크게 신경 쓰지 않는다는 현상 진단. 대체로 데이터베이스/테이블 설계자는 따로 있고, 보통 개발자는 DB보단 테이블/뷰만 신경쓰며 인덱스엔 신경을 거의 안쓰는 경향. 툴링에 관심 있는 사람은 '개발 DBA'라 불리며 매우 드물고, 그만큼 구인도 어렵고 이직률도 높다는 업계 현실
  • JetBrains가 VSCode 대비 확실하게 우위에 있는 점으로 깔끔한 내장형 DB 툴 제공을 꼽는 이야기

    • 매년 한 번씩은 VSCode로 돌아가려고 시도하지만 JetBrains만의 강력한 git 및 DB 통합 기능이 항상 발목을 잡는다는 고백
    • 별도로 Datagrip만 따로 써도 되는데 자신은 이 방식을 선택했다는 경험 공유
  • Postico가 늘 Postgres와 상호작용하는 나만의 표준 도구였다는 이야기. 혹시 Postico 사용자 중에 새 확장을 써본 사람이 있는지 궁금

    • Postico는 Mac에 특화된 편이고, IntelliJ 내장 DB 에디터가 기능 면에서 훨씬 풍부하다는 생각
    • Postico를 10년 넘게 써온 사용자로서 이번 확장도 시도해보겠다는 계획. node-pg와 함께 사용할 때 Copilot이 스키마 인식해주길 바라는 기대
  • 현재 Microsoft에서 가장 "가치 있는" IDE가 무엇인지 궁금하다는 점에서, 몇 년 전만 해도 VSCode는 "초보자용 Visual Studio"처럼 홍보됐었는데 최근엔 VSCode가 가장 많이 쓰이는 "IDE"가 되었다는 현상 공유. Visual Studio는 주로 "레거시"(C++ 및 .NET에는 여전히 좋지만)로 여겨진다는 시각

    • 개발자 도달 범위면에서는 단연 VSCode라는 평가. MS 생태계에 큰 관심이 없더라도 .Net 개발자들은 Rider를 많이 쓰는 추세이고, Visual Studio는 Eclipse/Netbeans처럼 변화가 어려운 환경에 주로 남아있다는 전망. 자신은 emacs 유저지만 SQL Server를 비Windows 환경에서 쓸 때는 어쩔 수 없이 VSCode를 켜게 된다는 고백
    • 수익성 차원에서는 Visual Studio가 훨씬 높다는 생각. 엔터프라이즈 워크플로우 및 플러그인 중 상당수는 VSCode로 이식되지 않을 것으로 예상. 하지만 MS 생태계 입문 채널, 마인드쉐어, 웹 IDE로의 확장성 등은 VSCode가 우위를 점한다는 진단. 여러 장점 설명과 더불어 Electron shell의 한계에 대한 아쉬움 표출
    • 압도적으로 VSCode라는 주장. VSCode는 무료이지만 MS 생태계 유입 관문 역할을 하며 MS가 개발자 시장에 계속 남게 만드는 효과를 준다는 분석
    • 게임 산업에서는 Visual Studio가 여전히 널리 쓰이고 있고, 일부 플랫폼을 타겟팅할 때 필수라고 언급. Rider가 점점 쓰이고 있지만 빌드시스템 일부로 VS가 함께 사용됨
    • VSCode에서 Visual Studio로 "진짜 개발자"가 되면 이동하는 구조로 홍보된 적은 전혀 없었다고 지적. Python/HTML/JavaScript 등은 애초에 VS에서 잘 안 돌아가서 실질적 이동 경로 자체가 없었다는 설명
  • Microsoft Access와 PostgreSQL이 약 3십년 만에 다시 만나는 느낌이라는 질문

    • Access와 관련된 부분을 놓친 게 있다면 안내해달라는 요청. DBeaver보다 좋은 대안이 있다면 추천받고 싶다는 현실적 토로
  • SQLite에서도 이런 기능이 있는지 궁금. 매 DB마다 완전히 새로운 확장이 필요한지, 아니면 공용으로 활용할 수 있는 부분이 있는지 질문

  • VSCode가 썩 괜찮아보이지만, 여러 모니터에서 VSCode 자체를 분산해 사용하는 쉬운 방법이 있었으면 좋겠다는 바람. 현재는 코드는 한 모니터, DB툴은 DataGrip에서 다른 모니터로 나눠 쓰는 중

    • VSCode가 이미 멀티 모니터를 지원하며, 공식 문서 안내
    • VSCode에서 이미 탭을 별도의 창으로 분리해 여러 모니터에 둘 수 있다는 경험 공유. 터미널도 가능. UI가 직관적이진 않지만 익히면 매우 만족스럽다는 평. 코드와 터미널을 나란히 두기도 가능하다는 예시(예전부터 emacs에서는 이런 기능이 가능했다는 언급)
    • 어제 알게 된 사실로 탭을 새 창으로 분리 가능하다는 점. 완전히 자연스러운 멀티모니터 경험은 아니지만 두 모니터에 둘 수 있어 일단 참고하라는 의견
    • 하드웨어로 문제를 푸는 방식, 즉 38인치 초광폭 모니터 하나로 해결하는 방법도 제안