2008. 7. 28. 14:43

오라클 기초과정

오라클 기초 과정
   
1> DB 개념 - 정의
  (1) 데이터 - 현실세계에서 수집된 사실이나 값이다.
  (2) 정보 - 데이터의 유효한 해석이나 데이터 상호간의 관계를 의사결정에 도움이 되도록 가공한 것(부가가치를 높인것)
  (3) 데이터베이스 - 데이터를 저장할 수 있는 통합 저장된 운영 데이터 집합
  (4) DBMS - 통합적인 관리 시스템(DB를 관리하기 위한 S/W들의 집합)
   
2> 특징
  (1) Read-time
  (2) Continuous Evolution - insert, deletion, update, etc 등이 수시로 이루어짐
  (3) Concurrent Sharing
  (4) Content Reference - 데이터 가지고 있는 값에 따라 참조한다.
   
3> DBMS기능
  (1) 정의 기능 / DDL
     - 논리적 구조(데이터 모델) 명세
     - 물리적 구조 명세
     - 논리적 / 물리적 사상(매핑) 명세
  (2) 조작기능 / DML
  (3) 제어기능 / DCL
     - 데이터의 정확성 안정성을 유지하는 기능(무결성, 보안, 복구 등)을 제공한다.
   
4> DB 장점
  (1) 데이터 중복(Redundancy)을 최초화 할 수 있다.
  (2) 데이터를 공유(Share) 할 수 있다.
  (3) 무결성(Integrity)을 유지 할 수 있다.
  (4) 일관성(Consistency)을 유지 할 수 있다.
  (5) 데이터의 보안이 보장 될 수 있다.
  (6) 표준화(standardization)가 가능하다.
   
5> DB 단점
  (1) 운영비가 많이든다.
  (2) 자료처리 방법이 복작해 질 수 있다.
  (3) Backup & Recovery 기법이 어려워진다.
  (4) system의 취약성 - 다양한 제품과 기술들을 사용해서 취약성을 낮춘다.
   
6> DBA
  (1) DB System 전체적인 운영관리를 책임지는 사람이나 집단을 말한다.
  (2) 설계, 운영, 행정
  (3) DB의 설계와 운영
     - DB 구성요소를 결정 - DB에 포함될 개체, 속성 이들간의 관계기술
     - 스키마 정의
     - 보안정책 수립(접근권한부여, 유효성 검사)
 

   - 백업, 복구 절차를 수립 (복구실패는 용서되도 백업의 실패한 DBA는 용서가 안된다라는 말이 있다. 백업이 선행이되어야만 복구가 가능하기 때문에 그만큼 백업이 중요하다.)

     - DB의 무결성 유지를 위한 대책 수립
     - 성능향상과 새로운 요구에 대한 DB 재설계
  (4) 행정 및 불평해결
  (5) 시스템 감시 및 성능분석
  - 시스템 자원 이용도, 병목현상, 장비 및 시스템 성능을 감시
  - 현업에서는 요구사항이 다양하다.
  - 데이터 이용추세
  - 각종 통계자료용을 분석하여 구조를 바꾼다거나 튜닝을 해야한다.
  (6) Data Dictionary란 DB를 운영하기 위해 필요한 정보들의 집합이다.
  (7) System Catalog라고도 한다.
2008. 7. 28. 14:22

DDL(데이터 정의어), DML(데이터 조작어) , DCL(데이터 제어어)

DDL(데이터 정의어)

▪SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의하거나 변경 또는 삭제할 때 사용하는 언어

▪데이터베이스 관리자나 데이터베이스 설계자가 사용함

▪데이터 정의어(DDL)의 3가지 유형

명령어

기 능

CREATE

Schema, Domain, Table, View, Index를 정의함

ALTER

Table에 대한 정의를 변경하는 데 사용함

DROP

Schema, Domain,Table, View, Index를 삭제함

data definition languate.



DML(데이터 조작어)

▪데이터베이스 사용자가 응용 프로그램이나 질의어를 통하여 저장된 데이터를 실질적으로 처리하는데 사용하는 언어

▪데이터베이스 사용자와 데이터베이스 관리 시스템 간의 인터페이스 제공

데이터 조작어(DML)의 4가지 유형

명령어

기능

SELECT

테이블에서 조건에 맞는 튜플을 검색함

INSERT

테이블에 새로운 튜플을 삽입함

DELETE

테이블에서 조건에 맞는 튜플을 삭제함

UPDATE

테이블의 조건에 맞는 튜플의 내용을 변경함

data Manipulation language



DCL(데이터 제어어)

▪데이터의 보안, 무결성, 데이터 회복, 병행 수행 제어 등을 정의하는 데 사용하는 언어

▪데이터베이스 관리자가 데이터 관리를 목적으로 사용함

▪데이터 제어어(DCL)의 종류

명령어

기능

COMMIT

데이터베이스 조작 작업이 정상적으로 완료되었음을 관리자에게 알려줌

ROLLBACK

데이터베이스 조작 작업이 비정상적으로 종료되었을 때 원래의 상태로 복구함

GRANT

데이터베이스 사용자에게 사용권한을 부여함

REVOKE

데이터베이스 사용자의 사용권한을 취소함

data Control language

2008. 7. 25. 16:12

[UML.5] 체계적으로 UML 공부하기

지난 번에 올린 UML의 개요를 통해서 UML이란 것이 대략 어떤 형태를 가지고 있는지 "눈팅"정도만 해 보았다.


내가 작성을 하면서도, 각 다이어그램들이 명확히 구분되거나 용도가 정확하게 파악되지는 않았다.

그리고 다이어그램이 UML에서 갖는 중요도가 어느 정도인지도 모르는 것은 당연하고...

이제부터는 UML의 공식 문서를 가지고 공부를 시작하겠다.


앞서 관련 링크 부분에서 언급했듯이 OMG에서 공식 문서를 받을 수 있다.

OMG UML 사이트


그런데 들어가 보니 문서가 하나가 아니다.

UML에도 Infrastructure/Superstructure 두가지가 있고,

Metamodel이니 XMI, Diagram Interchange 등등 관련된 것들도 많다.


일단은 Infrastructure/Superstructure 두가지 문서만 받아보자.

"두가지만"이라고 했지만 각각이 1.6MB, 6MB에 달하는 방대한 양이다.

머 200 페이지, 700 페이지 짜리이니 웬만한 소설책보다 두껍다.

그리고 소설책보다 재미 없다.

게다가 대충 대충 읽어서는 않되는 것 아니냐...


엥기니어들 책 안 읽는다고, 무식하다고 깔보지 말자.

맨날 보는게 저런 스펙들이다.


책이란거에 이가 갈리는 사람이다...


각설하고,

일단 이런 방대한 문서를 볼 때 한숨부터 나오지만, 안 볼 수는 없다.

그러면...

1. 좀 더 안락한 생활(?)을 위해 필요한 최소한의 투자라고 생각하자.

2. 천재가 아닌 이상, 그냥 읽어댄다고 다 이해가 가능하지도 않고 외우는 것은 더더욱 불가능하다.

   좀 더 효율적으로 공부를 하자.


- 일단은 문서가 두개인데, 왜 두개일까? 무엇부터 봐야 할까?

   스펙을 다운받은 곳에 친절하게도 이런 안내가 있다.

Beginning with UML 2.0, the UML Specification was split into two complimentary specifications: Infrastructure and Superstructure. The UML infrastructure specification defines the foundational language constructs required for UML 2.1.2. It is complemented by UML Superstructure, which defines the user level constructs required for UML 2.1.2. The two complementary specifications constitute a complete specification for the UML 2 modeling language.

   User Level Construct라는게 뭔지는 아직 잘 모르겠지만, Infrastructure를 먼저 읽어야한다는 소리인지는 알겠다. (다행히 200 페이지짜리 ㅎㅎ)



- 우선 Infrastructure의 목차를 보면서 상상의 나래를 펼쳐보자~~

1. Scope

2. Conformance

3. Normative References

4. Terms and Definitions

5. Symbols

6. Additional Information

7. Language Architecture

8. Language Formalism

9. Core::Abstractions

10. Core::Basic

11. Core::Constructs

12. Core::PrimitiveTypes

13. Core::Profiles


1~6까지는 대부분의 문서 서두에 나오는 부분이다. 문서를 이해하는데 도움이 될 수 있도록 설명하거나 약속해 두는 것들이니 한번 읽어보면 된다. 아는 부분은 가볍게 넘어가 주고 모르는 부분은 한번 자세히 읽어봐주면 되는...

이름으로는 7~8에 기본적인 사항이 들어가 있겠다.

9~13까지는 Core::으로 공통된 부분이 있는 것으로 보아 개별적으로 자세한 설명이 되어 있을 듯하다. 그런데 왜 Core일까? 그리고 거기에 Abstractions/Basic/Constructs/PrimitiveTypes/Profiles의 5가지가 있군....흠흠...이런 의문을 가지고 읽어 나가면 될 듯.


참고로 내가 보고 있는 문서의 버전은 v2.1.2임.