본문 바로가기

전체 글230

[JAVA, Spring ] equals, hashcode 객체 간 비교를 위해 사용함. 만약 구현이 안되있으면 비교 혹은 리스트, set에서 객체를 포함하고 있는지 여부를 판단하지 못함. 이펙티브 자바에서도 가르쳐주듯 클래스 선언 시 무조건 만들어야함. 자세한 내용은 시간나면 업데이트 하겠음. 요렇게 구현해야 객체의 속성을 비교하여 같은 객체인지 비교할 수 있게 됨. 아니면 메모리 주소로 같은 주소를 참조하고 있는지 판단하므로 안됨. 나~~중에 업데이트 하겠음 2023. 6. 12.
다음에 먹어볼 칵테일 페인킬러 - 파인에플 다이키리 - 라임 2023. 6. 11.
postgresql의 운영에 필요한 테이블과 wait event wait event는 성능 및 운영 관리를 위해 반드시 알아야할 중요한 요소이다. 메모리/디스크/트랜잭션 수 등 정보와 결합되어 더욱 세밀한 데이터베이스 상태 분석이 가능하다. postgresql은 시스템 카탈로그 뷰 테이블에 프로세스 id와 데이터베이스, 접속 ip, 쿼리 등 DBMS에서 메타데이터를 제공하는 뷰이다. postgresql에서는 pg_stat_activaity 테이블에 다음과 같은 정보를 기록해둔다. 다양한 클라이언트에 SELECT * FROM pg_stat_activity; 쿼리를 실행하여 위와 같은 정보를 확인할 수 있다. wait event의 종류는 너무 많아서 모두 외우기는 힘들다. 중요한 wait event만 파악하고, 나머지는 운영하면서 알아가는 것이 바람직하다고 생각한다. 1.. 2023. 6. 11.
데이터베이스 sequential, scattered [ 목적 ] 오라클 공부하다가 데이터를 읽는 과정을 몰랐는데, 여러 방법이 있다는 것을 알게 되어서 기록하고자 정리한다. [ db file sequential read ] 단일 블록 스토리지 i/o를 수행할 때 발생. 주로 인덱스를 거쳐 테이블에 랜덤 엑세스 할 경우 발생하고 많은 Wait time을 소모함. 대량 발생 시 주로 oltp 시스템에서 성능 저하를 일으킴. 랜덤 i/o 엑세스 된 블록이 버퍼 캐시에는 Sequential하게 저장됨. -- 최적화 방안. 버퍼 캐시 늘리기. 왜냐면 MRU 부분에 페이지가 들어가므로 오래 남길 수 있음. 인덱스를 다시 빌딩하는건 도움이 되지 않는 부분이 대부분, OLTP에서는 자연스러운 Wait event임. 성능이 뛰어난 ssd를 고려해야함. 랜덤 i/o를 많이.. 2023. 6. 8.