본문 바로가기
Study/데이터베이스

메타데이터, 캐릭터셋

by ✲ 2018. 4. 11.
728x90
반응형

메타데이터, 캐릭터셋 


메타데이터  

데이터를 위한 데이터 

DB, 테이블의 스키마에 대한 정보를 저장하는 테이블 (DB명 테이블명, 컬럼명, 사용자명 ...)


메타데이터는 크게 두가지로 구분됨 

- 데이터 사전 (Data Dictionary)

 데이터베이스의 정보 저장 

 시스템 카탈로그라고도 함 (System  Catalog) 

 일반적으로 읽기전용정보 (Read-Only)


- 데이터 디렉토리 (Data Directory)

 DBMS의 모든 데이터가 저장되는 디렉토리(폴더) 

 DB저장, 상태 및 로그 저장 



메타데이터의 실습 

TAB (테이블의 약자) 

접속한 사용자가 소유한 테이블의 정보를 저장하는 데이터 딕셔너리 

적용대상에 따라 앞쪽에 붙음

 

USER_ (특정 사용자에 대한 정보 저장)

SELECT TABLE_NAME FROM USER_TABLES ORDER BY TABLE_NAME DESC;


ALL_ (전체 대상)

SELECT OWNER, TABLE_NAME FROM ALL_TABLES;


DBA_ (DBA관련된 정보)

SELECT OWNER,TABLE_NAME FROM DBA_TABLES;


CBA_ (오라클12에서 새로 추가된것 컨테이너 관련된 데이터 딕셔너리) 



캐릭터셋 (CharacterSet)

문자인코딩 정보/메타데이터의 일종 

문자열(VARCHAR, CHAR)의 값을 저장할 때 사용되는 기본 정보 

DB/테이블별로 별도 설정 가능 


ASCII/ISO-8859-1 아스키계열

EUC-KR/KSC_5601  한글 완성형 계열 

UTF-8/UNICODE    유니코드계열 

UTF8(기본)



예제) 오라클 캐릭터셋을 조회하시오.

SELECT * 

FROM   nls_database_parameters 

WHERE  parameter = 'NLS-CHARACTERSET';




캐릭터셋 기초 

컴퓨터는 0/1을 처리하는 기계 

0/1의 의미는 ? 

명령어, 레지스터, 메모리주소, 글자, 숫자...


명령어의 형식에 따라 구분 

 - 영어의 문장형식과 유사 


어떻게 해석하는지에 따라 아키텍처 분리 

 - 노이만 아키텍처 

    - 모두 한 메모리에 저장 

    - 프로그래밍 시작위치에는 반드시 명령어가 있어야 함 

 - 하바드 아키텍처 

    - 명령어/데이터(나머지 모두)를 저장하는 메모리 구분 




ASCII  아스키코드 

미국 표준 

한 자에 한 바이트 할당 (0-127/128-255) 

다른 나라에서는 약간 변형 

 - 영국, 프랑스, 스페인, 그리스...

 - DBCS(Double Byte Character Set) 

    - 극동 3국 (한국,중국,일본)

    - 한글 완성형은 영문자/숫자는 1바이트, 한글은 2바이트 

이를 국제 표준화 한 것이 ISO8859(1-16까지)


한글코드 

-완성형 / 조합형 

-한글은 모든 가능한 글자를 모두 조합하면 11,172자의 조합 

-글자가 너무 많아 2350-> 11172자의 순으로 표준화함 

-KSC5601/EUC-KR 

-MS의 확장완성형 

 -MS949/CP949


유니코드 (Unicode)

전세계의 모든 글자를 가지는 문자코드 

아스키코드 기반 --> 유니코드 기반 

기본평면, 확장평면 형태 (주로 2바이트) 

한글의 경우는 2바이트 


UTF-8 

-유니코드의 가변길이 인코딩(1-6바이트) 

-아스키코드와의 호환성(1바이트의 경우) 

-한글의 경우는 3바이트 

-추천 (Recommended)



728x90
반응형

댓글