ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 1.31 SQL 입문과정, 다운로드, 데이터 정의, DBMS, RDMS, RDBMS, NoSQL, DML, DLC
    SQL 과정 2019. 1. 31. 11:30

    오라클(Oacle) = https://codedragon.tistory.com/4023

    • 미국 오라클사의 관계형 데이터베이스 관리 시스템이다.
    • 관계형 데이터 베이스 관리 시스템이란 Relational DataBase Management System으로써 줄여서 RDBMS라고 한다.
    • 오라클은 사용되는 관계형 데이터베이스 관리 시스템으로 현재 가장 널리 사용되는 대표적인 제품 중 하나이다.
    • 사이트
    1. https://www.oracle.com/index.html
    2. https://www.oracle.com/database/
    3. 다운로드는 반드시 로그인 후 해야 가능하다.


    데이터 정의 = https://codedragon.tistory.com/8439

    • 이론을 세우는 데 기초가 되는 사실, 또는 바탕이 되는 자료

    • 컴퓨터가 처리할 수 있는 문자, 숫자, 소리, 그림 따위의 형태로된 자료

    • 수, 영상, 단어등의 형태로 된 의미 단위

    • 데이터를 단순한 객체로서 가치뿐만 아니라 다른 객체와의 상호관계 속에서 가치를 갖는것으로 설명 됨

    • 데이터는 지식경영의 학샘이슈인 암묵지와 형식지의 상호작용에 있어 중요한 역할을 하는 지식 형성의 중요한 기초가 된다.

    • 주로 테이블/레코드 형태로 관리된다.

    • 데이터는 소유관계가 있어 자유롭게 유통이 되지 못한다.


    파일 시스템(파일 처리 시스템) = https://codedragon.tistory.com/4407

    • 파일시스템은 각각의 응용프로그램이 자신의 데이터를 파일형태로 별도 관리하는, 파일 중심의 데이터 처리 시스템

    • 응용 프로그램과 데이터간에 상호 의존성이 존재한다. 즉, 대부분의 경우 응용프로그램과 데이터 파일이 1:1로 대응되는 특징을 가지고 있다.



    • 파일 시스템의 문제점


    • 파일 시스템의 데이터 중복으로 인한 문제점




    데이터 베이스 관리 시스템(DBMS) = https://codedragon.tistory.com/4100

    • DB의 구축 및 관리를 위한 전용 소프트웨어(도구)
    • 데이터 베이스를 효율적으로 관리할수 있는 시스템
    • 데이터를 효율적으로 관리하기 위해서 데이터 베이스에 추가, 삭제, 변경, 검색을 할수 있는 기능을 제공한다.
    • 방대한 양의 데이터를 편리하게 저장하고 효율적으로 관리하고 검색할수 있는 환경을 제공해주는 시스템 소프트 웨어
    • 응용프로그램과 데이터베이스의 중ㅇ재자역할로 모든 응용프로그램들이 데이터베이스를 이용 가능하도록 관리 해주는 시스템 소프트 웨어
    • 도식도
    1. DB의 정의와 조작, 제어 기능을 제공
    2. 여러 사용자와 응용프로그램이 DB를 공유할수 있도록 관리
    3. 사용자와 응용프로그램에 편리하고 효율적인 데이터 베이스 사용환경을 제공


    • 특징
    1. 응용프로그램이 데이터에 종속되지 않는 데이터 독립성을 제공하는 것
    2. DB의 구조를 변경해도 응용프로그램에 영향을 주지 않고, 반대로 응용 프로그램을 변경해도 
    3. DB에 영향을 주지 않도록 하는것, 즉 응용프로그램이 데이터에 종속되지 않는 데이터 독립성을 제공하는 것
    • 등장 배경
    1. 정보처리 시스템의 활용 분야가 점차 다양해지면서 데이터 검색을 위주로 하는 데이터 베이스 시스템에 대한 요구 증가
    2. 데이터 처리 위주의 파일 처리 시스템으로는 구현의 한계점
    3. 저렴한 고속 자기디스크의 대중화로, 대량 정보 저장 및 빠른 검색이 가능
    4. 데이터 통신 기술의 발전으로 빠른 정보 전송이 가능하여, 데이터의 동시 공유가 가능



    DBMS의 필수 기능 = https://codedragon.tistory.com/5245

    • 데이터 정의 기능
    1. 데이터베이스의 테이블들을 생성하고 각 테이블의 속성들의 특성들을 정의하여 데이터베이스의 콘텐츠 구조를 규정하는 기능을 제공
    2. 다양한 응용프로그램과 DB가 서로 인터페이스 할수 있는 수단이다.
    3. 하나의 저장된 DB를 기초로 여러 사용자와 응용프로그램의 다양한 데이터 요구를 지원 하도록 DB구조를 정의하는 기능을 제공
    • 데이터 조작 기능
    1. 사용자와 DB간의 인터페이스를 위한 수단을 제공
    2. DB에 저장된 데이터의 검색, 삽입, 삭제, 갱신 등과 같은 DB연산을 처리하는 기능을 제공
    • 이터 제어 기능
    1. 공용으로 관리되는 DB의 내용을 정확하고 안전하게 유지 할수 있도록록 , 3가지 제어 기능을 제공
    2. 데이터의 삽입, 삭제 등 DB 변경 시에 데이터의 무결성 및 일관성 유지
    3. 권한이 부여된 사용자만이 허용된 데이터에 접근 가능하도록 접근 권한 검사 기능
    4. 여러 사용자가 DB에 동시 접근 가능하도록 동시성 제어
    • 리포트 생성 기능
    1. 데이터베이스 관리 스템들은 세련된 리포트를 생성하는 기능 가지고 있다.
    2. 관심 있는 데이터를 쿼리해서 보는 것보다 더욱 구조적이고 세련된 형태로 보여주는 리포트를 생성



    RDMS = https://codedragon.tistory.com/6617

    • 관계형 데이터 베이스
    • 데이터 베이스중 가장 일반적인 형태
    • 테이블 기반의 DBMS이다.
    • 일련의 정형화된 테이블로 구성된 데이터 항목들의 집합체로, 테이블, 로우, 칼럼 이라는 간단한 구조로 구성
    • 정보를 저장하기 위한 구조를 위해 테이블을 사용하며 테이블은 2차원 형태의 표와 같은 구조를 가지고 있다.
    • 모델링은 ER모델을 사용



    테이블 = https://codedragon.tistory.com/7667

    • 정보를 저장하기 위한 구조를 위해 테이블을 사용하며 테이블은 2차원 형태의 표와 같은 구조를 가진다.
    • 테이블은 로우와 칼럼으로 구성되어있다.
    • 데이터들을 행과 열로 구성된 2차원의 테이블로 표현하고 각각의 테이블은 하나의 데이터베이스화 되는 대상인 개체들의 속성들과 관련한 데이터들로 구성



    RDBMS의 테이블 = https://codedragon.tistory.com/8394

    • 데이터들을 행과 열로 구성된 2차원의 테이블로 표현하고 각각의 테이블은 하나의 데이터베이스화되는 대상인 개체들의 속성들과 관련한 데이터들로 구성된다.
    • 제시된 테이블은 사번, 부서명, 위치라는 열로 구성된 부서번호 테이블이다.
    • 테이블의 각 열은 속성이라고 지칭한다.





    RDMS 종류 = https://codedragon.tistory.com/8338




    NoSQL = https://codedragon.tistory.com/3863

    • 기존 RDBMS 형태의 관계형 데이터베이스가 아닌 다른 형태의 데이저 저장 기술을 의미
    • RDBMS 제품군과 같이 공통된 형태의 데이터 저장 방식과 접근방식을 갖는 제품군이 아니라 RDBMS와 다른 형태의 데이터 저장 구조를 총칭하며, 제품에 따라 각기 그 특성이 매우 다르기 때문에 NoSQL을 하나의 제품군으로 정의할수는 없다.
    • NoSQL은 기존 방식에서 빅데이터를 효과적으로 저장, 관리하는데 여러가지 문제가 발생하여 개선, 보완하기 위해서 사용된 새로운 데이터 저장기술이다. 비관계형 데이터베이스를 지칭하는 분산환경의 데이터 저장소를 의미한다.
    • NoSQL 에서 데이터 저장은 다수의 서버에 분산해서 저장하기 때문에 속도가 빠르다. 트랜잭션이 클러스틀 구성하는 저체서버에 분산되기 때문에 다수의 클라이언트가 동시에 접속해서 사용하더라도 속도가 빠르다.



    DBMS vs NoSQL = https://codedragon.tistory.com/8441

    • 양쪽의 특징을 넘어서 데이터가 커지는 경우, 일반적으로 수십 테라가 넘어서는 경우 빅데이터 처리 기술이 필요하다.


    • BigData vs DBMS vs NoSQL
    1. 저장 방식은 NoSQL형태와 비슷하지만 대량 데이터 처리를 위한 분산 파일 시스템과 병렬 처리 시스템을 가지고 있다.
    2. 이들은 모두 서로 성격이 다른 기술이다. 상보적으로 보완기술로 적용될수 있다.



    DB 랭킹 순위 보는 사이트 = https://codedragon.tistory.com/5138

    • https://db-engines.com/en/ranking



    DB 시스템 = https://codedragon.tistory.com/4408

    • DB 시스템은 데이터를 DB에 저장하고, DBMS를 사용해서 필요한 정보를 생성하는 컴퓨터 중심으 시스템
    • 데이터 베이스 관리 시스템 구성요소


    • 데이터 베이스 사용자


    • DB 시스템의 상세 구성 요소




    데이터 언어 = https://codedragon.tistory.com/5417

    • DB를 정의하고, 조작, 제어하기 위해서 사용되는 언어
    • 즉, 사용자가 데이터 접근하는 수단으로서, 사용자와 DBMS간의 통신 수단을 제공하는 것
    • 데이터 언어의 종류

     

    • 이터 언어의 완전성
    1. 데이터 언어가 반드시 갖추어야할 필수 요건
    2. 사용자가 원하는 어떤 데이터도 검색하고 처리할수 있으며 어떤 연산도 표현할수 있는 능력을 의미



    SQL 데이터 정의어 = https://codedragon.tistory.com/4244

    • DB 객체의 구조를 정의하거나 변경 또는 삭제하기 위해 사용하는 언어
    • DDL은 데이터 구조를 정의하는 질의문으로 데이터베이스를 처음 생성하고 개발할때 주로 사용한다.
    • DB 객체
    1. 생성된 DB를 효율적으로 관리하고 동작하게 만드는 요소로서, 논리적인 데이터 저장 구조이며, 스키마 객체라고도 한다.
    • DB 객체의 종류

    • 데이터 정의어의 명령어 종류

    • 테이블의 종류




    데이터 조작어(DML) = https://codedragon.tistory.com/4511

    • 데이터의 검색 및 삽입, 삭제, 변경을 위해서 사용하는 언어
    • DML은 데이터 베이스의 운영 및 사용과 관련해서 가장 많이 사용하는 질의문으로 데이터의 검색과 수정등을 처리한다.
    • 데이터 조작어의 명령어 종류


    • SQL의 테이블과 관계 데이터 모델의 릴레이션과의 차이점
    1. SQL의 테이블은 반드시 기본키를가져야 하는 것은 아니다.
    2. SQL의 한 테이블에는 동일한 행(레코드)이 중복될수 있다.
    3. 검색 시 DISTINCT옵션을 지정하면, 동일한 행을 제거할수 있다.



    데이터 제어어(DLC) = https://codedragon.tistory.com/4246

    • DB 사용자의 권한을 제어하기 위해서 사용하는 언어
    • 데이터 제어어의 명령어 종류

    • GRANT 명령
    1. DB관리자가 한명 이상의 사용자에게 여러개의 시스템 권한을 부여할때 사용하는 명령
    • GRANT 명령의 일반형식
    1. GRANT 명령으로 DB관리자가 한 명 이상의 사용자에게 여러 개의 시스템 권한을 부여할때 사용
    2. GRANT 명령으로 객체의 소유자가 특정 객체 권한을 다른 사용자에게 부여 할수도 있다.


    • 응용 프로그램 개발자가 가질수있는 시스템 권한의 종류

    • REVOKE 명령 = https://codedragon.tistory.com/4246
    1. 사용자에게 부여한 권한 철회할때 사용하는 명령
    2. REVOKE 명령의 일반 형식

    1. DCL 권한 부여 도식도




Designed by Tistory.