본문 바로가기

oracle6

Mac OS X에서 Oracle 구동하기 몇 년 전부터 메인 운영체제로 Mac OS X를 사용하고 있다. 주된 개발툴인 이클립스가 Mac OS X를 지원하고 Tomcat, Apache, MySQL, Java 등도 Mac OS X를 지원하니 일하는데 큰 문제가 없는 셈이다. 다만 한 가지 아쉬운 것은 Oracle DBMS가 Mac OS X를 지원하지 않는다는 것이다.Oracle 10g 버전에서 Mac OS X를 잠깐 지원하는 것 같더니 이내 사라지고 이제는 공식적으로 지원하는 버전은 없다. 개발 초기 단계엔 보통 데이터베이스를 서너번 지우고 새로 만들곤 하는데 아무리 개발 서버라지만 여러 개발자들이 공통으로 사용하는 DB를 이렇게자주 건드리는 것은 바람직하지 않다. 그래서 로컬에 오라클 데이터베이스를 설치해서 충분한 테스트를 거쳐 개발서버에 적용.. 2014. 5. 11.
오라클의 Materialized View 이야기 2) 테이블 복제를 위해 MView 이용하기 구체화된 뷰(Materialized View)는 일반 뷰와 무엇이 다른가? 오라클 SQL*Plus의 한국어 버전에서 Materialized View를 '구체화된 뷰'라 쓰는 것을 볼 수 있다. '구체화된 뷰'라는 것은 무슨 뜻일까? 보통의 뷰를 실행하면 정의된 쿼리의 결과셋이 메모리 상에 생성되고 세션이 끝나면 이 결과셋은 사라지고 만다. 그러나 Materialized View의 경우는 다르다. 그 쿼리의 결과셋이 오라클의 저장소인 테이블스페이스에 테이블로 저장되는 것이다. 이렇게 물리적인 저장소에 그 결과가 저장된다하여 '구체화 되었다'라는 표현을 쓰는 것이다. 사실 구체화라는 우리말과 Materialized라는 단어 사이의 차이를 좁히는 것이 쉽지 않다. 어쨌든 구체화된 뷰는 이미 만들어진 테이블을 .. 2012. 12. 25.
오라클의 Materialized View 이야기 - 1) 구체화된 뷰의 두 가지 쓰임새 Oracle Materialized View의 개념 몇 년 전 프로젝트를 수행하는 중 OLAP에 사용할 DW 구축을 위해 오라클의 Materialized View(이하 MView라고 표기)를 활용했던 적이 있다. Oracle 8i 이전 버전에선 Snapshot이라는 이름으로 불렸던 MView는 오라클의 문서를 보면 그 주된 용도를 다음 두 가지로 요약한다. 하나의 데이터베이스에서 또 다른 데이터베이스로의 데이터 복제데이터 웨어하우스 환경에 사용되는 복잡한 쿼리에 대한 캐쉬 Data Warehouse 환경에서의 Materialized View 두 번째의 경우는 이미 경험한 바가 있다고 얘기했다. 보통 데이터 웨어하우스를 위한 쿼리라는 것은 여러 개의 테이블들을 조인하고 이로 부터 통계를 구하기 위해 SUM.. 2012. 12. 23.
오라클 이야기 - 일련번호 생성하기에서 놓치기 쉬운 것 1. 시퀀스를 쓰지 않고 일련번호를 만들고 싶다. 오라클은 특정 데이터 타입에 대해서 Sequence 객체를 이용해서 자동으로 일련번호를 생성하여 입력할 수 있도록 지원한다. 물론 이 오라클의 시퀀스는 어떠한 경우에도 중복되지 않도록 설계되어 있다. 더욱이 서로 다른 여러 테이블에서도 공통으로 하나의 시퀀스 객체를 통해서 중복되지 않는 번호를 받아서 사용할 수 있다. 그런데 오늘 살펴보려고 하는 것은 이 편리한 시퀀스를 사용하지 않고, 특정 테이블 내에서만 제한적으로 일련번호를 사용하는 방법에 대한 것이다. 좀 더 솔직하게 얘길 하자면 방법을 찾아가는 과정을 통해서 초심자가 놓치기 쉬운 부분을 짚어주고자 함이 이 글을 쓰는 궁극적인 목적이다. 2. MAX() 함수 이용하기 우선 설명을 위해서 필요한 예제.. 2010. 8. 10.