본문 바로가기

PostgreSQL2

postgresql's sequence obejct 0. 작성 계기 회사에서 postgresql을 사용하여 프로젝트를 진행하고 있다. 데이터를 넣는 과정에서 pk값을 수정하여 넣는 작업이 필요했다. 데이터를 수정하여 넣고, 기존 기능을 활용하여 데이터를 넣어야 하는데 pk값 중복이 발생하면서 정상 작동하지 않는 버그가 발생했다. 이유를 찾아본 결과, postgresql은 sequences 오브젝트를 활용하여 pk를 만들고 sequences를 하나 올림으로서 pk의 순서를 관리한다. 하지만 나는 sequences 오브젝트를 사용하지 않고 임의로 max +1 방식으로 pk값을 넣어줌으로서 sequences 오브젝트와의 충돌이 일어난 것이 문제였다. 기존에 사용하던 mysql은 auto_incerement 방식을 사용하여 위와 같은 문제가 발생하지 않지만, o.. 2023. 3. 28.
MySQL과 Postgresql의 차이 둘 다 RDBMS라는 점은 동일하지만 프로세스를 다루느냐, 쓰레드를 다루느냐에서 차이가 나옵니다. PostgreSQL은 프로세스 기반, MySQL은 쓰레드 기반으로 작동합니다. PostgreSQL PostgreSQL은 각각의 연결을 처리하기 위해 새로운 프로세스를 생성합니다. 이렇게 함으로써 각각의 연결이 서로 영향을 주지 않도록 보장할 수 있으며, 안정적으로 작동할 수 있습니다. 각각의 프로세스는 독립적인 메모리 공간을 가지고 있기 때문에 안정적으로 데이터를 보호할 수 있습니다. 또한 PostgreSQL은 WAL(Write Ahead Logging)이라는 기술을 사용하여 데이터의 일관성을 유지할 수 있습니다. 이러한 이유로 PostgreSQL은 안정적인 대규모 데이터베이스 처리에 적합합니다. MySQL.. 2023. 2. 20.