728x90
1. 멀티미디어 데이터베이스
① 멀티미디어 데이터의 필요성과 그 특성(1)
∘가까운 장래에 멀티미디어 정보시스템(multimedia information systems)이 우리의 일상생활을 지배할 것으로 예상됨 - 멀티미디어 응용 처리를 위한 고속 통신망 연결 - HDTV와 워크스테이션의 멀티미디어 데이터베이스 접근 - 대량의 멀티미디어 콘텐츠를 포함한 디지털 도서관 - 디지털 라이브러리, 이미지와 비디오 등 수많은 데이터베이스에 연결됨 ∘이미지(image), 비디오(video), 오디오(audio), 문서(document) 등의 멀티미디어 데이터들은 일반적으로 외부파일에 저장되어서 활용되고 있음 ∘멀티미디어 데이터는 언제, 누가 만들었는지, 어떤 카테고리에 속하는지와 같은 서술적 속성을 가짐 ∘멀티미디어 데이터의 저장 방법은 양이 적을 때는 데이터베이스가 제공하는 기능들이 중요하지 않고 외부에 저장해도 별 문제가 없지만, 양이 많을 때는 효율적인 제공을 위해서는 데이터베이스 기능들이 아주 중요한 역할을 함 ∘멀티미디어 데이터베이스(multimedia database)는 사용자에게 멀티미디어 데이터를 저장하고 질의할 수 있는 기능 제공함 ∘사용자가 원하는 특정 객체를 포함하는 멀티미디어 소스 검색 질의 필요(내용기반 검색) - 비디오 데이터베이스에서 어떤 사람(객체)이 포함되어 있는 모든 비디오 검색 - 골프선수 타이거 우즈가 포함되어 있는 모든 비디오를 찾기를 원함 - 월드컵 축구 경기에서 어떤 선수가 골을 넣는 장면(활동)이 포함된 비디오를 검색함 ∘내용을 포함하고 있는 어떤 객체나 활동을 기반으로 멀티미디어 소스를 검색하는 것을 내용기반 검색(content-based retrieval)하며, 따라서 멀티미디어 데이터베이스는 내용 기반의 멀티미디어 소스 조직 및 인덱싱할 수 있는 어떤 모델 사용이 필요함 ∘멀티미디어 소스의 내용 식별은 고비용의 작업이며, 그 방법에는 두 가지가 있음 - 첫째 방법은 내용의 수학적 특성을 식별하기 위해 멀티미디어 소스의 자동 분석(automatic analysis)에 기반을 두고 있으며, 멀티미디어 소스에 따라서 상이한 기법을 사용함 - 두 번째 방법은 각 멀티미디어 소스에서 관심이 있는 객체와 활동을 수동식별(manual identification)해서 소스를 인덱싱하는데 이 정보를 이용하는 것으로써, 모든 종류의 멀티미디어에 적용 가능하지만 멀티미디어 소스를 검사하는 전 처리 과정 필요함 |
② 멀티미디어 데이터의 필요성과 그 특성(2)
∘이미지(image) 데이터의 특성 - 픽셀(pixel)의 집합: 원래의 형태 혹은 공간 절약을 위한 압축 형태로 저장되었음 - 이미지 모양 서술자(shape descriptor): . 원래 이미지의 도형적인 형상 설명됨 . 너비와 높이를 가진 셀(cell)로 구성된 사각형으로 표현함 . 각 이미지는 m × n 셀의 격자(grid)로 표현 가능함 . 각 셀은 그 셀 내용을 기술하는 픽셀 값 포함함(픽셀 값: 하나 또는 복수의 비트) - 압축 포맷 . GIF(Graphics Interchange Format)와 JPEG(Joint Photographic Experts Group)와 같은 압축 포맷을 사용하며, 이들은 저장되는 셀의 수를 줄이면서, 이미지의 기본 특성 유지할 수 있도록 수학적 변환 방법을 사용함 . 수학적 변환에는 DFT(Discrete Fourier Transform), DCT(Discrete Cosine Transform), 웨이블릿 변환(Wavelet Transform) 등이 있음 ∘이미지 데이터베이스에 대한 질의 - 주어진 이미지에 대해 그와 유사한 이미지를 데이터베이스에서 검색 → 주어진 패턴과 똑같은 패턴 포함하는 이미지 검색 ∘이미지 데이터베이스의 탐색 기법 - 거리 함수(distance function) 사용: 주어진 이미지를 데이터베이스에 저장된 이미지나 세그먼트와 비교하는 것으로써 만일 계산된 거리 값이 작게 되면, 매치될 가능성이 높으며, 이때 탐색공간 축소를 위해 거리값이 비슷하게 저장된 이미지를 그룹지어 인덱스 함 - 변환 기법(transformation approach) 사용: 다른 이미지와 매치시키기 위해 한 이미지의 셀들을 몇 번의 변환을 통해 이미지 유사도(similarity)를 측정함. 이 변환에는 회전(rotation), 번역(translation), 축척(scaling) 포함되며, 일반적인 방법이지만 어렵고 시간이 많이 걸림 ∘비디오(video) 데이터의 특성 - 통상적으로 일련의 프레임(frame)으로 표현되고, 각 프레임은 정적 이미지(still image)임 - 개개 프레임에서 객체나 활동을 식별하지 않으며, 비디오 데이터들은 크기가 수 기가바이트에 이르기 때문 비디오 세그먼트(video segment)로 나누어 저장함 - 세그먼트는 같은 객체나 활동을 포함하고 있는 연속적 프레임들의 순차로 구성되며, 시작과 종료 프레임으로 식별됨 - 각 세그먼트에서 식별되는 객체와 활동들을 인덱스로 사용 가능함 - 프레임 세그먼트 트리(frame segment tree)라고 하는 비디오 인덱스 방법으로 제안됨 - 이 인덱스에는 객체와 활동이 인덱스에 포함됨: 예) 사람, 집, 자동차와 같은 객체와 연설하는 사람이나 서로 얘기하고 있는 두 사람과 같은 활동을 인덱스로 만들 수 있음 - 공간 낭비를 방지하기 위해 JPEG포맷 보다는 MPEG(Motion Picture Experts Group) 압축 포맷을 이용하며, 이것은 연속된 프레임 간의 유사도를 이용하여 압축률을 높이는 방법임 |
③ 멀티미디어 데이터의 필요성과 그 특성(3)
∘텍스트/문서(text/document) 데이터의 특성 - 기사, 책, 잡지 등의 전문(full text) 같은 데이터를 말함 - 데이터는 보통 텍스트에 나오는 키워드와 상대적 빈도수를 식별해서 인덱스 되어짐 - 인덱스 과정에서 채움 단어(filler word)는 제거됨 - 문서 수집 전체를 인덱스하면, 키워드가 너무 많게 되기 때문에 수집에 가장 관련이 많은 키워드로만 축소하는 기법이 개발됨 ∘오디오/음성(audio) 데이터의 특성 - 연설, 학술 발표, 전화 메시지나 대화 등의 녹음된 메시지 포함됨 - 유사도 기반 인덱싱(similarity-based indexing)과 검색을 위해 어떤 사람의 음성에 대한 주요 특징(features)을 식별하기 위해 이산 변환(discrete transformation)이 사용되고 있음 - 오디오 특성에는 크기(loudness), 강도(intensity), 고저(pitch), 투명성(clarity)이 포함됨 - 오디오 압축을 위해 MP3(MPEG-1 Layer 3), 리얼오디오(RealAudio) 등의 표준이 있음 |
④ 멀티미디어 응용의 속성
∘저장 위주의 응용 - 대용량 메타데이터 및 멀티미디어 데이터가 검색 목적으로 저장됨 - 인공위성 이미지, 공학 도면이나 설계도, 항공사진, 방사선 사진의 저장소 등 ∘프레젠테이션 응용 - 많은 응용은 시간적 제약 하에서 멀티미디어 데이터 전송하는 작업 수행함 - 비디오 데이터를 보기 위한 멀티미디어 시청에는 VCR과 같은 기능을 제공하는 시스템이 필요하나, 복잡하고 대화식의 멀티미디어 프레젠테이션에는 구성 요소들을 순차적, 병행적으로 검색하기 위해 통합된 제어가 필요함. - 대화식 환경은 실시간 편집 분석이나 비디오와 오디오 데이터에 주석을 다는 것과 같은 기능을 제공해야 함. ∘멀티미디어 정보를 이용한 협동 작업 - 새로운 응용분야로서, 응용 내에서 엔지니어들은 도면을 병합해 복잡한 설계 작업을 수행할 수 있고, 주어진 주제를 설계 제약에 맞추기도 하며, 새로운 문서를 제작하고 공지사항 변경 등의 작업을 수행할 수 있음 |
⑤ 멀티미디어 데이터 관리 및 멀티미디어 데이터베이스의 응용
∘멀티미디어 정보 시스템의 문제점 - 모델링: 복합 개체를 다룰 수 있어야 함 - 설계: 개념적, 논리적, 물리적 설계 기술은 아직 완전한 수준이 아님 - 저장: 멀티미디어 데이터를 표준 디스크와 같은 장치에 저장하는 것은 표현, 압축, 장치계층구조로의 매핑, 화일보관, 버퍼링 문제점이 생김 - 질의 및 검색: 정보검색을 위한 “데이터베이스 적”인 방법은 질의어와 내부 인덱스 구조를 바탕으로 함 - 성능 . 문서와 텍스트만 포함하는 멀티미디어 응용에서 이 제약조건은 사용자 주관으로 결정 . 비디오 재생, 오디오 비디오 등의 동기화를 포함하는 멀티미디어 응용은 물리적인 제한에 의해 결정되어야 함 ∘멀티미디어 데이터베이스 응용 - 문서와 레코드 관리 . 많은 산업과 비즈니스에는 자세한 레코드와 다양한 문서들 유지 . 엔지니어링 설계와 제조 데이터, 환자의 의료기록, 보험금 신청 레코드, 출판 자료 - 지식 보급(knowledge dissemination) . 지식 보급의 아주 효과적인 방법으로서 멀티미디어 방식은 디지털 책, 카탈로그, 백과사전, 여러 분야의 정보 저장소에 있어서의 성장 예상 - 교육과 훈련 . 상이한 교육 대상에 대한 강의 자료를 멀티미디어 소스로 설계 . 디지털 도서관: 학생과 연구자 뿐 아니라 다른 사용자들에게 광범위한 교육 자료의 저장소를 접근하는 방법에 대해 영향 예상 - 마케팅, 광고, 소매, 오락 . 효과적인 판매 설명에서부터 시내 관광, 예술관의 가상 관람에 이르기까지 모든 분야에서 멀티미디어 정보를 이용할 수 있음 . 영화 산업에서의 애니메이션이나 합성과 같은 특수 효과 . 멀티미디어 데이터베이스에 미리 설계, 저장해둔 객체를 이용, 응용 범위 확장 예상 - 실시간 제어 및 감시 . 능동 데이터베이스(active database) 기술과 결합된 정보의 멀티미디어 표현 이용 , 제조, 공정, 핵발전소, 중환자실의 환자, 운송 시스템 등 복잡한 작업의 효과적인 감시 및 제어 |
2. 분산 데이터베이스
① 분산 데이터베이스 개념
∘분산 데이터베이스(DDB; Distributed Database) - 컴퓨터 네트워크를 통해 분산된, 논리적으로 상호 연관된 다수의 데이터베이스들의 모임 ∘분산 데이터베이스 관리 시스템(DDBMS; Distributed Database Management System) - 분산 데이터베이스를 관리하면서 사용자에게 데이터베이스 분산을 투명하게 하는 소프트웨어 시스템 ∘병렬 데이터베이스 관리 시스템(parallel database management system): DDBMS라고 하지 않으며, 다음과 같은 주요 유형이 있음 - 공유 메모리(밀접하게 결합된) 아키텍처; 다수의 프로세서가 보조 및 주기억 장치 공유 - 공유 디스크(느슨하게 결합된) 아키텍처: 다수의 프로세서가 보조기억 장치를 공유하지만 각자의 주기억 장치를 갖고 있음 - shared nothing 아키텍처: 모든 프로세서는 각자 자신의 주기억 장치와 보조기억 장치를 가지므로 공유 메모리가 없으며, 프로세서들은 고속의 상호 연결 네트워크로 통신 ∘분산 데이터베이스의 장점 - 여러 수준의 투명성을 갖는 분산 데이터 관리 . 분산 또는 네트워크 투명성(distribution or network transparency): 위치 투명성(location transparency) 및 이름 부여 투명성(naming transparency) . 중복 투명성(replication transparency) . 단편화 투명성(fragmentation transparency): 수평 단편화 및 수직 단편화 - 향상된 신뢰도와 가용성 . 신뢰도: 특정 순간에 시스템이 동작하는 확률 . 가용성: 시스템이 어떤 시간 간격 동안 계속적으로 가용 상태일 확률 - 성능의 향상 . 분산 DBMS는 데이터베이스를 단편화하여 데이터를 가장 필요로 하는 사이트에 가깝게 유지 - 용이한 확장성: 데이터 추가, 데이터베이스 크기 확장, 프로세서 추가하는 것이 용이함 ∘DDBMS를 위해 필요한 추가 기능 - 데이터에 관한 정보 유지, 분산질의 처리, 분산 트랜잭션 관리, 중복 데이터 관리, 분산 데이터베이스 회복, 보안, 분산 디렉터리(카탈로그) 관리 ∘DDBMS는 하드웨어 면에서 중앙집중식 시스템과의 차이가 있음 - 사이트 또는 노드라 불리는 다수의 컴퓨터들이 있음 - 통신 네트워크로 연결되어야 함 - 근거리 네트워크를 통해 연결되거나 원거리 네트워크를 통해 연결될 수도 있음 |
② 분산 데이터베이스 설계를 위한 데이터 단편화, 중복, 할당 방법(1)
∘데이터 단편화 - 어떤 사이트가 데이터베이스의 어떤 부분들을 저장하는데 사용될 것인지를 결정해야 함 - 분산 방법을 결정하기 전에 분산되는 데이터베이스의 논리적 단위를 먼저 결정해야 함 . 단순한 논리적 단위는 릴레이션 자체이고 보다 작은 논리적 단위들로 나눌 수 있음 . 당분간 데이터 중복이 없다고 가정함 - 릴레이션이나 그 일부가 한 사이트에만 저장됨 ∘수평 단편화(horizontal fragmentation) - 릴레이션의 수평 단편은 릴레이션의 투플들의 부분 집합임 - 이에 속하는 투플들은 릴레이션의 하나 이상의 애트리뷰트에 대한 조건으로 명시됨 - 릴레이션 R에서 각 수평 단편의 관계 대수 표현: σCi(R) - 예를 들어 STUDENT 릴레이션 STUDENT(SNO, SNAME, SYEAR, SDEPT)라고 할 때, 수평 단편화를 정의하면, . STUDENT1 = σ SDEPT='컴퓨터공학과'(STUDENT) . STUDENT2 = σ SDEPT≠'컴퓨터공학과'(STUDENT) - 수평 단편들의 성질 . R = R1 ∪ R2 ∪ ... ∪ Rn . R1 ∩ R2 ∩ ... ∩ Rn = Φ . R의 모든 투플 r에 대해, r∈R1 ∨ r∈R1 ∨ ... ∨ r∈Rn - 동적 단편화: 각 객체는 그 값이 변경되면 소속되는 단편도 변경되어야 하기 때문임 ∘수직 단편화(vertical fragmentation) - 릴레이션의 애트리뷰트들을 수직으로 나눈 부분 집합을 말함 - 전체 릴레이션이 단편들로부터 재구성될 수 있도록 모든 수직 단편에 기본키를 포함 - 릴레이션 R에서 각 수직 단편의 관계대수 표현: πLi(R) - 예를 들어 EMPLOYEE 릴레이션을 수직 단편화를 하면, . 개인인적사항: EMPLOYEE(SSN, NAME, BDATE, ADDRESS, SEX) . 근무관련정보: EMPLOYEE(SSN, SALARY, SUPERSSN, DNO) - 기본적 성질: R은 전역 릴레이션, attr(R)은 R의 애트리뷰트 집합이라고 하면 . attr(R1) ∪ attr(R2) ∪ ... ∪ attr(Rn) = attr(R) . attr(R1) ∩ attr(R2) ∩ ... ∩ attr(Rn) = R의 기본키 . R = R1 ⋈ R2 ⋈ ... ⋈ Rn - 정적 단편화: 데이터 객체의 값이 변경되더라도 아무런 영향을 주지 않기 때문임 ∘혼합 단편화(mixed fragmentation) - 수평 단편화와 수직 단편화 방법을 혼용해서 단편을 만드는 방법 - 단편화 연산인 실렉션(σ)과 프로젝션(π) 연산을 전역 릴레이션에 적절히 혼용 적용함 . EMP1 = πSSN, NAME, BDATE, ADDRESS, SEX (σSEX = 'M' (EMPLOYEE)) . EMP2 = πSSN, SALARY, SUPERSSN, DNO (σSEX = 'M' (EMPLOYEE)) . EMP3 = πSSN, NAME, BDATE, ADDRESS, SEX (σSEX = 'F' (EMPLOYEE)) . EMP4 = πSSN, SALARY, SUPERSSN, DNO (σSEX = 'F' (EMPLOYEE)) - 원래의 전역 릴레이션으로 회복시키려면 자연 조인과 유니온을 적절한 순서로 적용함 . EMPLOYEE = (EMP1 ⋈ EMP2) ∪ (EMP3 ⋈ EMP4) |
③ 분산 데이터베이스 설계를 위한 데이터 단편화, 중복, 할당 방법(2)
∘데이터 중복과 할당 - 데이터의 중복은 가용성을 향상시키기 때문에 극단적인 경우에는 모든 사이트에 전체 데이터베이스를 중복하여 완전 중복된 분산데이터베이스를 생성함 - 전역 질의의 결과를 임의의 한 사이트로부터 지역적으로 얻을 수 있기 때문에 전역 질의의 검색 성능을 향상시킴 - 검색 질의는 질의가 입력된 지역 사이트가 서버 모듈에 포함한다면 그 사이트에서 처리될 수 있음 - 완전중복의 단점은 갱신 연산이 매우 느리게 수행됨 . 하나의 논리적 갱신은 사본들이 일관성이 유지되도록 데이터베이스 모든 사본에 수행 - 동시성 제어와 회복에 많은 비용 소요 ∘비중복 할당(nonredundant allocation) - 중복을 전혀 가지지 않는 것임. 즉, 각 단편은 정확하게 하나의 사이트에 저장됨 - 수직(혹은 혼합) 단편들 간의 기본키 중복을 제외하고 모든 단편들은 겹치지 않아야 함 ∘부분 중복(partial replication) - 데이터베이스의 어떤 단편들은 중복될 수 있고, 반면 다른 단편들은 중복되지 않음 - 각 단편의 사본 수는 하나에서 분산 시스템의 전체 사이트 수까지 될 수 있음 - 단편들의 중복에 대한 기술을 때로 중복 스키마(replication schema)라고 부름 ∘데이터 분산(data distribution) 또는 데이터 할당(data allocation) - 각 단편이나 단편의 사본을 특정 사이트에 할당함 - 사이트 선택과 중복의 정도는 시스템의 성능과 가용성 목표, 각 사이트에 입력되는 트랜잭션의 유형과 빈도에 의존함 |
④ 분산 데이터베이스 시스템 유형
∘동질성의 정도에 따라서 동질 DDBMS, 이질 DDBMS로 분류됨 - 예를 들어 모든 서버 각 지역 DBMS와 또한 사용자가 동일한 소프트웨어 사용 - 동질 ∘지역 자치성의 정도에 따라서 지역 자치성이 매우 높은 연합 DDBMS (다중 데이터베이스 시스템)과 지역 자치성이 없는 DDBMS 분류됨 ∘연합 데이터베이스 관리 시스템 문제 - 데이터 모델의 차이: 계층, 네트워크, 관계, 객체 등의 다양한 데이터모델을 기반에 둠 - 제약조건의 차이: 시스템마다 제약조건을 명시하고 구현함이 다름 - 질의어의 차이: SQL의 경우 SQL-89, SQL-92, SQL-99 등의 버전이 있음 ∘의미적 이질성(semantic heterogeneity) - 동일한 데이터 또는 연관된 데이터의 의미, 해석, 의도된 사용에 차이가 있을 때 발생함 - 데이터가 유래되는 범위: 예)상이한 처리방식을 가진 두 개의 고객 계좌 데이터베이스 - 표현과 이름 부여: 데이터 모델의 구조는 각각의 지역 데이터베이스에 대해 미리 명시 - 데이터에 대한 이해, 의미, 주관적인 해석: 의미적 이질성의 중요한 요인임 - 트랜잭션과 정책 제약조건: 직렬가능성 기준, 보상 트랜잭션, 기타 트랜잭션을 다룸 - 요약 정보의 유도: 시스템이 지원하는 집단화, 요약, 기타 데이터 처리 기능과 연산들 |
⑤ 분산 데이터베이스 시스템에서 동시성 제어
∘데이터 항목의 식별 사본에 기반을 둔 분산 동시성 제어 - 중앙집중식 환경에서의 로킹을 확장한 관점에서 기법들을 설명 - 아이디어는 각 데이터 항목의 특정 사본을 식별 사본(distributed copy)으로 지정한 것 - 데이터 항목에 대한 로크들은 식별 사본과 연관되고, 모든 로크 획득과 로크 해제 요청들은 그 사본을 포함하는 사이트로 보내짐 - 주 사이트 기법(primary site) . 하나의 주 사이트가 모든 데이터베이스 항목들을 위한 조정자 사이트를 지정되며, 모든 로크들이 그 사이트에 유지되고, 모든 로크 획득과 해제 요청들은 그 사이트로 보내짐. . 복잡하지 않다는 장점이 있지만, 하나의 사이트로 보내지므로 과부하에 의한 시스템 병목현상을 일으킬 가능성이 높은 단점이 있음 - 백업 사이트를 가진 주 사이트 기법 . 백업 사이트를 지정해서 주 사이트 기법의 단점을 해결했으며, 모든 로킹 정보는 주 사이트와 백업 사이트 모두에 유지하고, 주 사이트 고장 시, 백업 사이트가 주 사이트가 되고 새로운 백업 사이트를 지정함. . 로크 요청과 허가는 주 사이트와 백업 사이트를 거치므로 느리고, 로크 요청들 때문에 주 사이트와 백업 사이트에 과부하 야기함 - 주 사본(primary copy) 기법 . 데이터 항목들의 식별 사본들을 여러 사이트에 저장함으로써 사이트들 사이의 로크 조정 부하를 분산함 . 한 사이트의 고장은 주 사본이 그 사이트에 존재하는 항목들에 대한 로크를 접근하고 있는 트랜잭션에만 영향을 미치지만, 다른 트랜잭션들에는 영향을 주지 않음 - 고장 시 새로운 조정자 선정 . 어떠한 기법이든지 조정자 사이트가 고장이 나면 새로운 조정자를 선정해야 함 . 백업 사이트가 없는 주 사이트 기법에서는 모든 실행 중인 트랜잭션을 철회하고 재 시작해야 하며, 회복 시간이 오래 걸림 . 회복 처리: 새로운 주 사이트 선정, 로크 관리자 프로세스 생성, 그 사이트에 모든 로크 정보를 기록함 . 선거(election): 백업 사이트가 존재하지 않거나 주 사이트와 백업 사이트 모두가 고장이 나면, 새로운 조정자 선정을 위해 선거를 사용함 ∘투표에 기반을 둔 분산 동시성 제어 - 로크 요청들은 해당 데이터 항목의 사본을 가진 모든 사이트에 보내짐 - 각 사본은 자신의 로크를 유지하고 로크 요청을 승인하거나 거부 - 트랜잭션의 로크 요청 . 로크를 요청하고 그 사본들의 과반수이상에게서 로크를 승인을 받으면 로크를 보유하고, 모든 사본들에게 자신이 로크를 보유했다는 사실을 알림 . 과반수이상에게서 로크를 승인을 받지 못하면 로킹을 취소하고 취소 사실을 모든 사본에게 알림 - 진정한 분산 동시성 제어 기법으로 볼 수 있으나, 알고리즘은 극히 복잡함 |
3. 시간 및 공간 데이터베이스
① 시간 데이터베이스의 필요성과 용도에 따른 시간 구분
∘일반적인 데이터베이스 시스템은 오직 현재 시점의 상태만을 관리로 과거의 데이터가 소멸되며, 따라서 데이터에 대한 이력(history) 사항을 요구하는 응용 분야에 필요하며 이와 같은 문제를 해결하시 위하여 개발된 것이 시간 데이터베이스(temporal database)임 ∘시간 데이터베이스는 현재 사실에 대한 데이터뿐만 아니라 과거 사실에 대한 데이터를 저장 관리하며, 데이터가 유효한 시간과 데이터가 데이터베이스 내에 수록된 시간을 저장할 수 있음 ∘시간적으로 발생하는 데이터의 이력사항을 모두 기록 관리하는 시스템이며, 시간에 대한 정보를 저장하기 위하여 시간 속성을 가짐 ∘시간 속성이 가지는 값의 영역은 그 구조에 따라 시간의 한 순간을 의미하는 시점과 두 시점 사이의 시간을 의미하는 간격으로 분류할 수 있음 ∘용도에 따른 시간 구분 - 유효 시간: 현실 세계에서 발생된 시간 또는 객체의 의미가 유효한 시간을 가리키는 것으로, 유효한 시간(effective time), 내부 시간(intrinsic time), 논리적인 시간(logical time) 이라고도 하며, 이와 같은 유효 시간을 사용하는 데이터베이스는 이력 데이터베이스(historical database), 이원 시간지원 데이터베이스(bi-temporal database)가 있음 - 트랜잭션 시간: 시간에 관한 데이터가 데이터베이스에 저장된 시간을 의미하는 것으로써, 등록 시간(registration time), 외부 시간(extrinsic time), 물리적인 시간(physical time)리하고도 하며, 이러한 트랜잭션 시간은 거래 데이터베이스(rollback database)와 이원 시간지원 데이터베이스에서 이용됨 - 사용자 정의 시간: 유효 시간과 트랜잭션 시간에 의해서 처리되지 못하는 시간으로서 사용자 또는 응용프로그램에서 정의하여 사용함. 사용자 정의 시간은 DBMS에 의하여 지원되지 않으며, 시간의 표현은 내부적인 표현과 입출력 함수가 필요하고, 유효 시간과 트랜잭션 시간에서 지원하지 않는 문자형 표현도 가능함 |
② 시간 데이터베이스의 종류
∘스냅 데이터베이스 - 기존 데이터베이스 모델에서 스냅샷(snapshot)은 특정 시점에서 실세계 동적인 모델을 의미함, - 데이터베이스의 상태 또는 값은 실제로 현재 내용이며, 데이터베이스 상태를 변경하는 것은 기존의 상태를 완전히 제거하여 새로운 현재 상태로 변환하는 것을 의미함 - 시간 데이터베이스에서 유효시간이나 트랜잭션 시간들의 시간 개념을 필요치 않은 데이터베이스를 의미함 - 스냅 데이터베이스는 릴레이션들의 집합이며, 릴레이션은 동일한 속성을 갖는 투플들의 집합으로 2차원 테이블 형태로 표현됨 ∘트랜잭션 데이터베이스 - 시간을 인덱스로 하여 과거의 모든 데이터를 기록하고 처리하는 데이터베이스임 - 시용되는 시간은 트랜잭션 시간이며, 트랜잭션 시간을 기준 축으로 하는 연속적인 스냅 릴레이션으로 표현되고, 논리적으로는 3차원 구조가 됨 - 물리적으로 시스템 클럭에 의해서 지원되는 시간에 의존하므로 이력자료의 오류 발견 시 수정이 불가능하므로 데이터 추가만이 가능함 ∘이력 데이터베이스 - 릴레이션 당 단일한 이력 상태를 기록하며, 유효 시간으로 표현함 - 과거의 이력 자료에 대하여 오류가 있는 경우에 오류 수정은 가능하나 전에 기록된 자료를 지우게 되므로 과거의 이력 상태를 관찰할 수 없음 - 이력 데이터베이스는 3차원 구조로 시간 축은 유효시간을 의미함 ∘이원 시간지원 데이터베이스 - 트랜잭션 시간과 유효시간을 모두 지원하는 시간 정보를 처리하기 위해 두 개의 시간을 축으로 하여 4차원 구조를 형성함 - 시간 속성은 Ts, Te, Vf, Vt 4가지이며, 단지 데이터의 추가만 가능함 |
③ 공간 데이터베이스에서 공간의 표현
∘공간 데이터의 표현 대상 - 위치, 모양 : 가장 기본적인 정보 - 거리, 둘레, 넓이, 부피, 기울기 : 계산되는 정보 - 위상적 관계 : 공간 객체 사이의 관계 ∘공간 데이터의 표현 방법: 래스터(raster) 모델과 벡터(vector) 모델이 있음 - 래스터 데이터: 픽셀 집합으로 입출력 . 체인 코드, Run-length 코드, 블록 코드 등 . 체인 코드: 주어진 이미지에 대하여 시작점과 방향을 사용하여 영역을 경계점을 표현 . 예) 시작점에서 반 시계방향으로 진행한 체인코드 . [N7, W3, N7, E11, S1, W1, S1, W1, S9, E4, S3, W10] - 벡터 데이터: 점, 선, 영역 타입 등이 있으며, 내부 연산 대상 . 점 : 하나의 벡터 데이터 값 . 선 : 시작점과 끝점의 벡터 데이터 값의 집합 . 영역 : 일련의 선들의 집합, 다수개의 시작점과 끝점의 순서쌍 ∘지리공간 모델링 방법: Entity-Based Model과 Field-Based Model로 구분됨 - Entity-Based Model: geographic object . Entity(or Feature): 기술(Description) + 공간요소(Spatial component) + Identity . 공간의 해석은 지리적인 범위에 기반을 두며, 예를 들면, France의 범위- 행정, geologic, traffic control 등을 표현하고, 공간을 설명하는 entity들의 새로운 collection(theme)을 정의 함 - Entity-Based Model에서의 공간객체 타입 - Field-Based Model . Space Based Model: 공간의 각 점들이 하나 이상의 속성값들과 연관되며, 공간상에 위치한 값들을 통해 해발고도, 강수량, 온도 등을 측정함 . Entity-Based Model과의 차이점은 Object의 개념이 관련되지 않았으며, 공간의 각각의 point들이 갖는 attribute value들을 표현하고, Continuous space를 다룸. |
④ 지리정보시스템에서 공간데이터베이스의 응용
∘지리정보 시스템 (GIS, Geographic Information System)의 사용 목적 - 지리 세계의 물리적 특성 표현 정보 수집, 모델, 저장, 분석 ∘지리정보 시스템(GIS)의 범위 - 공간 데이터(spatial data) . 지도, 디지털 이미지, 행정 경계, 도로, 운송 네트워크로부터 생성되는 것 . 강, 토지 특성, 기후 지역, 고도 등과 같은 자연 데이터 - 비공간 데이터(nonspatial data) . 사회-경제 데이터, 경제 데이터, 판매 또는 마케팅 정보 ∘GIS의 현재와 미래 - 고도의 기술적 요구를 만족하기 위한 창조적 방법을 제의하는 분야로 급속히 발전해 가고 있음 ∘지도 제작 응용(cartographic application) - 필드기반 표현이 요구됨 - 지도 접근법 . 3차원 공간에서 거리를 측정하여 지도 위에 데이터를 재분류할 수 있는 속성 데이터를 조합하기 위한 목적임 . 지도의 층(layer)들 간의 중첩을 포함할 수 있는 특별한 기능 필요함 ∘디지털 지형 모델링(DTM, digital terrain modelling) 응용 - 필드기반 표현이 요구됨 - 지표면을 디지털로 표현함 . 지표 지형을 보여주는 3차원 네트(3D에서 연결된 선)와 같은 지표 모델을 만들 수 있게 연결된 샘플 지점의 고도 이용 - 시각화뿐만 아니라 관측 지점들에 대한 보간(interpolation) 기능 필요함 ∘지리 객체(geographic object) 응용 - 객체기반 표현이 요구됨 - 도로, 파이프라인, 통신 케이블, 전선 등을 처리할 수 있는 공간적 지능이 필요함 - 예) 어떤 특정 지역에 대한 비교 지도 . 도로, 케이블, 빌딩, 개울과 같은 어떤 데이터에서의 변화를 보여주는 여러 시점에서의 비교를 위해 사용 가능 |
4. 모바일 및 스트림 데이터베이스
① 모바일 데이터베이스에 관한 환경과 그 응용(1)
∘최근 이동 및 무선 통신의 발달로 인해 데이터 통신 및 처리를 다루는 새로운 이동 컴퓨팅 분야 등장하였음 ∘무선 통신과 결합된 휴대용 단말기: 사용자가 어느 시간, 어느 곳에서도 데이터에 접근 가능해야함 ∘이동 컴퓨터 기능의 완전한 사용을 위해서는 많은 하드웨어 및 소프트웨어 문제점 해결해야 함: 소프트웨어 문제점 중 데이터 관리, 트랜잭션 관리, DB 회복과 같은 것들은 분산 DB 시스템에 기인함 ∘이동 컴퓨팅의 특성 - 높은 통신 지연: 무선 송수신기 사이의 데이터 코딩과 신호 필터링 처리 업무 - 간헐적인 무선 연결: 배터리 크기와 연관 - 제한된 배터리 시간: 의도적, 비의도적 이유로 연결이 단절됨 - 변화하는 클라이언트 위치: 사용자도 끊임없이 이동함 ∘이동 환경의 특성 - 클라이언트가 휴면 상태(dozing)이거나 베이스 스테이션이 커버하는 범위를 이탈했을 때 접속할 수 없게 됨 . 휴면상태(dozing) : 에너지를 절약하기 위해 서브시스템들의 동작을 중지시킨 상태 - 휴먼상태나 범위 이탈의 두 경우 모두 서버와 클라이언트는 상호 연결이 되지 않으며, 이런 문제를 해결하기 위해서는 구조적 변경이 불가피 함 . 접속 불가인 구성 요소를 위해 구조에 그 대리자(Proxies)가 추가됨 - 클라이언트에 대한(또는 서버에 대한) 대리자는 갱신된 데이터의 복사 본을 임시로 가지며, 나중에 연결이 가능해지면 대리자는 자동적으로 복사된 갱신 데이터를 궁극적 목적지에 전달하게 됨 - 이동 컴퓨팅은 클라이언트뿐 아니라 서버에서도 해결해야 하는 문제점을 가지고 있음 - 무선 통신으로 인한 지연시간은 확장성을 어렵게 함 - 클라이언트 요구 처리 시간을 늘리기 때문에 서버는 작은 수의 클라이언트에게만 서비스를 제공하게 됨 - 해결방법 : 가능한 경우마다 데이터를 방송(broadcasting)함으로써 활성화된 연결을 서버와 유지하지 않아도 되므로 서버 측 부담 감소 - 클라이언트 이동성으로 인한 데이터 관리 문제점 . 서버는 효과적 경로배정을 위해 항상 클라이언트의 위치를 추적해야 함 . 클라이언트 데이터는 접근하기 위해 거쳐야 할 경로를 최소화하는 네트워크 위치에 저장되어야 함 . 셀 간의 이동 행위가 클라이언트에게는 느껴지지 않아야 함 . 서버는 한 베이스 스테이션에서 다른 베이스 스테이션으로 이음새 없이 전환함으로써 클라이언트가 느끼지 않게 데이터를 배달해야 함 . 클라이언트의 이동성은 위치기반 서비스(location based services)라는 새로운 응용분야를 개척하고 있음 |
② 모바일 데이터베이스에 관한 환경과 그 응용(2)
∘데이터 관리의 문제점 - 데이터 관점에서 이동 컴퓨팅은 분산 컴퓨팅의 변형으로 볼 수 있는데, 이동 데이터베이스는 다음의 두 가지 시나리오에 따라 분산될 수 있음 . 전체 데이터베이스는 주로 유선으로 연결된 구성 요소들 사이에 완전 또는 부분 중복되어 분산됨. 각 베이스 스테이션 또는 고정 호스트는 자신의 데이터베이스를 DBMS와 유사한 기능으로 관리하며, 이동 환경 요구사항을 만족시키기 위해 이동 단위를 찾고 질의 및 트랜잭션을 관리하는 기능들이 추가됨 . 데이터베이스가 유무선 구성 요소들 사이에 분산됨. 데이터 관리 책임은 베이스 스테이션 또는 고정 호스트와 이동 단위가 분담함 ∘모바일 데이터베이스의 응용 - 이동 컴퓨팅 환경의 부상 . 사람들이 사무실이나 집밖에서 업무를 수행하고, 폭넓은 활동 및 작업을 수행함에 따라서 이동 컴퓨팅 시나리오가 설득력을 얻고 있음 . 주요 분야 : 판매부문, 법집행부문, 여행 및 교통 서비스, 보험 및 재정 자문 부문 등 . 이런 환경을 ISDBE라고 함 - ISDBE(Intermittently Synchronized Database Environment ) . 클라이언트가 연결될 때, 클라이언트와 서버의 동기화 과정을 통해 클라이언트는 갱신 데이터를 받아 지역 데이터베이스에 설치하게 됨 . 이 시나리오의 특징은 클라이언트가 대부분의 시간 동안 서버로부터 차단되어 있음 . 이런 환경은 분산 및 클라이언트/서버 데이터베이스 또는 이동 데이터베이스와 비슷한 문제를 내포하고 있음 - ISDB (Intermittently Synchronized Database)특성: 이동 데이터베이스와 구분되는 사항 . 클라이언트는 갱신 데이터를 수신하고 싶을 때 서버와 접속함: unicast, multicast . 서버는 원한다고 해서 언제나 클라이언트와 연결할 수 없음 . 유선 대 무선 클라이언트 연결과 전원보존은 중요한 문제는 아님 . 클라이언트는 차단되어 있을 때 자신의 데이터와 트랜잭션을 관리 가능하며, 어느 정도 스스로 회복작업을 수행함 . 클라이언트가 서버와 연결하는 방법이 다양하며, 서버가 여러 대 있을 경우 특정한 서버를 선택할 수도 있음 |
③ 센싱 정보와 스트림 데이터베이스의 질의처리기(1)
∘스트림 데이터베이스시스템의 역할은 센서 네트워크 환경에 흩어져 있는 센싱 정보들에 대하여 센서 노드들의 제한된 리소스, 즉 저성능의 CPU, 작은 용량의 메모리, 저용량의 통신 대역폭을 고려하면서 효율적으로 사용자의 질의를 만족시켜 주는 것임 ∘센서 노드들에서의 에너지 소모율을 최소화 시키면서 질의에 대한 정확성 및 신속성을 최대화 시킬 수 있는 질의처리기(Query Processor)를 만드는 것임 ∘스트림 데이터베이스에서의 질의처리기는 RFID 같은 장치에서 나오는 센싱 정보들이 어디에 저장되는가에 따라서 다양한 방법들이 제안되고 있는데, 센싱 정보들을 External Storage, Local Storage, 그리고 Data-Centric Storage에 저장하는 방법에 따라 구분되고 있음 ∘Local Storage 기반 질의처리기 - Local Storage는 각 센서 노드들이 수집한 정보들을 자신의 Storage에 직접 저장하는 방식으로, 사용자가 원하는 질의 결과를 얻기 위해서는 질의를 각 센서 노드들에게 Flooding해야 하고, 각 노드들이 질의를 처리하여 사용자에게 결과를 전송해주는 방법을 이용해야 함 ∘ External Storage 기반 질의처리기 - External Storage는 Local Storage와 반대로 각 센서 노드들이 자신의 Storage를 전혀 가지지 않는 방식으로 노드들에서의 센싱 정보가 바로 Base Station(Data Sink라고도 함)으로 Flooding 되는 방식임 - 이 방식은 모든 센싱 정보가 서버측에 저장되고, 사용자 질의가 서버 내에서 모두 처리되기 때문에 센서 노드들에게 질의를 Flooding해야 하는 질의 전송 오버헤드는 필요 없는 장점을 가지고 있음 - 그러나 이 방식은 모든 센서 노드들의 센싱 정보들을 네트워크를 통하여 모두 서버측으로 전송해야 하는 데이터 Flooding의 비용이 매우 크게 증가하게 되는 단점이 있음 ∘ Data-Centric Storage 기반 질의처리기 - Data-Centric Storage는 Local Storage 방식과 External Storage 방식을 혼합한 방식으로 각 센서 노드들로부터 센싱된 정보를 분석하여 그 정보가 의미하는 값의 특징에 따라 그룹을 결정한 다음, 각 그룹을 대표하는 센서 노드(Home Node)에게 정보들을 전송하여 각 그룹 대표 노드가 그룹 내의 모든 정보들을 저장하는 방식임 - 이 방식은 Base Station에서 각 그룹 대표 노드에게만 질의를 보내기 때문에 질의처리에 소요되는 비용이 획기적으로 줄어드는 장점을 가지고 있음 그러나 각 센싱 노드들과 대표 노드 사이에 지속적인 데이터 Flooding에 대한 비용문제는 여전히 존재하게 되고, 대표 노드에서의 에너지 소모가 매우 커지는 단점을 가지고 있음 |
④ 센싱 정보와 스트림 데이터베이스의 질의처리기(2)
∘스트림 데이터베이스에서의 현재 연구 방향 중에 일부는 각 센서 노드들에서 에너지 소모를 최소화하고 질의에 대한 결과의 정확성 및 신속성을 최대화할 수 있는 효율적인 질의처리기를 개발하는 것에 방향을 두고 있음 ∘효율적인 질의처리기를 개발하기 위하여 스트림 데이터베이스를 위한 질의 언어(Query Language) 정의, 질의 최적화(Query Optimization) 방법, 질의 분배(Query Dissemination) 방법, 그리고 질의 수행(Query Execution) 방법들에 대한 다양한 연구들이 수행되고 있음 - 질의 언어(Query Language): 스트림 데이터베이스에서는 온도, 속도, 빛 등의 각 센싱 정보 타입을 하나의 컬럼 정보로 간주하고, 센서들로부터 수집되는 컬럼 정보들을 통합하여 하나의 데이터베이스 테이블로 간주하여 질의처리를 수행할 수 있음 - 질의 최적화(Query Optimization): 스트림 데이터베이스에서 질의 최적화의 목적은 Base Station에서 전송된 질의를 각 센서 노드들에서 수행하고자 할 때 각 노드에서의 에너지 소모를 최소화 하는 방향으로 수행할 수 있도록 질의 수행 계획(Query Execution Plan)을 작성하는 것임 - 질의 분배(Query Dissemination): 스트림 데이터베이스에서 효율적인 질의 분배를 수행하는 목적은 Base Station에 사용자의 질의가 주어졌을 때, 라우팅 방법 등을 이용하여 가능하면 최대한도로 질의에 대한 결과를 가지고 있지 않은 센서 노드들을 모두 발견하여 여과시킴으로써 사용자 질의가 수행되어야 하는 노드의 수를 최소화 시키는 것임 - 질의 수행(Query Execution): 일반적으로 센서 노드들은 컴퓨팅 능력의 제약으로 인하여 끊임없이 센싱되는 정보들을 자신이 모두 저장할 수 있는 충분한 버퍼를 가지고 있지 않으며, 최근 연구 동향을 살펴보면, 단순히 FIFO 방식을 따르는 방식에서부터 버퍼 내 정보들의 일부에 대하여 평균을 내고 그 빈 공간에 새로운 정보들을 받아들이는 방식, 그리고 기존 버퍼 내의 정보들의 값과 새로이 수집되는 정보 값과의 비교를 통하여 차이가 가장 작은 정보를 포기하는 방식 등이 제안되고 있음 |
5. 게놈 데이터베이스
① 생물학 데이터의 특성
∘생명 과학 및 유전학 - 환경과학: 종(種)의 발전과 상호교류를 밝힘 - 생물학 및 생태학: 특정 종(種)에 관해 연구 - 해부학: 유기체 전체 구조에 초점을 맞춰 개별 신체 부위의 물리적 관점을 상세히 기록 - 전통적 약학과 생리학 : 유기체를 시스템과 조직으로 분리하여 이런 시스템과 전체적인 유기체 동작에 관한 정보를 얻음 - 조직학과 세포 생물학 : 세포의 내부 구조와 기능에 관한 지식 제공 ∘생물학 데이터의 개요 - 생명 정보학(Bioinformatics): DNA 순서의 분석에 초점을 맞춰 유전 정보 관리 - 생명 정보학의 응용: 목표 약(target drug)의 설계 - 돌연변이 및 관련 질병에 관한 연구 - 종족의 이동 패턴에 관한 인류학적 연구 및 치료법 등 ∘생물학 데이터의 특성 1) 생물학 데이터는 대부분의 다른 응용 분야 데이터에 비해 매우 복잡함 2) 데이터의 양과 변화의 범위가 매우 큼 3) 생물학 데이터베이스의 스키마는 매우 빠르게 변화함 4) 서로 다른 생물학자가 같은 데이터를 표현함이 일치하지 않음(동일시스템 이용하여도) 5) 대부분의 생물학 데이터 사용자에게는 데이터베이스에 대한 쓰기 권한이 필요 없음 (읽기 권한만 있으면 됨). 6) 대부분 생물학자는 데이터베이스의 내부 구조나 스키마 설계에 관해 모르는 경우가 많음 7) 데이터의 문맥은 생물학 응용에 추가적 의미를 부여함 8) 복잡한 질의를 정의하고 표현하는 기능은 생물학자들에게 매우 중요함 9) 생물학 정보의 사용자들은 이미 보고 된 결과를 검증하는 경우와 같이 데이터의 이전 값을 필요로 하는 경우가 많음 |
② 인간 지놈 프로젝트 관련 생물학 데이터베이스(1)
∘지놈(Genom) : 한 실체에서 얻을 수 있는 모든 유전 정보 ∘인간의 지놈 – 한 명의 사람을 만들기 위해 필요한 완전한 유전자 집합 - 30 ~ 40억 뉴클레오티드로 구성되고, 23개의 염색체 쌍에 퍼져 있는 대략 30,000개 이상의 유전자를 포함 ∘HGP(Human Genom Project)의 목표 - 뉴클레오티드들의 배열순서를 얻는 것 ∘GenBank - 현재 가장 뛰어난 DNA 순서 데이터베이스는 NLM (National Library of Medicine)의 NCBI (National Center for Biotechnology Information)에서 관리하는 GenBank - GenBank는 1978년 DNA순서 데이터의 저장소로 만들어짐 - GenBank는 순서태그 데이터, 단백질 순서 데이터, 3차원 단백질 구조, 분류 데이터, 생물학 잡지(MEDLINE)와의 링크 등을 포함 - 2003년 4월 134.0 버전에서 GenBank는 100,000 종으로부터 2천 4백만 순서 이상의 310억 뉴클레오티드르 포함하며, 한달에 약 1,400개의 새로운 유기체가 포함됨 - 데이터베이스의 크기는 비압축 상태로 100GB 이상이고 15개월마다 두 배씩 증가하고 있음 - 영국에 있는 EMBL (European Molecular Biology Laboratory)과 일본의DDBJ(DNA Data Bank of Japan)의 국제적인 협력을 통해 매일 세 사이트 간의 데이터 교환이 이뤄짐 - 기존의 OMIM과 PDB 데이터베이스를 재구성하고 새로운 데이터 지원을 위해 GenBank 시스템의 구조를 재설계함으로써 다른 제한된 데이터 소스가 최근에 추가됨 - 파일, 관계DB, 통신분야에서 자료 구조를 정의하기 위해 개발된 문법, ASN을 포함하는 파일의 결합으로 유지됨 - 대부분의 사용자는 질의나 기타 기능을 위해서 자료구조를 직접 접근할 수 없으나 DB의 완전한 전체 스냅샷이 ASN.1을 포함하는 여러 형식으로 제공됨 - 정적 인터페이스를 통해 키워드, 순서, GenBank UID 탐색 등을 지원하는 Entrez 응용에 의해 질의 기능이 제공됨 ∘The Genome Database (GDB) - Genbank와 같이 사용자는 검색 시 데이터의 고수준의 뷰를 사용하게 되므로 GDB 테이블의 구조로부터 얻을 수 있는 지식을 쉽게 사용할 수 없음 - 검색 방법은 사용자가 지도 내의 인덱스 또는 실험 데이터를 찾고자 할 때 효율적이나 DB의 특별한 검색은 현재 인터페이스로는 어려움이 따름 - GDB와 OMIM의 데이터뱅크 구조의 통합은 완전하게 이루어지지 않았음 - 1989년에 만들어진 인간 유전자 사상 데이터에 대한 카탈로그 - 유전자 사상 – 주어진 정보와 인간 게놈상 특정 위치를 연관시키는 과정 - GDB 데이터는 초기 지도 정보(거리 및 유의 수준 한계)와 PCR(Polymerase Chain Reaction) 실험 데이터(실험 조건, PCR프리머, 사용된 시약)를 포함 - GDB 시스템은 상업용 관계 DBMS인 SYBASE를 기초로 구현, 데이터는 표준 개체 관계 기술을 사용해서 모델링됨 |
③ 인간 지놈 프로젝트 관련 생물학 데이터베이스(2)
∘Online Mendelian Inheritance in Man (OMIM) - OMIM – 인간 질병의 유전학적 요인에 관한 정보를 담은 전자 개요집 - 1966년 Victor McCusick에 의해 1,500 데이터를 담은 하드 카피 형태로 시작해 1987년과 1989년 사이에 전자 텍스트로 변환 - 1991년에 그 관리가 Johns Hopkins 대학에서 NCBI로 이동되었고, 전체 DB는 NCBI의 GenBank 형식으로 변환됨 - 오늘날에는 14,000개 이상의 데이터를 수록하고 있음 - OMIM은 장기나 시스템에 기초해서 엮은 다섯 개의 질병 분야에 관한 자료를 지원 - 연구중인 형태학적, 생화학적, 행위적, 또는 다른 특성들은 각 세포의 표현형(phenotype)이라 함 - Mendel은 유전자가 대립유전자(alleles)라고 알려진 여러 다른 형태로 존재할 수 있다는 것을 인식하며, 유전자형(gentype)은 각 세포의 실제 합성을 지칭 ∘EcoCyc - EcoCyc(Encyclopedia of Escherichia Genes and Metabolism) . 지놈과 E.coli K-12의 신진 대사에 관한 정보를 결합하려는 시도 - DB는 1996년에 Stanford Research Institute와 Marine Biological Laboratory의 공동 작업으로 만들어짐 - 시스템을 구현하는 데 객체지향 모델이 사용되었으며 데이터는 Ocelot이라는 프레임 지식 표현 시스템에 저장됨 - EcoCyc 데이터는 다음 사실에 기초한 객체클래스의 계층구조로 구성됨 . 반응의 속성은 그를 촉진시키는 효소와 무관함 . 효소는 그 반응과 ‘논리적으로 다른’ 많은 속성을 가지고 있음 - EcoCYC는 직접(미리 정의된 질의를 통해)과 간접(하이퍼텍스트에 의한 항해를 통해)의 두 가지 질의 방법을 제공함 ∘유전자 온톨로지 (Gen Ontology) - 유전자 온톨로지(GO) 컨소시엄은 세 개의 유기체 DB인 Flybase, Mouse Genome Informatics(MGI)와 Saccharomyces Genome Database(SGD)의 협력 의해 만들어짐 . 컨소시엄의 목적 : 유기체 내의 유전자와 유전자 생성물에 관한 정확한(표준화된) 어휘들을 생성하는 것 - 많은 종의 지놈 순서가 완성됨에 따라 유기체들에서 상당한 유전자들이 생물학적 역할에서 유사함을 알게 되었고, 또한 생물학자들은 대부분 또는 모든 살아 있는 세포 내에 보존되어 있는 유전자와 단백질의 제한된 한 세계가 있을 것이라는 예상을 하게 됨 - GO 컨소시엄은 유전자, 유전자 생성물, 유전자 생성물 그룹의 속성들을 설명하는 분자기능, 생물학적 처리, 셀 요소의 세가지 온톨로지를 만듬 - 각 온톨로지는 용어와 관계에 관한 잘 정의된 어휘들을 포함 . 용어들은 DAG(Direct Acyclic Graph) 형태로 구성되는데 한 용어 노드는 여러 부모들과 자식들을 가질 수 있음 . 자식 용어는 그 부모의 인스턴스이거나 부모의 일부분일 수 있다. . GO DB의 최신버전은 13,000개 이상의 용어들과 18,000개 이상의 용어 간 관계들을 제공함 . 유전자 온톨로지는 공개 관계형 DBMS인 MySQL을 사용하여 구현되었으며, C, Java, Perl, XML 등으로 작성된 도구들과 라이브러리가 데이터베이스 접근과 응용 개발을 위해 제공됨 |
'정보과학 > 데이터베이스특론' 카테고리의 다른 글
데이터 마이닝 (1) | 2023.09.07 |
---|---|
데이터 웨어하우스 (0) | 2023.09.07 |
객체지향, 객체관계, 웹 데이터베이스 (0) | 2023.09.07 |
데이터베이스 보안과 권한 (0) | 2023.09.05 |
동시성 제어와 회복 기법 (0) | 2023.09.05 |