| |
C-ISAM은 B+ 트리를 기반으로 하여 색인 순차 접근 방법(Indexed Sequential Access Method)을 구현한 라이브러리로서 색인 화일의 생성, 관리 및 자료처리를 효율적이고 신속하게 수행합니다.
C-ISAM은 데이타베이스 관리시스템의 오버헤드가 없으며, 응용 프로그램에서 직접 레코드로 접근합니다. 접근 방법이란 정보의 집합인 화일에서 특정 정보를 편리하게 찾는 방법을 뜻합니다.
C-ISAM은 색인 화일을 만들기 때문에 큰 화일에서 특정 레코드를 신속하게 찾을뿐 아니라 화일을 특정 순서에 따라 순차적으로 처리합니다.
C-ISAM의 색인은 키(KEY)로 정의되며 키는 하나 이상의 필드로 구성됩니다. 사용자가 필요한 만큼 색인을 부여할 수 있고, 처리 도중에 색인을 추가, 삭제할 수 있는 융통성이 있습니다. 또한 자료의 무결성을 보장하기 위한 로크나 트랜잭션 처리 기능이 있으며, 이러한 기능을 이용하여 C-ISAM은 정확하고 올바르게 정보를 관리합니다. |
 |
자료에 접근하는 속도가 매우 중요한 프로그램이거나, 색인화된 순차 화일을 사용하면서 DBMS의 화면 디자인이나, 보고서, 메뉴 처리 기능 등의 오버헤드가 필요치 않은 프로그램 또는 매우 많은 양의 자료를 처리해야 하는 프로그램에 C-ISAM이 효과적입니다. C-ISAM은 색인화된 순차적 접근 방법으로 많은 양의 자료가 있을 때 다른 패키지와 비교할 수 없는 빠른 속도로 자료를 처리할 수 있습니다. |
 |
C-ISAM은 빠른 자료 검색을 위하여 B+트리기법을 사용합니다. B+트리기법은 자료의 한 부분을 찾고자 할 때 다른 레코드를 검색하지 않고도 최적의 방법으로 원하는 자료를 검색할 수 있습니다. C-ISAM은 색인을 키로, 즉 레코드를 가리키는 포인터로 사용합니다. 따라서 찾고자하는 레코드에 빠르게 접근할 수 있습니다.
C-ISAM은 3가지 키 압축 방법으로 효율적으로 저장 장치를 관리하고 색인을 처리합니다. 키의 크기가 줄어들게 되면 그만큼 빠르게 응답을 받을 수 있고 또한 프로그램 실행 성능을 향상시킵니다. |
 |
C-ISAM은 UNIX환경에서 표준 데이타베이스 접근 방법으로 UNIX에 대한 색인 순차 접근 방법의 표준으로 미국과 유럽에서 인정되었고 1985년에 AT&T의 UNIX System V표준으로 선택되었습니다. C-ISAM은 X 프로그램간에 호환성을 갖기위해 발표한 X/Open XPG3(X Portability Guide Release3)표준안을 준수합니다. 또한 X/Open그룹에서도 UNIX의 표준 접근 방법으로 C-ISAM을 선택하고 있습니다. |
 |
C-ISAM은 매우 다양한 색인 기법을 제공합니다. 테이블에 무제한으로 색인을 생성할 수 있고 각 색인은 하나의 필드 또는 서로 다른 자료 형태라도 8개의 필드까지 복합 색인을 부여합니다. 하나의 색인이 여러 필드의 합으로 구성되었을때 각 필드를 오름차순이나 내림차순으로 지정하여 색인을 부여합니다. 또한 중복값이나 유일키 값을 지정할 수 있고 레코드가 변경되면 색인도 자동적으로 변경됩니다. 즉 C-ISAM을 이용하여 하나의 필드, 필드의 합, 필드의 일부분 등 원하는 곳에 색인을 생성할 수 있습니다. |
 |
C-ISAM은 다양한 방법으로 자료의 무결성을 제공합니다. 트랜잭션 관리, 로그 및 복구기능으로 시스템이나 디스크 장애시 안전하게 자료를 복구시키며 로크 기법을 사용하여 C-ISAM화일과 레코드에 대한 자료의 무결성을 유지하며 자료의 병행성을 관리합니다. 또한 bcheck유틸리티로 색인 무결성을 유지합니다. |
 |
C-ISAM은 여러가지 동작을 하나의 단위로 취급하는 트랜잭션 처리 프로그램을 위한 자료 보호 기능이 있습니다. 트랜잭션을 사용하면 자료 무결성을 보장할 수 있고 자료에 이상이 생겼을 때 전상회복(Rollback)기능으로 트랜잭션을 시작하기 이전 상태로 회복할 수 있습니다.
- 로그 및 복구 기능
로그 기능은 로그 화일에 각각의 트랜잭션을 기록함으로써 자료의 무결성을 유지합니다. 전상회복(Rollback)시에 ISAM화일을 로그 화일에 재저장합니다. 또한 로그 화일은 ISAM화일이 파괴되었을 경우 복구 기능을 제공합니다.
- 로크 기능(Lock)
여러 사용자가 동시에 같은 행(row)에 접근 하고자 할 때 자료의 무결성을 제공하는 기능입니다. 트랜잭션이 시작될 때 레코드를 갱신하려는 한글 C-ISAM루틴은 레코드로 로크합니다. 트랜잭션이 종료(완료 또는 전상회복)될 때까지 레코드는 로크된 상태를 유지합니다. 또한 화일 수준 및 레코드 수준의 로크 기능을 제공하여 자료의 불일치를 막습니다.
- bcheck유틸리티
자료의 무결성 유지를 위하여 색인 화일을 검사 및 복구하는 C-ISAM유틸리티 프로그램입니다. 색인 화일과 자료 화일이 일관성이 있는지 비교하여 이상이 있을때 색인 화일을 재구성합니다.
|
 |
C-ISAM은 다음과 같은 유지 보수 작업을 수행합니다.
- 색인화일 생성
- 색인의 첨가, 삭제
- 레코드의 첨가, 삭제, 수정
- 색인화일명 변경, 삭제
- 레코드나 화일 단위 로크
위와 같은 기능으로 프로그램 개발 시간을 단축할 수 있으며 효율적인 유지 보수 기능과 색인 화일의 처리 기능으로 사용자가 편리하게 작업을 수행합니다.
|
 |
Informix는 C-ISAM 기법을 기초로 자료를 처리하는 DBMS를 제공하고 있고 이러한 DBMS는 C-ISAM레벨에서 호환성이 있습니다.
Informix제품과 C-ISAM자료간에는 서로 호환성이 있으므로 자료의 형식을 수정할 필요가 없습니다. |
 |
C-ISAM은 운영체제와 색인 화일 두가지로 구성되어 있습니다.
- 운영체제 화일 구성
C-ISAM화일은 자료 레코드와 색인 정보를 갖는 두 운영체제 화일로 구성되어 있습니다. 자료화일과 색인화일의 확장자는 "dat"와 "idx"입니다. 이 두가지 운영체제 화일은 논리적으로 하나의 ISAM화일로써 사용됩니다.
- 색인 구성
C-ISAM색인은 키를 갖는 B+트리로 구성되며, B+트리 포인터는 다른 레벨의 색인 트리나 자료 레코드를 나타냅니다. 레코드를 찾으려면 적절한 C-ISAM함수와 찾으려는 키값이 필요하며 이 C-ISAM함수는 키값으로 색인을 통해 신속히 검색합니다. 키가 일치된 경우 포인터를 사용해서 자료를 요구한 프로그램에 넘겨줍니다.
|
| 디스크 사용량 프로그램 |
928KB |
| I라이브러리 |
166KB |
| 헤더화일 |
14KB |
| 데모화일 |
29KB |
| 기타 |
3KB |
| 총디스크사용량 |
1140KB |
|  | |