콘텐츠로 이동

2. Altibase 구성요소#

이 장에서는 Altibase의 주요 구성요소에 대해서 설명한다. 사용자는 Altibase 패키지 설치 후에 실행 바이너리 부문과 프로그래밍 라이브러리 부문 등의 구성요소에 대해서 확인할 수 있다.

Altibase 디렉터리#

Altibase를 설치하면 다음의 디렉터리가 생성된다. Altibase의 홈 디렉터리는 환경 변수 ALTIBASE_HOME에 지정된다. 홈 디렉터리는 bin, conf, lib, include, msg, dbs, logs, sample, install, altiComp, trc, admin, 그리고 arch_logs 디렉터리를 포함하고 있다.

각 디렉터리의 역할과 포함하는 내용에 관하여 설명한다.

APatch 디렉터리#

Altibase 설치에 대한 정보와 패치가 존재하는 디렉터리이다. Altibase 제품이 설치되었을 때의 환경 정보, 설치 시 기록된 로그와 패치를 롤백하기 위한 파일들도 존재한다. 더 자세한 사항은 Installation Guide를 참고하기 바란다.

admin 디렉터리#

Altibase의 시스템 정보와 관련된 view를 생성하는 adminview.sql 파일과 프로시져, 테이블 정보를 볼 수 있는 프로시져를 생성하는 SQL 파일들이다.

altiComp 디렉터리#

이중화 동작 시 발생한 데이터베이스간의 데이터 불일치를 해결하는 Altibase 유틸리티인 altiComp의 예제 스크립트 파일이 들어있는 디렉터리이다.

자세한 설명은 Utilities Manual에서 altiComp를 참조한다.

altiMon 디렉터리#

altiMon(Altibase Monitoring Daemon) 실행에 필요한 xml 설정 파일, 쉘 스크립트 및 sql 파일, 로그 디렉터리가 존재한다. 하위 디렉터리에 관한 설명은 Utilities Manual에서 altiMon을 참조한다.

arch_logs 디렉터리#

아카이브 로그 파일이 존재하는 디렉터리이다. 이 디렉터리의 위치 및 디렉터리 이름은 사용자 환경에 맞게 프로퍼티 파일에 명시할 수 있다.

bin 디렉터리#

Altibase의 실행 파일을 포함한 Altibase 관리도구와 사용자 지원 도구들의 실행 파일이 존재하는 디렉터리이다.

bin 디렉터리에는 다음과 같은 파일이 존재한다.

aexport, altiAudit, altibase, altierr, altimon.sh, altipasswd, altiPofile,
altiComp, checkServer, dumpbi, dumpct, dumpdb, dumpddf, dumpla, dumplf, iloader,
isql, killCheckServer, server, apre

iloader, isql, apre에 대한 자세한 설명은 iLoader User's Manual, iSQL User's Manual, Precompiler User's Manual을 각각 참조하고, 나머지 유틸리티에 대한 자세한 설명은 Utilities Manual을 참조한다.

conf 디렉터리#

conf 디렉터리에는 아래의 파일들이 존재한다.

altibase_user.env#

Altibase 운영을 위한 환경변수 설정 파일

altibase.properties#

Altibase용 설정 파일. 설정 가능한 프로퍼티에 대한 설명은 General Reference > 2장. Altibase 프로퍼티를 참조하기 바란다.

license#

Altibase 라이선스 파일

dblink.conf#

데이터베이스 링크용 설정 파일. 설정 가능한 프로퍼티에 대한 설명은 General Reference > 2장. Altibase 프로퍼티를 참조하기 바란다.

aexport.properties#

aexport용 설정 파일. 설정 가능한 프로퍼티에 대한 설명은 Utilities Manual을 참조하기 바란다.

syspassword#

sys 계정 암호를 기록하는 파일. 사용방법은 Utilities Manual을 참조하기 바란다.

dbs 디렉터리#

기본 프로퍼티를 이용할 경우 데이터베이스의 파일들이 생성되는 디렉터리이다. 이 디렉터리의 위치 및 디렉터리 명은 프로퍼티에 명시되어 있다.

SYS_TBS_MEM_DATA 파일에는 기본으로 생성되는 시스템 메모리 테이블스페이스가, SYS_TBS_MEM_DIC 파일에는 메타 테이블이, system001.dbf 파일에는 기본으로 생성되는 디스크 테이블스페이스, temp001.dbf 파일에는 쿼리 수행 시 필요한 임시 결과들이 저장된다.

undo001.dbf 파일에는 SQL문 수행과 복구에 필요한 이전 이미지 정보들이 저장된다. .dwf 파일은 더블 라이트 버퍼 파일로서 디스크 페이지가 임시로 저장된다.

include 디렉터리#

Altibase CLI 라이브러리 등을 이용하여 응용 프로그램을 작성할 때 필요한 헤더 파일을 수록한 디렉터리이다.

alaAPI.h#

Altibase 로그 분석기(ALA)에서 사용하는 API 헤더 파일이다.

sqlcli.h#

클라이언트 응용 프로그램을 작성할 때 필요한 헤더 파일이다.

sqltypes.h#

ODBC 응용 프로그램 개발시 필요한 기초 데이터 타입에 대한 정보를 담고 있다.

sqlucode.h#

유니코드 정의 헤더 파일이다.

ulpLibInterface.h#

C/C++ 전처리기(Precompiler)로 응용 프로그램 개발시 오류 처리 SQL 문장 구조에 대한 정보를 담고 있다.

install 디렉터리#

Altibase 응용프로그램 작성에 필요한 makefile을 위한 매크로 설정 등이 포함된 altibase_env.mk 파일과 README 파일이 있다.

lib 디렉터리#

응용 프로그램 작성에 필요한 라이브러리를 수록한 디렉터리이며 다음과 같은 파일을 갖고있다. 각각의 라이브러리를 이용하여 응용 프로그램을 작성하는 방법은 Getting Started Guide에서 설명한다.

Altibase.jar#

Altibase를 자바 응용프로그램에서 사용하기 위한 JDBC 드라이버이다. 순수 자바 언어로 구현된 Type 4 드라이버이다. 자세한 내용은 JDBC User's Manual을 참조한다.

libapre.a#

내장 SQL 프로그램을 작성할 때 필요한 라이브러리이다. 내장 SQL 프로그램 작성에 관한 자세한 내용은 Precompiler User's Manual을 참조한다.

libodbccli.a#

Altibase CLI 응용프로그램 작성을 위한 라이브러리이다. 자세한 내용은 CLI User's Manual을 참조한다.

libalticapi.a#

Altibase ACI 애플리케이션 작성을 위한 라이브러리이다. 자세한 내용은 Altibase C Interface Manual을 참조한다.

libaltibase_odbc-64bit-ul64.so#

유닉스 계열 운영체제에서 사용할 수 있는 Altibase의 ODBC 드라이버이다. 설치 패키지와 운영 체제에 따라 파일 확장자와 파일 이름이 다를 수 있다. 자세한 내용은 ODBC User's Manual을 참조한다.

그 외#
  • libchksvr.a: Altibase CheckServer API용 라이브러리. API User's Manual을 참조한다.

  • libiloader.a: Altibase iLoader API용 라이브러리. API User's Manual을 참조한다.

  • libaltibaseMonitor.a: Altibase Monitoring API용 라이브러리. Monitoring API Developer's Guide를 참조한다.

  • libsesc.a: 하위 호환성을 위해 제공되며, libapre.a와 동일하다.

logs 디렉터리#

로그앵커 파일들과 로그 파일들이 존재하는 디렉터리다.

이 디렉터리의 위치 및 디렉터리 명은 프로퍼티 파일에 명시할 수 있다. 로그앵커 파일명과 로그 파일명은 Altibase 시스템에 의해 자동으로 결정된다. 로그 앵커를 가진 파일 시스템의 오류에 대비하기 위해서는 프로퍼티를 변경하여 여러 개의 로그 앵커 파일들을 각각 서로 다른 파일 시스템에 두어 관리하는 것이 좋다. do_not_remove_log_files, never_remove_log_files는 로그 파일 삭제 방지를 위한 더미 파일이다.

msg 디렉터리#

오류 메시지를 수록한 파일들을 포함하는 디렉터리다. 다음과 같은 파일이 있다. 각 모듈에 대해 US7ASCII와 KO16KSC5601 캐릭터셋용의 두 메시지 파일이 존재하지만, 파일 안의 오류 메시지는 동일하게 영문만 제공된다.

E_SM_US7ASCII.msb#

자료 저장 관리 모듈에서 발생할 수 있는 오류 메시지를 수록한 파일이다.

E_QP_US7ASCII.msb#

질의 처리 모듈에서 발생할 수 있는 오류 메시지를 수록한 파일이다.

E_MM_US7ASCII.msb#

Altibase 서버의 메인 모듈에서 발생할 수 있는 오류 메시지를 수록한 파일이다.

E_CM_US7ASCII.msb#

Altibase 통신 모듈에서 발생할 수 있는 오류 메시지를 수록한 파일이다.

E_RP_US7ASCII.msb#

Altibase 이중화 모듈에서 발생할 수 있는 오류 메시지를 수록한 파일이다.

E_ST_US7ASCII.msb#

Altibase 공간 데이터 처리 모듈에서 발생할 수 있는 오류 메시지를 수록한 파일이다.

E_DK_US7ASCII.msb#

Altibase 데이터베이스 링크 모듈에서 발생할 수 있는 오류 메시지를 수록한 파일이다.

E_ID_US7ASCII.msb, E_MT_US7ASCII.msb#

함수 실행이나 데이터 타입과 관련된 오류 메시지를 수록한 파일이다.

packages 디렉터리#

Altibase에서 기본으로 제공하는 시스템 정의 저장 패키지들이 존재하는 디렉터리이다. 패키지 생성 스크립트 catproc.sql 파일을 포함한다. 이외 하위 디렉터토리에 관한 설명은 Stored Procedures Manual에서 Altibase 저장 패키지를 참조한다.

sample 디렉터리#

Altibase의 응용 프로그램을 샘플로 제공한 디렉터리다.

JDBC, CLI, C/C++ 전처리기(precompiler) 라이브러리를 이용하여 작성된 프로그램과 Makefile이 수록되어 있다.

thirdparty#

3rd party 연동 시 필요한 스크립트 또는 라이브러리들이 존재한다.

trc 디렉터리#

Altibase 운영 상태를 기록한 파일들이 존재한다. 서버내의 각 모듈은 해당하는 트레이스 파일에 기록한다.

altibase_boot.log#

Altibase 서버가 동작된 상태를 기록하고 있다. 이 파일이 기록하고 있는 정보로는 Altibase 구동 및 종료시 생성되는 시스템 정보에 대한 세부사항이 있다.

altibase_error.log#

서버에서 발생하는 오류 메시지가 기록되는 파일이다. 또한 Altibase의 비정상 종료 시 Altibase 프로세스의 콜 스택이 기록된다.

altibase_trc.log#

Altibase를 시작한 이후부터 발생하는 경고 메시지나 트레이스 메시지 등이 기록되는 파일이다. 이 파일에는 프로세스 내에서 쓰레드 별로 발생하는 경고 메시지 등이 순차적으로 저장된다.

altibase_dump.log#

Altibase 프로세스가 비정상적으로 종료하는 시점의 작업 메모리가 덤프되는 파일이다. Altibase 프로그램의 오류를 진단하고 디버깅하는 데 사용된다.

altibase_sm.log#

저장관리자 모듈에서 발생하는 경고 메시지나 트레이스 메시지 등이 기록되는 파일들이다.

altibase_rp.log#

이중화 모듈에서 발생하는 경고 메시지나 트레이스 메시지 등이 기록되는 파일들이다.

altibase_qp.log#

질의 처리 모듈에서 발생하는 경고 메시지나 트레이스 메시지 등이 기록되는 파일들이다.

altibase_mm.log#

메인 모듈에서 발생하는 경고 메시지나 트레이스 메시지 등이 기록되는 파일들이다.

altibase_cm.log#

통신 모듈에서 발생하는 경고 메시지나 트레이스 메시지 등이 기록되는 파일들이다.

altibase_lb.log#

로드밸런서에서 발생하는 경고 메시지나 트레이스 메시지 등이 기록되는 파일들이다.

altibase_snmp.log#

SNMP에서 발생하는 경고 메시지나 트레이스 메시지 등이 기록되는 파일들이다.

altibase_dk.log#

데이터베이스 링크 모듈에서 발생하는 경고 메시지나 트레이스 메시지 등이 기록되는 파일들이다.

altibase_ipc.log#

IPC로 접속시 생성된 자원(resource)들에 대한 정보가 기록되는 파일이다.

altibase_ipcda.log#

IPCDA로 접속 시 생성된 자원(resource)들에 대한 정보가 기록되는 파일이다.

altibase_xa.log#

XA 인터페이스를 이용해서 Altibase에 수행되는 글로벌 트랜잭션에서 발생하는 경고 메시지나 트레이스 메시지 등이 기록되는 파일이다.

killCheckServer.log#

killCheckServer 유틸리티의 실행 결과가 기록되는 파일이다.


실행 바이너리#

이곳에 설명된 것을 제외한 바이너리 파일에 대한 더 자세한 정보는 Utilities Manual을 참고하기 바란다.

aexport#

Altibase 버전을 업그레이드할 때 필요한 일련의 작업들을 수행할 수 있는 도구로, 업그레이드를 위한 SQL 스크립트 파일, iSQL 실행 쉘 파일, iLoader 실행 쉘 파일을 자동으로 만든다.

altibase#

클라이언트-서버 구조로 운영할 때의 서버이다.

altierr#

오류 코드에 대한 세부 내용을 검색하여 출력한다.

altimon.sh#

Altibase의 동작 상태를 모니터링하는 쉘 스크립트 프로그램이다.

altiProfile#

SQL 문의 통계정보(수행 횟수, 수행 시간)를 수집하는 도구이다.

altipasswd#

sys 계정의 패스워드를 변경하기 위한 도구이다.

altiComp#

altiComp는 두 데이터베이스를 테이블 단위로 비교, 검사하여 불일치하는 정보를 출력하는 기능과 불일치가 발생한 경우 두 데이터베이스를 일치시키는 기능 두 가지를 제공한다.

이에 대한 자세한 내용은 Utilities Manual을 참조한다.

checkServer#

Altibase의 상태를 체크하여 비정상 종료시 수행해야 할 일을 스크립트 파일로 만들어 실행할 수 있도록 한다.

dumpla#

Altibase 로그앵커 파일의 내용을 출력 및 검사한다.

dumplf#

Altibase 로그 파일의 내용을 출력 및 검사한다.

iloader#

데이터베이스의 특정 테이블을 로드 및 언로드할 수 있는 도구이다. 이 도구에 대한 자세한 내용은 iLoader User's Manual을 참조한다.

isql#

대화형으로 Altibase에 질의를 수행할 수 있는 도구이다. 이 도구에 대한 자세한 내용은 iSQL User's Manual을 참조한다.

killCheckServer#

실행중인 checkServer를 종료시킨다.

server#

Altibase의 구동 및 종료, 재시작 등의 동작을 수행할 수 있도록 작성된 쉘 스크립트 프로그램이다.

apre#

내장 SQL문을 사용하여 응용 프로그램을 작성한 후, 작성된 응용 프로그램을 전처리(precompile)하기 위한 전처리 실행 파일이다.

자세한 설명은 Precompiler User's Manual을 참조한다.


Altibase 라이브러리#

Altibase의 응용 프로그램을 작성할 때 필요한 구성 요소들로서, 다음과 같은 것들이 있다.

  • C 또는 C++ 언어로 프로그램을 작성할 때 필요한 라이브러리

  • Altibase CLI 인터페이스를 제공하는 라이브러리 (libodbccli.a)

  • 자바 언어로 프로그래밍할 때 필요한 자바 클래스 라이브러리 (Altibase.jar)

  • 프로그래밍에 필요한 헤더 파일들

이에 대해서는 Getting Started Guide에서 자세히 설명한다.