일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 완전탐색
- 파이썬
- SWEA
- 다익스트라
- 백준 알고리즘
- Python
- DFS
- 너비 우선 탐색
- 데이터베이스
- 다이나믹 프로그래밍
- 문자열
- 그래프 탐색
- 프로그래머스
- 브루트포스
- BFS
- SW Expert Academy
- 그래프 이론
- oracle
- 브루트포스 알고리즘
- 자바스크립트
- 스택
- 백준알고리즘
- 그리디 알고리즘
- 백트래킹
- 오라클
- 너비우선탐색
- javascript
- DP
- 깊이우선탐색
- 구현
- Today
- Total
목록분류 전체보기 (148)
민규의 흔적
데이터 모델링 여기서 말하는 '모델링'이란 복잡한 것을 단순히 한다는 의미를 지닌다. 현실 세계에 존재하는 데이터를 컴퓨터 세계의 데이터베이스로 옮기는 변환 과정으로, 데이터베이스 설계의 핵심 과정이다. 2단계 데이터 모델링 개념적 데이터 모델링(conceptual modeling) 현실 세계의 중요 데이터를 추출하여 개념 세계로 옮기는 작업 논리적 데이터 모델링(logical modeling) 개념 세계의 데이터를 데이터베이스의 구조로 표현하는 작업 데이터 모델 (Data Model) 데이터 모델링의 결과물을 표현하는 도구 개념적, 논리적 데이터 모델이 존재한다. 개념적 데이터 모델 사람이 이해할 수 있도록 현실 세계를 모델링하여 개념적 구조로 표현하는 도구 예) 개체 - 관계 (ER : Entity ..
데이터베이스 언어 사용자와 데이터베이스 관리 시스템(DBMS) 간의 통신 수단을 의미한다. 데이터베이스 언어로는 크게 3가지가 존재한다. 데이터 정의어(DDL : Data Definition Language) DBMS는 정의된 스키마에 대한 명세를 시스템 카탈로그 또는 데이터 사전에 저장한다. DDL은 데이터베이스 스키마를 정의 또는 수정, 삭제하기 위해 사용한다. 데이터 정의어의 기본적인 기능은 다음과 같다. 1. 데이터 모델에서 지원하는 데이터 구조를 생성 예) SQL에서 CREATE TABLE 2. 데이터 구조의 변경 예) SQL에서 ALTER TABLE 3. 데이터 구조의 삭제 예) SQL에서 DROP TABLE 4. 데이터 접근을 위해 특정 애트리뷰트 위에 인덱스를 정의 인덱스를 정의하는 이유는..
ANSI / SPARC 아키텍쳐 대부분의 DBMS 아키텍쳐는 1978년에 미국 표준화 기관인 ANSI/SPARC에서 제안하였다. ANSI/SPARC 아키텍쳐는 내부, 개념, 외부 3단계로 구성된다. 데이터베이스를 관점에 따라 3계층으로 분리하여 사용자에게 복잡한 데이터베이스를 단순화된 관점으로 제공하며 궁극적으로 데이터 독립성을 제공하기 위한 목적이다. ANSI / SPARC 3단계 아키텍쳐 ANSI/SPARC 3단계 아키텍쳐는 단계별 추상화를 제공한다. 외부 단계(external level): 개별 사용자 관점 뷰 개념 단계(conceptual level): 조직 전체의 관점 뷰 내부 단계(internal level): 물리적 저장 장치 관점 뷰 일반적으로 내부 단계에서 외부 단계로 갈수록 추상화 레벨..
데이터 모델 데이터베이스의 구조를 기술하는데 사용되는 개념들의 집합인 구조(데이터 타입과 관계), 이 구조 위에서 동작하는 연산자들, 무결성 제약조건들 데이터 모델의 예로는 트리 구조를 지니는 계층 데이터 모델(hierarchical data model), 그래프 형식의 네트워크 데이터 모델(network data model), 2차원의 테이블 모델인 관계 데이터 모델(relational data model)이 존재한다. DBMS의 발전 과정 1세대 계층 DBMS 1960년대 후반에 최초의 계층 DBMS가 등장하였다. (예. IBM 사의 IMS) 트리 구조를 기반으로 하는 계층 데이터 모델을 사용한 DBMS로, 계층 데이터 모델은 네트워크 데이터 모델의 특별한 사례이다. 네트워크 DBMS 1960년대 초..
파일 시스템 데이터를 파일로 관리하기 위해 파일 생성/삭제/수정/검색 기능을 제공하는 소프트웨어이다. 파일 시스템은 DBMS가 등장하지 않았을 때인 1960년대부터 사용되어 왔다. 응용프로그램별로 필요한 데이터를 별도의 파일로 관리하였다. 파일 시스템의 문제점 파일 시스템의 문제점은 다음과 같다. 1. 같은 내용의 데이터가 여러 파일에 중복 저장된다. 다음과 같이 고객 데이터 파일과 주문 데이터 파일을 관리하는 각각의 응용 프로그램이 있다고 가정해보겠다. 고객 데이터와 주문 데이터를 저장하다보니 위와 같이 중복되는 부분이 존재할 수 있다. 이는 저장 공간의 낭비와 데이터 일관성을 유지하기 어렵다는 점을 지닌다. 데이터 일관성을 지키기 어려운 데이터 불일치 사례를 다음의 예로 이해해보자. 각각의 데이터 파..
데이터베이스 스키마(Schema) 데이터베이스에 저장되는 데이터 구조와 제약조건을 정의. 내포(instance) 라고도 부른다. 데이터베이스의 구조를 알려주는 역할이며 자주 변경되지 않는다. 다음의 데이터베이스 스키마 예를 보자. DEPARTMENT(DEPTNO, DEPTNAME, FLOOR) EMPLOYEE(EMPNO, EMPNAME, TITLE, DNO, SALARY) 부서 정보를 지니는 DEPARTMENT 릴레이션에 대한 구조를 정의하고 있다. DEPARTMENT 릴레이션에는 부서 번호를 뜻하는 DEPTNO, 부서 이름을 뜻하는 DEPTNAME 그리고 부서가 위치하는 층 수를 뜻하는 FLOOR로 구조가 정의되어 있음을 뜻한다. 마찬가지로, 직원 정보를 지니는 EMPLOYEE 릴레이션에 대한 구조 또..
정보 VS 데이터 데이터베이스 시스템을 알아보기 전, 정보와 데이터의 차이를 알 필요가 있다. 어떤 값을 다루느냐에 따라 정의하는 바가 다르기 때문이다. 데이터 현실 세게에서 단순히 관찰하거나 측정하여 수집한 사실이나 실제 값 정보 의사 결정에 유용하게 활용할 수 있도록 데이터를 처리한 의미있는 결과물 이 둘의 차이를 예로 들어 설명해보자면, 다음과 같다. 김철수의 1학기 기말고사 성적이 다음과 같이 나왔다. 국어 영어 수학 역사 과학 80 75 85 100 70 실제 김철수가 치른 기말고사 성적 값 그대로이며 이는 정말 순수한 값 그 자체이다. 시험을 체점하여 수집한 사실이나 실제 값, 바로 데이터이다. 각 반에서 학생들의 기말고사 결과를 이용해 등수를 메길 때, 어떤 값을 기준으로 두는가? 여러 기준..
데이터베이스 (Database) 특정 조직의 여러 사용자가 공유하여 사용할 수 있도록 연관된 운영 데이터(Operational data)들이 구조적으로 통합 저장된 데이터 데이터베이스의 구조는 사용되는 데이터 모델에 의해 결정된다. 실생활에서 데이터베이스는 어디에서 쓰이는가? 사실 실생활 어디에서든 데이터베이스가 사용 및 운용되고 있다. 대학 대학교에서는 데이터베이스에 학생들에 관한 신상 정보, 수강 과목, 성적 등을 기록하고, 각 학과에 개설되어 있는 과목들에 관한 정보를 유지하고, 교수에 관해서는 신상 정보, 담당 과목, 급여 정보를 유지한다. 영화관 영화 예매 시스템에서는 영화 예매 기능을 통해 티켓을 예매하면 예매한 사람의 신상 정보 및 모든 예매 정보가 데이터베이스에 기록된다. 이처럼, 실생활에..