SQL 3

기초적인 DB 인덱스 사용 원리

이 글은 '친절한 SQL 튜닝(저자 조시형, 출판사 (주)DBian)을 읽고 정리한 글입니다. 1.SQL 튜닝 1. SQL이 느린 이유 SQL이 느린 이유는 대부분의 경우 I/O, 특히 디스크 I/O 때문인데 이 I/O는 프로세스의 일시적 중지(sleep)를 일으킵니다. 특히나 디스크 I/O는 메인 메모리 I/O에 비하면 매우 오래 걸립니다. 만약 동시 다발적으로 디스크 I/O 요청이 들어오면 I/O를 수행하는 시간에 대기시간 까지 추가되어 더 오래 걸리게 됩니다. 물론 I/O 요청이 발생하면 DBMS가 우선적으로 메인 메모리에 있는 캐시를 탐색하고 여기서 같은 내용에 대한 I/O를 찾지 못한 경우에만 실제 디스크 I/O 요청을 수행하기 때문에 실제 디스크 I/O로 이어지는 것을 많이 줄일 수 있지만, ..

Database/DB 일반 2022.07.04

1. JDBC 이해

- 일반적으로 애플리케이션 서버와 DB 서버간의 통신은 1. 커넥션 연결 (애플리케이션 -> DB 서버) 2. SQL 전달 (애플리케이션 -> DB 서버) 3. 처리 결과 응답 (DB 서버 -> 애플리케이션 서버) 의 큰 세 가지 축으로 이루어진다. - 애플리케이션 개발자 입자에서 고역인 것은 이런 애플레케이션 DB 간 통신 방식이 DB 벤더에 따라 모두 다르다는 것이다. 즉 서로 다른 언어, 비유하자면 MySql은 한국어, Oracle은 영어, PostgresSQL은 독일어 등등... 서로 다른 언어로 통신하기 때문에 아~주먼 과거의 개발자들은 DB를 바꾸게 되면 애플리케이션 코드에서도 위 세 가지 통신을 위한 코드들을 모두 새로 배워서 바꿔야했다(한국어 쓰다가 독일어 배워서 쓰고...). - 위와 같..