디스크 I/O 줄이기 데이터베이스에서 데이터를 읽는 시간의 대부분은 디스크 헤더를 움직여서 읽고 쓸 위치로 옮기는 단계에서 비롯된다. 때문에 데이터베이스 쿼리 튜닝은 I/O를 줄이는 것이 주 목적이 된다. I/O를 줄이기 위해 개발자가 할 수 있는 일들은 다양하다. 가능하다면 clusterd 인덱스를 사용한다. clusterd 인덱스는 정렬의 대안으로 사용 될 수 있다. 단, unclusterd 인덱스는 경우에 따라 정렬보다 코스트 비쌀 수 있으므로 사용시 유의해야한다. 정렬을 포함하는 쿼리 사용을 지양하기 distinct를 사용하는 경우, 쿼리 실행시마다 정렬이 수행되기 때문에 성능이 매우 저하된다. 그 외에도 많은 쿼리들(group by, union 등)이 수행과정에서 정렬을 포함한다. 서브쿼리를 조..

전체 글
-공부하고 기록합니다얼마전부터 vscode와 파이썬으로 알고리즘 연습을 하는데 콜론 (:) 뒤에서 자꾸 이상한 자동완성 (oledll Windows only: Creates ())이 떴다. 콜론 쓸때마다 매번 저걸 지워야 해서 상당히 열받더라. 나는 파이썬 초보자라 원래 그런건가?? 해서 해결할려고 구글링 해봤는데 아무도 나랑 똑같은 문제인 사람이 없었다. 결국 2주만에 문제를 찾았는데 Python Exteded 라는 확장이 바로 그 원인이었다. 문제의 원인 해결 확장을 지우면 : 쓸때마다 뜨던 자동완성이 안뜬다. 추천 익스텐션에 떠있길래 그냥 설치했는데. 얘가 그 동안 내 삶의 질을 70퍼센트는 저하시킨 듯. 추천에 떠있다고 뭔지도 모르고 함부로 까는 것은 앞으로 지양해야 겠다.
불합격 이유 추측 서류도 서류지만 그 후에 있는 코딩테스트를 썩 잘보지 못했는데 아마 그 때문에 탈락하지 않았을까 싶다. 문제가 쉬운편이었는데도 다 풀지 못했다(6문제중 4솔). 그리고 영어라서 풀면서도 좀 헷갈림 코테 보고나서 예상은 했었지만 얘가 내 인생 첫 지원 서류라 조금 아쉽다. 지원하면 할 수록 점점 코테의 중요성을 실감하게 된다. 서류고 프로젝트고 뭐고.. 일단 코테를 붙어야 면접이라도 가는듯. 코테 준비 열심히 해야겠다.
데이터를 저장할 때 파일 시스템이 아닌 DBMS를 사용하는 이유? 파일 시스템의 단점 : 자료를 관리하기 어렵다 데이터 중복성 여러 파일에 데이터가 중복 저장 데이터에 접근하기 어려움 데이터 독립성 x 다양한 파일 형식 데이터 무결성 문제 무결성이 프로그램 코드의 일부로 강제(constraints)된다. 새로운 제약조건 추가하거나 바꾸기 힘듦 동시성 제어 안됨 보안 문제 DBMS를 사용했을 시의 장점 : 자료 관리가 쉽다 독립성, 무결성 개발 생산성 사용자가 데이터를 관리하기 쉬움 다양한 데이터 관리 도구 제공 DBMS를 사용했을 때의 단점 : 비용 DBMS는 복잡한 소프트웨어임 (전문 인력 필요) 고비용 (DBMS 소프트웨어 자체가 비쌈) 메인 메모리, 세컨더리 스토리지 많이 필요 데이터 저장소의 집중..