SQLServer/PostgreSQL

PostgreSQL 스터드 그룹 (2024~)

PostgreSQL 스터디 그룹의 이력을 기록합니다. 지금까지 스터디 교재 이력은 다음과 같습니다. 교재 (자료) 설명 PostgreSQL 공식 문서Part 1의 TutorialPart 2의 The SQL Language를 공부했습니다.필요에 따라 Administration, Server Programming, Internals Part와 기타 다른 자료를 참고했습니다. 위데이터랩㈜에서 제공해주신 “Admin” 온라인 과정을 함께 듣고, 스터디, 토론했습니다. 오래전 버전과 내용이라 PG16/17 기준에서는 차이가 많이 있지만 그래도 Tuning, Internal 등을…

SQL Server 벡터 인덱스 및 검색 기능 개선

SQL Server 벡터 인덱스 및 검색 기능 개선 적용 대상: Azure SQL Database, SQL Database in Microsoft Fabric SQL Server (온프레미스)에는 아직 초기 기능이 적용되어 있습니다.   올해 2026년 초에 진행한 SQL Server 2025 New Features 세미나에서 SQL Server와 AI 통합이라는 주제로 새로 도입된 벡터 데이터베이스 기능을 소개했었습니다. 초기 릴리스에서 가장 아쉬웠던 부분은 테이블에 벡터…

ANSI SQL 표준 문자열 연결 연산자 II

ANSI SQL 표준 문자열 연결 연산자 II 상대적으로 ANSI 표준을 열심히 따르는 SQL Server의 이력을 생각한다면 충분히 공감이 됩니다. SQL Server에는 기존의 문자열 연결을 위해서 사용되는 방법들 예를 들어 + 연산자 또는 CONCAT() 함수가 있었습니다. 반면에 PostgreSQL과 같은 일부 DBMS에서는 || 연산자를 동일한 용도로 많이들 사용하죠 더불어 이것이 ANSI SQL 표준이기 때문에 다중 DBMS 환경을…

새로운 집계함수 PRODUCT()

새로운 집계함수 PRODUCT() 시대적 변화와 필요한 요구 사항은 끝없이 요청되고 반영되는 것 같습니다. SQL Server 2025의 새로운 TSQL 함수 중 개인적으로 눈에 뛴 것이 바로 PRODUCT() 함수입니다. 이름만으로도 앗 혹시 그건가? 라고 충분히 짐작 가능한 목적의 함수였습니다.   1. 누적곱(데카르트곱) 계산, PRODUCT 기존의 SUM() 또는 AVG() 등은 누적합(시그마)을 구하는 연산입니다. 반면에 누적곱을 구하는 함수는 없었죠.…

RESOURCE GOVERNOR로 tempdb 최대 사용량 제한

RESOURCE GOVERNOR로 tempdb 최대 사용량 제한 또 한 가지 국내 사용량이 극히 적어 매우 아쉬운 기능입니다. 리소스 관리자(Resource Governor)라는 기능은 단일 서버의 CPU, 메모리, IO와 같은 리소스를 서로 다른 주체를 기준으로 분할해서 사용하고 실 시간으로 사용량을 제어할 수 있는 아주 좋은 기능입니다 다만 이전까지는 Enterprise Edition 전용이어서 선택지가 아니었지만 드디어 SQL Server 2025부터 Standard Edition에서도…

Columnstore Index 향상

Columnstore Index 향상 DW(OLAP, BI, DA)성 테이블과 쿼리를 위한 Columnstore Index(이하 CSI) 기능도 버전에 따라 지속적으로 개선되고 있습니다. SQL Server 2025에서 여러가지 개선들이 있지만 그 중에서 가장 중요한 부분은 2022에서 Clustered CSI에서의 ORDER 절 지원에 이어 이제 Nonclustered CSI에서도 ORDER절을 지원한다는 것입니다. 그 외 ORDER 절과 함께 온라인으로 인덱스 빌드 지원 등 몇 가지를 소개하겠습니다.…

ABORT_QUERY_EXECUTION 쿼리 힌트

ABORT_QUERY_EXECUTION 쿼리 힌트 DB 서버의 성능이나 안전성에 큰 영향을 미치는 쿼리가 실행되는 경우 관계자들의 고통스러운 시간이 시작됩니다. 일차적으로 상황을 인식하는 단계를 시작으로 진단, 분석, 조치해서 다시 안정화될 때까지 때론 단순하지만 많은 경우 매우 복잡하고 긴 시간을 거치기도 합니다. 개인적으로도 간헐적으로 고객사에서 특정 고부하 쿼리로 인해 긴급한 연락을 받은 경우가 있고 그 때마다 담당자와 함께 어렵고…

Optimized sp_executesql

Optimized sp_executesql SQL Server 2025의 두 번째로 소개하고 싶은 새로운 기능입니다. .NET Entity Framework(Core)과 같은 ORM 기반이든 명시적으로 실행되는 형식이건 일반적인 매개변수 쿼리는 SQL Server에서 sp_executesql로 호출됩니다. sp_executesql과 Optimized의 기본 소개는 MS Learn 문서를 참조하세요. 이 방식이 동시에 대량 호출되는 경우 그 이득이 감소되거나 예상치 못한 성능이 나올 수 있습니다. 이를 방지하기 위해 새로운 매커니즘이…

Optional Parameter Plan Optimization

Adaptive Plan Optimization (a.k.a. Multiple Plan) 확장 Optional Parameter Plan Optimization (이하 OPPO) 하나의 쿼리가 한 번의 하나의 실행 계획만 가진다는 기본 구조로 인해 생기는 부작용을 해결하기 위해 SQL Server는 Multiple Plan 전략을 도입하기 시작했습니다, 일명 Adaptive Plan Optimization입니다. 이를 위해 SQL Server 2022에서 처음 Parameter Sensitive Plan Optimization(PSPO)이 도입되었습니다(필자는 다른 방식의 PSPO를 SQL 개발팀에…