oracle - 파티셔닝 - 파티션 테이블 조회 속도




오라클의 동적 테이블 파티셔닝 (3)

나는 거대한 데이터 볼륨 (수억 개의 레코드)이있는 단일 테이블로 구성된 내 애플 리케이션을위한 데이터베이스 스토리지를 구축하는 중이다. 모든 레코드를 일괄 적으로 복구하는 작업을 수행하기 때문에 (예를 들어, 자정에 모든 레코드를 검색하는 등) 날짜 필드에 인덱스를 가질 계획입니다. ).

레코드 수가 많고 성능이 중요한 시스템이므로이 테이블을 동적으로 파티션 할 수있는 방법이 있는지 알고 싶습니다. 이렇게하면 레코드를 빠르게 검색하고 파티션을 생성하고 잘라낼 수 있습니다. 더 이상 필요합니다. 예를 들어, 다음날 파티션을 만들고 오늘 레코드를 처리 한 후 나머지 데이터를 채우는 방법은 무엇입니까?


동적 SQL을 사용하여 파티션을 작성하거나 자르는 프로세스를 자동화 할 수 있습니다. EXECUTE IMMEDIATE 또는 DBMS_SQL 사용하여 프로 시저를 작성하고 DBMS_JOB 또는 DBMS_SCHEDULER 사용 DBMS_JOB 프로 시저를 작성합니다 ( DBMS_SCHEDULER 는 10g 기능이며 DBMS_JOB 보다 다양 함).

파티션 문을 먼저 수동으로 빌드하고 나중에 DDL에 확신을 가질 때 프로세스를 자동화하려고합니다. ALTER TABLE .에 대한. 서의 모든 synthax를 찾을 수 있습니다.


11g에서는 INTERVAL 파티션을 정의 할 수 있으며 기존의 범위에 맞지 않는 새 레코드를 얻으면 Oracle은 자동으로 새 파티션을 작성합니다. 이것은 매우 멋진 기능입니다. 더 자세히 알아보십시오 .

한 가지 명심해야 할 점은 Partitioning은 Enterprise Edition 라이센스 상단에 추가 비용이 부과된다는 점입니다. 따라서 사용하기에 저렴하지 않습니다.


자동으로 처리하는 제품이 있습니다. 오라클을위한 PartitionManager는 오래된 데이터, 통계 사본 등을 제거 및 보관하는 것을 포함하여 조직 보존을 기반으로하는 자동 파티션 관리 기능을 제공합니다. http://www.xyrosoft.com 에서 사용해보십시오 .





database-partitioning