SharedIT | 묻고 답하기(AMP)

오라클 뷰 테이블 문의드립니다

안녕하세요. 오라클 뷰테이블 관해서 문의드립니다. 현재 제품을 바코드를 이용하여 창고에 입고처리를 하고 있는데 작업자가 자꾸 동일한 제품의 바코드를 여러번 리딩하여 수량만 맞춰 입고 처리를 하고 있습니다. 바코드에는 생산 순번도 있어 이를 이용하여 선입선출을 하고 있는데 저런 작업자 행위를 개선하려 보니 기존의 테이블에 중복이 너무 많아 기본키를 생성할 수 없고 검색을 하자니 속도 문제가 있을 것 같고 그래서 생각을 하는게 뷰테이블을 이용해보려 생각하는데 본 테이블보다 뷰를 통해 검색시 속도가 많이 차이나나요?? 뷰는 중복검색을 하고 인서트는 일괄처리를 하고 싶은데 혹시 더 좋은 아이디어가 있을려나요??
Tags : 태그가 없습니다.

4개의 답변이 있습니다.

양성환
  0 추천 | 약 4년 전

뷰는 속도와는 무방합니다.

더 느려지기는 하겠지만 사용용도가 편리할뿐

빨간신발
  0 추천 | 약 4년 전

뷰는 일반적으로 속도때문에 사용하는 것이 아니고..

편의성때문에 사용을 합니다.

다른 개발자에가 테이블을 다 설명하기 어렵거나

타 시스템 연동...

복잡한 select를 반복적으로 사용할 때 뷰를 만들어서 사용하죠...

그리고 중복된 키가 많아서 pk를 잡기 힘드시면...

숫자형 일련번호로 해서 pk로 사용하세요.

deerokgo
  0 추천 | 약 4년 전

오라클의 경우 테이블 Select와 뷰 Select는 속도차이가 없다고 보시면 됩니다.

오라클에 Materialized View가 있는데 뷰 생성시점의 데이터를 별도로 보관해서

속도가 빠른 장점이 있습니다.

또 문의하신 인서트 일괄처리는

엑셀 데이터를 오라클 데이터베이스에 임포트 하는 방법이 있습니다.

SQL Developer를 사용하시면 되구요.

자세한 내용은 아래 URL을 참고하시기 바랍니다.

http://blog.naver.com/PostView.nhn?blogId=battledocho&logNo=220024663176&categoryNo=75&parentCategoryNo=0&viewDate=&currentPage=1&postListTopCurrentPage=1&from=postView



hgp33 | 약 4년 전

아 별반 차이가 없군요;; Materialized View 한번 검색해봐야겠습니다. 첨부터 설계를 중복을 배제하게끔 했어야 하는데.. 쩝 감사합니다~!
wansoo
  0 추천 | 약 4년 전

뷰라는 건... 그냥 껍데기 일뿐이죠.

실제 알맹이는 테이블인데, 이 테이블에서 필요한 내용만을 대상으로 하기 위해 쿼리를 미리 만들어 둔 것이 뷰일 뿐이고...

속도 차이??

뷰를 작성할때 쿼리가 어떻게 만들어 졌냐에 영향을 많이 받을 것 같아 보이고요.

쿼리를 작성해서 직접 실행시킨다면 쿼리를 컴파일 변환, 최적화해서 실행시켜야 해서 추가적인 시간 손실이 있을 수 있을 것 같고... 뷰는 미리 컴파일 및 최적화된 상태의 쿼리가 저장되어 있다가 실행되기 때문에 그 만큼의 시간이 절약될 수는 있을 것 같아 보이지만... 그 차이가 사람에게 얼마나 크게 와 닿게 될까 싶네요

hgp33 | 약 4년 전

아 그러군요 ;; 간단한 조회문에서는 별반차이가 없나보네요. 제품을 등록시 항상 풀스캔을 해야하는 상황이라 작업속도도 무시할 수 없기에 뷰는 논리적인 구조라서 속도차이가 있는지 알았습니다. 다른 방법을 모색해봐야겠네요