DB

· DB
1. Persistence(영속성) 프로그램을 실행하면서 데이터가 생성, 삭제, 변경이 발생한다. 이렇게 생성된 데이터가 프로그램이 종료되어도 사라지지 않고 저장되는 특징을 말한다. 2. Persistence Framework Java에서는 데이터의 영속성을 위해 JDBC를 지원하는데 이를 이용하여 DB에 접근, SQL 수행, 데이터 맵핑 등의 작업을 개발자가 전부 하기에는 번거로움과 실수가 많이 발생할 수 밖에 없다. 위의 복잡함과 번거로움을 없이 간단하고 단순하게 데이터베이스와 연동하고자 Persistence Framework가 등장하였고 제공하는 방식에 따라 SQL Mapper와 ORM으로 나뉘게된다. 3. SQL Mapper SQL Object 필드 객체와 SQL 문을 맵핑하여 데이터를 객체화한다..
· DB
1. ACID - 트랜잭션 격리수준을 설명하기 앞서 ACID에 대해 먼저 알아보자 · Atomicity(원자성) - 하나의 트랜잭션 안에 data 변경이 있다면 모두 저장되거나 취소되어야 한다. - 예) 하나의 트랜잭션에서 Update가 2번 발생했다면 2개의 Update는 모두 성공이거나 실패인 동일한 결과를 가져가야한다. ​ · Consistency(일관성) - 데이터는 정의된 규칙에서만 저장되어야한다. - 예) 문자 타입의 필드에는 문자 타입의 데이터만 들어가야한다. ​ · Isolation(격리성) - 트랜잭션이 각각 수행되고 있을 때, 다른 트랜잭션에 의해 영향을 받지 말아야한다. - ex) 잔액이 1000원인 계좌에서 A 트랜잭션에서 1000원을 출금하고, 동시에 B 트랜잭션으로 500원을 출..
· DB
옵티마이저란?옵티마이저란 SQL을 가장 빠르고 효율적으로 수행할 최적(최저비용)의 처리 경로를 생성해 주는 DBMS 내부의 핵심 엔진을 말한다.사용자가 SQL로 결과를 요구하면 이를 생하하는데 필요한 처리경로를 DBMS에 내장된 옵터마이저가 자동으로 생성해준다옵티마이저가 생성한 SQL 처리경로를 실행계획(Execution Plan)이라고 부른다. 옵티마이저의 종류1.Rule Based Optimizer- 데이터베이스에 접근하는 경로를 찾는데, 사전 정의된 규칙을 사용하는 것을 말한다.- 하나의 SQL에 대한 실행계획이 여러 개 있다고 할 때 가장 낮은 순위의 실행 계획을 항상 사용하는 방식이다. 2.Cost Based Optimizer- 데이터베이스 정보를 활용(미리 구해놓은 테이블과 인덱스 정보 등등)..
· DB
우연히 SQL튜닝 관련하여 검색하다가 좋은 글이기에 퍼왔습니다. 출처 : http://scidb.tistory.com/143 SQL 튜닝책을 세 권정도 읽은 신입사원이 SQL 튜닝방법론을 요청하였다. 이유는 튜닝책에 방법론이 없다는 것이다. 튜닝 방법론이란 “SQL을 튜닝 해달라고 요청 받았을 때 내가 무엇 무엇을 해야 하나?” 이다. 즉 SQL 튜닝시의 To-Do 리스트(체크리스트)를 요구한 것이다. SQL 튜닝을 자주 하면서도, 그 안에 몇 가지 작업이 있는지 생각하지 못했다. 누가 그랬던가? 일상을 낯설게 느껴보라고… SQL 튜닝요청을 받았을 때 내가 어떤 일을 하는지 가르쳐 주면 되겠구나 하는 생각이 들었다. 그 결과 7가지 방법이 결론으로 도출되었다. 만약 7가지 방법을 모두 적용할 수 있는 경..
야뤼송
'DB' 카테고리의 글 목록