본문 바로가기

2학년/데이터베이스

2019-03-13 DB 수업

현재 dual 에 있는 유저 >> 이름이 insa .. user는 함수이다. 


sysdate도 함수라고 볼 수 있는데, 현재 접근된 사용자의 계정과 날짜를 보여준다. 

nls : national language support , 국가 언어 지원 >> 오라클은 전세계적으로 쓰이기 때문에 국가별로 그 쪽에서 쓰이는 출력을 낼 수 있는 함수? 가 많다.


conn 하면 그 커넥션을 자르고 다시 연결 하는 것이기 때문에 이전 세션에서 사용하던 것은 사라지고, 

원래 상태의 dual로 나타나게 된다. 어디서나 다 그렇다.



create 하고 나서 바꿀 수 없는 것.

1. encoding schema 2. db명 3. block size 


(disk) striping ; (디스크) 스트라이핑

스트라이핑은 성능 향상을 위해 단일 파일과 같은 논리적으로 연속된 데이터 세그먼트들이, 물리적으로 여러 개의 장치, 즉 디스크 드라이브 등에 라운드로빈 방식으로 나뉘어 기록될 수 있는 것이다. 이것은 만약 프로세서가, 하나의 디스크에서 공급하거나 또는 받아들일 수 있는 것보다 더 빠르게 데이터를 읽거나 쓸 수 있는 능력이 있다면, 이러한 방식은 매우 유용한 기술이 된다.

http://www.terms.co.kr/striping.htm




http://www.gurubee.net/lecture/2924

: 블록 size에 따른 성능 차이 정리 글 



wtite through 와 write back








null? 할당, 인식, 정형 할 수 없는 값 >> 아직 정해지지 않았거나 다양한 이유로.. 


aliasing : 별칭 << 사용자에게 보여주는 이름.. AS로 사용했었는데 AS 안써도 됨.


p 48 다시 하기.


where 절은 열 이름, 비교 조건, 상수 또는 값 목록 등 세 가지 요소로 구성 된다. 


오라클은 ASCII 코드로 저장됨 blank도 값이 있는 걸로 처리함


문자, 날짜는 '', 숫자는 없이 그냥 써도 된다.



sql 하고 관계 없고 그냥 눈에 보이는 거 조정하려고


pagesize linesize 조정하면 한눈에 보기 편하게 할 수 있다.

세션에서 설정한거라서 conn 다시하면 이렇게 안 뜨고 다르게 뜬다. 


where rownum <10 해서 보면 적게 볼 수 있다. 매우 편리~




일반 관계연산자 = 비교연산자의 사용


표현식에 대한 비교 시, where 절에는 별칭(allias)을 사용할 수 없다.




DB의 메모리 관련한 이야기.. 

http://wiki.gurubee.net/pages/viewpage.action?pageId=26739627


4K와 16K 메모리로 각각 데이터 베이스를 설계했을 때 속도 차이.

http://www.gurubee.net/lecture/2924


주 기억장치(CPU) <- (캐시 메모리)> 하드디스크

기본적으로 하드디스크는 모터로 작동하기 때문에 너무 느리다. CPU는 매우 빠른데, 하드디스크에 맞추려다 보니 너무 느려짐.

그래서 캐시메모리에 올려 놓는다. 


but,

데이터베이스 명령어가 매우 긴 문장이 많다면, 4K짜리가 8개 => 32K 를 차지하는데 

이 문장이 논리적으로는 이어져 있지만 실제 메모리상에서는 4K씩 떨어져서 차지 하고 있다. 


메모리 공간을 4K씩 32K 차지해야 하는데 차지할 메모리 공간이 전부 더티 버퍼 메모리라면, 그걸 write back해서 clean 버퍼 메모리 공간으로 

만들어서 디스크에 올려서 정상 작동할 수 있다. 

이 때 LRU 페이징 교체 방식을 사용한다. (Least Recently Used) : 가장 덜 최근에 사용된 .. 

가장 오래 전에 사용된 것을 write back 해서 클린 메모리 공간으로 바꾸는 것.


일일이 집어 넣는건 시간이 많이 걸리기 때문에 오라클에서는 4K, 8K 16K, 32K 로 어느 메모리 방식을 사용하던지 적용할 수 있게 나누고 있다.

이 때 더 빨리 조회가 가능하게 하려면 이미 설계된 데이터 베이스의 메모리 방식을 바꿀수는 없으므로 

메모리에다가 4*8 = 32K 를 32K 메모리 자리에 한번에 집어 넣으면 검색도 쉽고 시간이 덜 걸린다. 


데이터베이스에서 바꿀 수 없는 것.

1. encoding schema (언어관련?)

2. db명

3.. block size










'2학년 > 데이터베이스' 카테고리의 다른 글

0409database  (0) 2019.04.09
0409 database_2  (0) 2019.04.09
0409 database_MVL2, coalesce,decode(기말고사)  (0) 2019.04.09
0327  (0) 2019.03.27
1. DB언어 2019-03-07  (1) 2019.03.07