1. Pool table이란? - 여러개의 DDIC table이 하나의 물리적 table로 Match되어 관리되는 것을 말한다. 즉 tab1과 tab2 2개의 table을 하나의 Pool table로 선언하여 사용하게 되면 사용자가 사용시에는 각각이 table이 존재하는 것처럼 사용하면 되지만 내부적으로는 1개의 물리적 table에 Data가 등록되어 있게 된다.
2. Pool table의 Data 저장 형태 - 물리적 테이블의 첫번째 키 필드는 테이블 이름이 된다. 이 필드는 DDIC 테이블에서 정의된 이름이다.(ex) tab1, tab2 - DDIC 테이블의 각각의 key field는 varkey 필드에 저장된다. 그리고 나머지 DDIC 테이블의 non-key field는 vardata 필드에 저장되게된다. - 즉 물리적 table의 필드는 (tabname, varkey, vardata, dataln) 4개의 필드가 존재하며 tabname에는 사용자가 인식하는 table명, varkey에는 각각의 table에 대한 key값, vardata에는 각각의 table의 key field를 제외한 나머지 data, 그리고 dataln에는 vardata의 data length가 각각 저장되게 된다.
3. Pool table의 사용이유 - Pool table은 원래 특정 DBMS가 10,000개 이상의 테이블을 지원하지 않기 때문에 고안되었다(SAP에서는 실제 30,000개 이상의 TABLE을 필요로 함)
4. Pool table 사용시 고려사항. - 위 2번과 같은 사유로 pool table에 대하여는 Index가 생성될 수 없다. - External program은 Pool table의 데이타를 해석할 수 없다 - Select 조건 작성시 column에 대하여 where조건에 기술할 수 있지만 시스템은 항상 전체 레코드에 대하여 Access하게 된다.(Data가 vardata field에 숨겨져 있기 때문임) - 일반적으로 많은 양의 data의 I/O가 필요하거나 정해진 key값 이외의 값으로 Data를 찾아야 할 필요성이 있는 table에 대하여 Pool Table의 사용은 지양해야할 사항이다. 따라서 Pool table은 buffering되는 customizing table이나 primary key로