본문 바로가기

방통대27

[데이터베이스시스템] SQL(1) 데이터베이스 언어SQL의 개요SQL(Structured Query Language) 은 관계 대수에 기초하여, RDBMS 의 데이터 관리를 위해 설계된 언어1986년 ANSI, 1987년 ISO에서 표준으로 제정→ SQL - 86, SQL - 89 , SQL - 92 , SQL : 1999 , SQL : 2003, SQL : 2008→ 상용 DBMS의 특성에 맞게 국제 표준을 확장한 독자적 버전이 존재특징→ 비절차적(선언형) 언어, 필요한 데이터만 기술→ 인간의 언어와 매우 유사하고 간단, 명료SQL의 구성데이터 정의 언어 (DDL : Data Definition Language)→ 데이터 베이스 내의 객체를 생성 및 삭제하고 그 구조를 조작하는 명령어의 집합→ 데이터가 준수해야 하는 제약조건을 기술→ .. 2024. 5. 25.
[데이터베이스시스템] 3. 관계형 모델 관계형 모델의 개념사용자 요구사항 분석 → (데이터 및 업무) → 개념적 데이터 모델링 → (ER 모델) → 논리적 데이터 모델링 → (관계형 모델) → 물리적 데이터 모델링 → (물리적 세부사항) → 내부 스키마논리적 데이터 모델링 단계DBMS 에서 사용하는 데이터 모델에 맞추어 데이터를 표현하는 과정데이터 정의 언어로 기술된 개념 스키마 생성관계형 모델(relational model)→ 1969년 에드가 F. 코드에 의해 제안→ 릴레이션(relation) 으로 데이터를 표현하는 모델→ 데이터 표현이 단순하고 직관적 구조화 모델→ 현재 대다수 DBMS의 기초관계형 모델을 사용하는 관계형 DBMS(RDBMS)Oracle , DB2 , PostgresSql , mySql …릴레이션의 구성릴레이션 : 표의 .. 2024. 5. 25.
[데이터베이스시스템] 데이터베이스 모델링 데이터베이스 모델링의 이해데이터베이스 모델링의 필요비즈니스적 관점→ 어떤 데이터를 저장해야 하는가?컴퓨터 프로그래머 관점→ 어떻게 데이터를 저장해야 하는가?데이터베이스 시스템 구현 과정소프트웨어 공학 시점의 효율적인 시스템 구현 과정기능적 요구 사항[기능 분석] → 애플리케이션 아키텍쳐[애플리케이션 프로그램 설계] → 애플리케이션 [애플리케이션 프로그램 구현]DBMS 의존적인 부분 [애플리케이션 아키텍쳐[애플리케이션 프로그램 설계] → 애플리케이션 [애플리케이션 프로그램 구현]]데이터 관점사용자 요구사항 분석 → 개념적 데이터 모델링 → 논리적 데이터 모델링 → 개념스키마 → 물리적 데이터 모델링 → 내부 스키마DBMS 의존적인 부분 [ 개념스키마 → 물리적 데이터 모델링 → 내부 스키마]데이터베이스 모.. 2024. 5. 25.
[데이터베이스시스템] 데이터 베이스의 이해 데이터베이스의 역할데이터 관리의 필요대량의 데이터를 저장 및 관리하고 필요한 데이터를 신속히 검색할 수 있도록 보조 하는 장치데이터 → (저장) → 데이터 관리 장치 → (검색) → 필요 데이터데이터 관리의 역사1946 - 컴퓨터가 만들어짐 → 1956 - 저장장치 도입 → 1960 - 파일 처리 시스템 →1970 - IBM사 SQL → 1980 - 데이터 웨어하우스 → 1990 - 웹의 등장 →2000중반 - 클라우드 컴퓨팅 → 2000말 - 빅데이터 분석 - 2015년~ - IoT 와 AI의 등장전통적 데이터 관리 방식학적 애플리케이션[학적 업무] ↔ [학적 파일] 파일 처리 시스템성적 애플리케이션[성적 업무] ↔ [성적 파일] 파일 처리 시스템수강 애플리케이션[수강 업무] ↔ [수강 파일] 파일 처.. 2024. 5. 25.
[자료구조] 힙 우선순위 큐 대기 리스트에서 우선순위가 높은 사람이 먼저 서비스를 받는 구조 우선순위 큐의 작동방식 삭제 명령이 실행되면 저장된 데이터 중에서 가장 작은 값(가장 큰 값) 이 삭제 된다. 나머지 데이터들은 어떤 순서로 저장되든 문제가 되지 않는다. 힙 추상 자료형 힙의 정의 피라미드 모양으로 쌓아올린 더미 무엇인가 쌓아놓은 더미이고 항상 가장 위에 있는 것을 우선 꺼내는 구조 부모- 자식 노드 사이에서 (부분적) 정렬된 완전 이진트리로 부모 노드는 자식 노드보다 우선 순위가 높음 힙 객체의 정의 부분적으로 정렬된 완전 이진 트리로 부모노드는 자식노드보다 우선순위가 높다 연산 연산 내용 insert(element) 힙에 데이터 삽입 delete() 힙(루트) 에서 데이터 삭제 peek() 힙(루트) 에서 .. 2023. 11. 29.
[자료구조] 연결 리스트의 응용 연결 리스트의 변형 단순 연결 리스트 단순 연결 리스트의 문제점 하나의 링크 만 있고, 각각의 노드의 링크는 후행 노드만을 가리키는 구조. → 특정 노드의 후행 노드는 쉽게 접근 가능 하지만 , 선행 노드를 찾으려면 헤드 노드 부터 다시 검색 해야 함. (비 효율적) 이중 연결 리스트 선행과 후행을 가리키는 두개의 링크를 가진다. → 특정 노드에서 선행 노드와 후행 노드에 직접적으로(간단한 코드를 통해) 접근이 가능 원형 연결 리스트 연결 리스트를 살펴보면, 가장 마지막 노드의 링크 필드는 언제나 NULL → 리스트의 마지막 원소 뒤에는 아무 원소도 없기 때문에 연결 리스트의 마지막 노드의 링크 필드는 언제나 null → 마지막 노드의 필드를 활용하면서도 프로그램 성능에 도움이 되도록 하기 위해 원형 연.. 2023. 11. 28.
[자료구조] 큐 큐의 개념 큐의 의미 추상자료형 → 택시를 타기 위해 서 있는 행렬 → 병원 접수대 → 예금 인출기 → 작업 큐에 들어간 작업이 가장 처음에 처리되는 작업 스케쥴 (First - In - First - Service) 한쪽에서는 삽입연산만 발생 , 다른쪽에서는 삭제 연산만 발생 가능한 구조 삽입연산 → 서비스를 받기 위한 기다림 삭제연산 → 서비스를 받는 중 선입 선출 ( First - In - First - Out, FIFO) 알고리즘이 사용 됨 큐의 정의 삽입 구조 D 입력 시 rear 포인터가 한칸 이동 삭제 구조 front 값 삭제 포인터 활용 front : 삭제 rear : 삽입 큐의 추상 자료형 큐의 객체 정의 큐 객체 → 0개 이상의 원소를 갖는 유한 순서 리스트 큐의 삽입(Add_q) 연산.. 2023. 11. 28.
[HTML5 웹 프로그래밍] HTML5 API 웹 스토리지 클라이언트에 데이터를 저장하기 위한 영역 쿠키 웹 스토리지 저장 용량 4KB 도메인당 5MB (사실상 용량의 제한이 없음) 네트워크 전송 부하 및 보안 웹 서버에 요청을 보낼 때마다 HTTP 헤더에 담아서 전송 → 많은 트래픽의 발생 및 보안의 취약성 존재 웹 서버로 요청을 하더라도 HTTP 메시지에는 포함되지 않음 → 네트워크 부하 감소 유효 기간 유효 기간이 존재 → 기간 만료 시 자동 삭제 로컬 스토리지는 유효 기간이 없음→ 사용자에 의한 명시적인 삭제에 의해서만 삭제 가능 세션 문제 브라우저의 모든 윈도우가 고유하며, 독립적인 데이터의 저장 X 각 윈도우마다 독립적으로 데이터 저장 O 저장되는 데이터의 구성 (key , value) 키를 통해서만 원하는 데이터의 값에 대한 접근이 가능.. 2023. 6. 13.
[HTML5 웹 프로그래밍] 문서 & 브라우저 객체 모델 문서 객체 모델 ( DOM, document object model ) 문서 객체 HTML 문서의 각 요소를 자바스크립트에서 사용할 수 있도록 객체로 만든 것 DOM 브라우저가 HTML 문서에 접근 할 수 있도록 정의해 놓은 표준 모델 HTML 문서를 분석하고 표시하는 방식 문서가 적재되면 브라우저는 정적으로 DOM 생성 계층적인 구조를 갖는 트리로 표현 → DOM 트리 자바스크립트를 이용하면 프로그램 실행 중에 웹 문서의 내용, 구조 및 스타일에 대한 작업 가능 → 결과가 즉각 화면에 반영 브라우저 객체 모델(BOM , browser object model) 브라우저를 객체로 표현 window ┌ document : html 문서를 표현 (최상위) ├ history : 사용자가 방문한 URL을 저장 관.. 2023. 6. 13.
728x90