database 28

PostgreSQL - Vacuum의 A to the Z

1. Intro PostgreSQL에서 Vacuum은 DB의 성능을 높이는 부분에 있어 매우 중요한 기능입니다. 또한 Vacuum은 MVCC를 구현하기위해 PostgreSQL에만 있는 개념이기에 그 차이점에 더 주목해야합니다. 우리는 Vacuum의 단어에서 짐작할 수 있듯이 DB를 ‘청소’를 한다는 의미와 일맥상통합니다. 더러워진 공간을 청소하여 새로운 공간을 만드는 것입니다. 한마디로 Vacuum은 디스크에서 불필요한 공간을 정리하여 용량을 성능을 높이는 작업을 말합니다. Vacuum에 대해 자세히 알기전에, DB의 MVCC개념을 먼저 이해해야 합니다. ​ ​ ​ 2.MVCC의 중요성 DB에 많은 사용자들이 접근한다고 하였을 때, 사용자들은 각각 데이터를 변경하거나 조회를 합니다. 이때 많은 작업들이 ..

POSTGRESQL 2023.08.29

Vacuum이해와 사용법

PostgreSQL에서 Vacuum을 이해하기 위해서는 Dead Tuple존재의미를 알아야 하며 Dead Tuple은 어떻게 해서 생기게 된 것인지 알아야 한다. PostgreSQL에는 여러 좋은 기능들이 많지만 Dead Tuple의 존재는 가장 아픈 곳이기도 하다. 아픈 곳을 Vacuum이라는 기능으로 최적화하며 고쳐 나가는 것이 중요하다. Vacuum을 잘 활용 하여 수집된 통계 정보로 최적의 쿼리 플랜을 유도 할 수도 있다. 이번 장에서는 Vacuum의 생겨난 배경부터 최적화까지 설명하면서 Vacuum을 좀더 쉽게 이해하고 관리방안을 찾도록 하는데 목적을 두고 있다. ​ [PostgreSQL에서 Vacuum 생겨난 배경] ​PostgreSQL에서 Dead Tuple이 생겨난 배경을 설명하기 위해서는..

POSTGRESQL 2023.08.28

PostgreSQL의 Advanced Feature(Table Inheritance)의 효율적인 사용 방법

서론 [Powerful Advanced Feature : Table Inheritance] PostgreSQL에는 강력한 Table Inheritance 기능은 객체지향 DB의 특징으로 테이블 간에 상속 관계를 설정하는 기능을 말합니다. 이를 통해 한 테이블(상위 테이블)의 스키마와 데이터를 다른 테이블(하위 테이블)에서 재사용할 수 있게 됩니다. 즉, 상위 테이블의 모든 열과 인덱스가 하위 테이블에서도 그대로 사용되며, 상속 관계를 설정함으로써 데이터 모델링과 관리에 유용한 기능을 제공합니다. 여기서는 이 Table Inheritance기능을 어떻게 사용하는지 알아보고, 이를 활용하여 데이터를 효율적으로 관리하는 방안과 대용량 데이터를 효율적 저장하는 방안을 알아보겠습니다. 본론 [Table Inher..

POSTGRESQL 2023.08.21

트럼프의 당선이 페이스북 덕분이라고요?

페이스북의 반사적인 반응이 만든 트럼프의 당선 소셜 미디어 플랫폼에 대한 전면적인 정치적 광고 금지는 미국 민주당에게 좋지 않은 결과를 가져올 것 입니다. 트위터가 해당 사이트에서 정치적 광고 금지를 결정했다고 발표한 이후, 점점 더 많은 민주당 의원들과 전문가들이 페이스북을 옹호하기 시작했습니다. 나는 솔직히 말해서 페이스북의 전면적인 정치적 광고 금지가 민주당에게 치명적인 결과를 초래할 것이고, 좌측에 있는 내 친구들은 그러한 움직임을 옹호하는 걸 재고려해야만 한다고 봅니다. 나는 디지털 광고 및 진보 정치의 교차점에서 내 경력을 쌓아왔습니다. 또한 나는 진심으로 선거 자금 개혁과 페이스북의 정부 규제에 대한 중요한 필요성에 대해 믿고 있습니다. 내 조직인, Acronym,은 디지털 인프라를 구축하고..

ARCHIVES 2020.04.07

[기고]4차 산업혁명시대, 빅데이터 강국의 열쇠는 '데이터베이스'

4차 산업혁명시대, 빅데이터 강국의 열쇠는 '데이터베이스' 4차 산업혁명 시대의 '데이터 대전(大戰)'에서 우위를 차지하기 위한 기업 및 국가 간의 숨막히는 경쟁이 날로 치열해지고 있다. 미래의 새로운 자원으로 불리는 빅데이터가 중요한 것은 많이 알고 있지만 데이터를 담는 그릇인 데이터베이스(DB)라는 소프트웨어(SW)에 관해서는 많은 이해가 없다. DB는 원천 기술이 필요한 SW다. 여기서 원천 기술이라는 것은 미국과 같은 SW 선진국에서 개발된 기술에 의지해 필요한 애플리케이션(앱) SW를 만드는 것이 아니라 단독으로 개발된 '시스템 SW'를 말한다. 시스템 SW의 범주에는 DB, 운용체계(OS), 인터넷 브라우저, 블록체인, 통신 프로토콜 등이 있다. 시스템 SW를 아무나 개발할 수 없는 것은 하드..