Skip to the content Skip to the Navigation

EDB 코리아 블로그

  • 공식웹사이트US Website
  • EDB 제품Products
  • 블로그KR Blog
  • 고객사례Customer Stories
  • EDB 문서US Docs
  • 문의Contact
  • 02.501.5113Top Page

Postgres Tutorials

  1. HOME
  2. 블로그
  3. Postgres Tutorials
2025-01-21 / Last updated : 2025-05-22 Grace Postgres Tutorials

Postgres C 코드에서 메모리 누수 찾기

필 이튼2024년 3월 27일 지난주 동안 Postgres의 WAL Sender 프로세스에서 메모리 누수를 찾는 작업을 했습니다. Valgrind와 gcc/clang의 Sanitizer를 더 잘 이해하기 위해 며칠을 보냈지만, 결국 그들로부터는 유용한 결과를 얻지 못했습니다. 마침내 bcc 도구 모음에 포함된 memleak 프로그램을 발견했고, 이를 통해 문제의 원인을 바로 찾아낼 수 있었습니다. 처음 이 과정을 이해하는 데 약간 어려움이 있었기 때문에, 제가 거친 과정을 공유하고자 합니다. 이 글에서는 의도적으로 메모리 누수를 유발하는 코드를 사용해 실험합니다. 비록 Postgres에서 발생한 일이긴 하지만, 이 글에서 Postgres에 누수를 도입하여 조사를 시작한다는 점을 제외하면 이 기술들은 폭넓게 유용합니다. 특히, 이 글의 마지막에는 실행 중인 프로그램을 수정하지 않고도 메모리 누수로 이어지는 스택 트레이스를 확인하는 방법을 알 수 있습니다. Valgrind 컴퓨터 공학을 전공하는 […]

2025-01-15 / Last updated : 2025-05-23 Grace Postgres Tutorials

PostgreSQL Linux 튜닝 및 구성: EPAS 성능 최적화 가이드

Lætitia Avrot2024년 8월 1일 EDB Postgres Advanced Server(EPAS) 및 PostgreSQL을 Linux에서 최적화할 수 있는 구성 및 튜닝 권장 사항을 확인하세요. 이 튜닝 가이드는 2020년에 Dave Page, Devrim Günduz, Shaun Thomas, Stacy Scoggins, Vibhor Kumar, Vik Fearing이 작성한 원본을 기반으로 합니다. 2024년 업데이트 버전은 Lætitia Avrot와 Vibhor Kumar가 작성했습니다. 이 권장 사항은 시작점으로, 벤치마크 및 기타 측정 작업이 추가로 필요합니다. 이는 모든 구성 설정을 다룬 포괄적인 목록이 아니며, 기본값으로 설정되지 않은 가장 중요한 매개변수 설정만을 포함합니다. 최적의 튜닝을 위해 EDB의 전문 서비스 팀 또는 EDB의 공인 파트너와 협력하세요. 강력한 PostgreSQL 서버 설계하기 다음 내용은 PostgreSQL용 베어메탈 서버와 가상 머신(VM)에 초점을 맞추고 있습니다. 향후 버전에서는 클라우드 및 컨테이너화된 설계가 포함될 수 있습니다. […]

2025-01-14 / Last updated : 2025-05-23 Grace Postgres Tutorials

PostgreSQL checkpoint 튜닝: 성능 최적화 가이드

Tomas Vondra2024년 7월 11일 PostgreSQL 체크포인트를 적절히 조정하는 것은 시스템에서 많은 쓰기 작업이 발생할 때 성능을 최적화하는 데 필수적입니다. 그러나 체크포인트는 커뮤니티 메일링 리스트나 고객 지원 및 컨설팅 과정에서 자주 혼란과 설정 문제로 지적되는 영역 중 하나입니다. 이 글에서는 PostgreSQL 체크포인트의 개념, 목적, 데이터베이스에서의 구현 방식, 그리고 이를 효과적으로 조정하는 방법에 대해 자세히 다룹니다. PostgreSQL 체크포인트의 목적은 무엇인가요? PostgreSQL은 **WAL(Write-Ahead Log)**을 사용하는 데이터베이스 중 하나입니다. 데이터 파일에 변경 작업이 수행되기 전에, 변경 사항은 별도의 로그(변경 스트림)에 기록됩니다. 이 방식은 내구성을 제공하는데, 시스템 충돌 시 데이터베이스가 WAL을 사용해 복구를 수행하고, WAL에서 변경 사항을 읽어 데이터 파일에 다시 적용할 수 있기 때문입니다. 처음에는 이러한 방식이 비효율적으로 보일 수 있습니다. 데이터 파일을 변경하면서 […]

2025-01-10 / Last updated : 2025-05-23 Grace Postgres Tutorials

PostgreSQL 성능 최적화: 데이터베이스 서버 튜닝 가이드

작성자: Vik Fearing2024년 9월 20일 하드웨어에서 PostgreSQL 쿼리 최적화까지 데이터베이스 성능을 향상시키는 방법 이 문서는 PostgreSQL 및 EDB Postgres Advanced Server(EPAS) 10~13 버전의 성능 튜닝 방법을 소개합니다. 사용된 시스템은 RHEL 계열의 Linux 배포판 8버전이며, 여기서 제시하는 내용은 일반적인 가이드라인으로, 실제 튜닝 세부 사항은 워크로드에 따라 달라질 수 있습니다. 하지만 대부분의 배포 환경에서 시작점으로 활용할 수 있습니다. 튜닝은 하드웨어에서 시작해 스택 상단으로 진행하며, 최종적으로 애플리케이션의 SQL 쿼리 최적화를 다룹니다. 스택 상단으로 갈수록 워크로드에 따른 조정이 중요해지기 때문에, 가장 일반적인 부분부터 시작해 워크로드에 특화된 항목으로 점차 구체화합니다. 머신 설계하기 이 문서는 베어 메탈과 가상화된 머신에 초점을 맞추고 있습니다. 향후 버전에서는 클라우드 및 컨테이너화된 디자인도 포함될 예정입니다. 베어 메탈 PostgreSQL용 베어 메탈 서버를 […]

2024-12-26 / Last updated : 2025-05-22 Grace Postgres Tutorials

PostgreSQL 성능 최적화: 데이터베이스 매개변수 구성 및 튜닝 가이드

스왑닐 수야완시10월 11, 2024 PostgreSQL은 리소스가 부족한 환경과 다양한 다른 애플리케이션과 공유되는 환경에서도 효율적으로 실행할 수 있는 매우 다재다능한 데이터베이스 시스템입니다. 다양한 환경에서 제대로 실행되도록 하기 위해 기본 구성은 매우 보수적으로 되어 있으며 고성능 프로덕션 데이터베이스에는 적합하지 않습니다. 여기에 지리공간 데이터베이스는 사용 패턴이 다르고 데이터가 비지리공간 데이터베이스보다 훨씬 적은 수의 훨씬 큰 레코드로 구성되는 경향이 있다는 사실을 더하면 기본 구성이 우리의 목적에 완전히 적합하지 않다는 것을 알 수 있습니다. 모두가 빠른 데이터베이스를 원한다는 데에는 이견이 없을 것입니다. 하지만 ‘어떤 관점에서 빠름을 추구하는가?’가 더 중요합니다. 데이터베이스에서 ‘빠름’을 결정하는 두 가지 측면 이 두 가지는 서로 연관되어 있지만 확실히 동일하지는 않습니다. 두 가지 모두 I/O 측면에서 완전히 다른 요구 사항을 가지고 있습니다. […]

2024-12-13 / Last updated : 2025-05-22 Grace Postgres Tutorials

오라클(Oracle) 호환성 모드에서 Postgres를 실행하는 방법

EDB 팀8월 08, 2024 Oracle을 오픈 소스 플랫폼으로 손쉽게 마이그레이션하고, EDB Postgres Advanced Server와의 완벽한 호환성을 경험하세요. 엔터프라이즈DB(EDB) 버전의 PostgreSQL의 가장 큰 장점 중 하나는 Oracle 호환성이며, 전문가 팀과 함께 기존 쿼리와 애플리케이션을 사용할 수 있다는 점입니다. Oracle 호환성은 EDB Postgres 고급 서버(EPAS)로 제한되므로 EDB 사이트에서 특정 설치 프로그램 또는 RPM을 다운로드하세요. 60일 동안 제공되는 평가판을 통해 모든 기능을 이용할 수 있습니다. 오라클(Oracle) 호환성 여부 확인 방법 설치 중 Oracle 호환성 설정하기 EDB Postgres Advanced Server를 설치한 후 클러스터를 초기화합니다. edb-as-11.sysconfig 파일을 편집하여 Oracle 호환성 옵션을 설정합니다: 파일이 없는 경우 “–no-redwood-compat” 줄에 해시(#)를 추가하여 EPAS 인스턴스가 Oracle과 호환되는지 확인합니다. 참고: 설치된 서버가 있는 경우, 초기화 클러스터 옵션(initdb)에 “–no-redwood-compat”을 사용하여 비오라클 […]

2024-12-12 / Last updated : 2025-05-22 Grace Postgres Tutorials

Oracle to PostgreSQL 데이터베이스 마이그레이션: GitHub와 DevOps를 활용한 효율적인 전환 방법

작성자 비브호르 쿠마르 2024년 8월 7일 이 가이드를 활용하여 Oracle에서 PostgreSQL로 효율적으로 마이그레이션하세요. DevOps와 GitHub를 활용하여 Postgres와 데이터베이스 마이그레이션을 성공적으로 수행하세요. 많은 조직들이 오라클에서 강력하고 비용 효율적인 오픈 소스 PostgreSQL로 마이그레이션하고 있습니다. EDB Postgres Advanced Server(EPAS)는 오라클 호환성 기능을 통해 이러한 전환을 원활하게 만듭니다. 그러나 대규모 마이그레이션에는 여전히 신중한 계획과 올바른 도구가 필요합니다. 이 블로그 게시물에서는 GitHub를 핵심으로 하는 DevOps 관행의 힘을 활용하는 포괄적인 마이그레이션 전략과 프로세스를 간소화하는 특수 EDB 도구를 간략하게 설명합니다. Oracle to PostgreSQL 데이터베이스 마이그레이션을 위한 초기 스키마 변환 다음 워크플로우는 EDB의 마이그레이션 툴킷과 마이그레이션 포털을 기반으로 합니다. Oracle to PostgreSQL 데이터베이스 마이그레이션 중 스키마 관리 데이터베이스 마이그레이션이 진행됨에 따라 GitHub가 스키마 관리를 위한 중앙 허브가 됩니다. […]

2024-12-10 / Last updated : 2025-05-21 Grace Postgres Tutorials

버그의 여정: 고객 문제 제기에서 PostgreSQL 커밋까지

딜립 쿠마르 작성 2024년 5월 9일 소프트웨어 개발의 복잡한 세계에서 버그는 애플리케이션과 시스템의 원활한 작동을 방해하는 은밀한 존재입니다. 때로는 이러한 버그와의 여정이 고객 문제 제기로 시작되어 조사, 해결, 그리고 궁극적으로는 더욱 견고한 소프트웨어 생태계를 구축하는 일련의 과정으로 이어집니다. 이번 글에서는 하나의 버그가 고객 문제 제기에서 패치 릴리스, 나아가 PostgreSQL의 중요한 서브시스템 재설계로 이어지는 과정을 살펴보겠습니다. 1. 시작: 고객 문제 제기 버그의 여정은 은행 서비스의 데이터베이스 서버에 과도한 부하로 인해 안정성이 위협받는 중요한 문제가 제기된 지원 티켓에서 시작되었습니다.지원팀과 함께 고객과의 통화에서 서버가 과부하로 인해 새로운 연결을 수락할 수 없다는 사실이 드러났습니다. 2. 발견 및 보고 PostgreSQL 개발자로서 첫 번째 단계는 시스템이 대부분의 시간을 소비하는 대기 이벤트를 식별하는 것이었습니다.다음 쿼리를 실행하여 대기 […]

2024-12-10 / Last updated : 2025-05-22 Grace Postgres Tutorials

SQL 인젝션 방어 전략: OWASP와 CISA 권고사항 활용하기

작성자: 니콜 홀든 2024년 4월 29일 SQL 인젝션: 위험성과 사례의 공통점 2024년 3월, CISA는 SQL 인젝션(SQLi)과 관련된 다음과 같은 권고문을 발표했습니다: “디자인부터 안전: 소프트웨어에서 SQL 인젝션 취약점 제거“. SQL 인젝션은 데이터베이스 관리자와 개발자가 방어해야 할 가장 널리 퍼져 있고, 파괴적인 취약점 유형 중 하나입니다. CISA에 따르면, “SQL 인젝션 취약점은 사용자 입력을 SQL 명령에 직접 삽입함으로써 공격자가 임의의 쿼리를 실행할 수 있도록 하는 것이다. 이는 소프트웨어 개발자가 보안 모범 사례를 따르지 않아 데이터베이스 쿼리와 사용자 제공 데이터를 혼합하기 때문에 발생한다”고 합니다. SQL 인젝션이 악용되면, 공격자는 민감한 데이터에 무단 접근하거나 데이터베이스 내용을 수정하며, 심지어는 서버에서 임의의 명령을 실행할 수도 있습니다. 성공적인 SQL 인젝션 공격의 결과는 고객 정보의 유출, 금전적 손실, 평판 훼손, […]

2024-12-04 / Last updated : 2025-05-22 Grace Postgres Tutorials

PostgreSQL로 검색 기능 향상: 표준에서 시맨틱까지

Ajit Gadge 2024년 4월 25일 저는 디지털 세계에서 “검색”이라는 주제에 항상 매료됩니다. 데이터를 텍스트로 바라볼 때, 저는 텍스트가 다른 데이터(예: 숫자는 측정과 계산을 위해 태어난 데이터 ☺)와 비교해 검색을 위해 태어난 데이터라고 항상 믿습니다 ☺. 디지털 시대에 방대한 양의 텍스트 데이터를 효율적이고 효과적으로 분류하는 능력은 매우 중요합니다.   PostgreSQL은 강력한 오픈소스 관계형 데이터베이스로, 간단한 패턴 매칭에서 언어 기반 검색, 더 복잡한 시맨틱 검색 이해에 이르기까지 다양한 검색 기능을 제공합니다. 이 글에서는 “PostgreSQL & 벡터”와 관련된 기사를 검색하는 예를 통해 표준 검색, 풀 텍스트 검색, 시맨틱 검색 방법의 차이점, 사용 사례, 내부 작동 방식을 탐구합니다. 몇 가지 예를 통해 이를 이해해 봅시다. 제가 준비한 예제 데이터는 몇 개의 기사에서 가져온 텍스트를 […]

2024-12-02 / Last updated : 2025-05-22 Grace Postgres Tutorials

EDB Tutorial: EDB Query Advisor를 최대한 활용하는 방법

작성자: Dilip Kumar2023년 8월 7일 엔터프라이즈급 데이터베이스와 DBA의 역할 엔터프라이즈급 데이터베이스는 쿼리 성능을 극대화하는 역할을 담당하는 DBA(Database Administrator)가 필수적입니다. 특히, 대규모 데이터베이스를 운영할 때 DBA의 작업을 최소화하는 것이 중요합니다. 성능을 개선하는 주요 과제 중 하나는 적절한 인덱스를 선택하는 것입니다. 이를 효과적으로 수행하려면 DBA는 데이터베이스 워크로드의 광범위한 부분을 분석한 뒤, 정기적으로 나타나고 워크로드에서 큰 비중을 차지하는 쿼리 계획을 분석해야 합니다. 이후 DBA는 어떤 인덱스가 도움이 될지 평가할 수 있습니다. 하지만, 경우에 따라 이러한 분석이 잘못될 수도 있고, 특정 인덱스를 추가하면 성능이 오히려 저하될 수도 있습니다. 자동 인덱스 선택 도구의 필요성 자동 인덱스 선택 도구는 실제 인덱스를 생성하지 않고도 워크로드 전반에 유용한 인덱스를 식별하는 데 도움을 줄 수 있습니다. EDB Query Advisor는 […]

카테고리

  • EDB 제품 (9)
  • 고객사례 (7)
  • 블로그 (64)
    • EDB Lab (14)
    • Postgres Tutorials (11)
    • Product Updates (13)
    • Technical Blog (22)
  • 개인정보보호
  • 문의하기

Copyright © EDB 코리아 블로그 All Rights Reserved.

Powered by WordPress with Lightning Theme & VK All in One Expansion Unit

MENU
  • 공식웹사이트
  • EDB 제품
  • 블로그
  • 고객사례
  • EDB 문서
  • 문의
  • 02.501.5113
×
  • 엔터프라이즈급 데이터베이스와 DBA의 역할
  • 자동 인덱스 선택 도구의 필요성
  • EDB Query Advisor의 차별점
  • 작동 원리
  • Query Advisor 사용 방법
  • EDB Query Advisor 구성
  • Query Advisor 구성 파라미터
  • 인덱스 추천 생성
→ 목차 보기