데이터베이스(7)
-
데이터베이스에서 데이터모델링이란
데이터모델링(date modelling)은 복잡한 현실의 데이터를 단순화시켜서 데이터베이스로 표현하기 위한 작업입니다 데이터 포인트 간의 연결 관계 및 구조를 알리기 위해 정보 시스템 전체나 그 일부를 시작적으로 표현하는 프로세스입니다 프로젝트 초기단계에서 데이터베이스를 구축하고자 진행하는 작업입니다 데이터 모델링의 필요성 데이터베이스의 자원은 무한하지 않습니다 그래서 데이터베이스의 자원을 효율적으로 관리하고 로직을 이해하기 쉽도록 설계 단계에서 부터 데이터 모델링을 잘해야 합니다 로직을 잘 만들어 어떠한 테이블, 칼럼을 생성하고 관계를 설정할지 전부 데이터모델링의 과정입니다 그래서 데이터모델링을 잘해야 데이터가 꼬여버리거나 SQL문을 비효율적으로 작성하는 문제를 미리 방지할 수 있고 이후 시스템을 확장..
2023.12.28 -
데이터베이스 인덱스(Index)
데이터베이스에서 인덱스란 데이터베이스 테이블에 대한 검색 성능을 높여주는 자료구조입니다 특정 컬럼에 인덱스를 생성하면 해당 컬럼의 데이터들을 정렬해서 별도의 메모리 공간에 데이터 물리적 주소와 함께 저장됩니다 또한 인덱스 생성 시 오름차순으로 정렬하기 때문에 정렬된 주소체계라고 표현할 수 있습니다 만약 우리가 책에서 원하는 내용을 찾고자 한다면 책의 모든 페이즈를 찾아보는 것은 오랜 시간이 걸립니다 그렇기 때문에 책의 저자들은 책 맨 앞 또는 맨 뒤에 색인을 추가합니다 데이터베이스의 index는 책의 색인과 같은 역할이라고 볼 수 있습니다 인덱스(Index의 자료구조) 인덱스는 여러 자료구조를 이용하여 구현할 수 있습니다 대표적인 자료구조로는 해시 테이블과 B+Tree가 있습니다 해시 테이블(Hash T..
2023.12.26 -
데이터베이스 트랜잭션(TCL)이란
트랜션 제어 언어(Transaction control language)이란 데이터 제어어(DCL)과 비슷한 맥락입니다 하지만 데이터를 제어하는 언어가 아닌 트랜잭션을 제어할 때 사용합니다 논리적인 작업 단위를 묶어 데이터 조작어(DML)에 의해 조작된 결과를 트랜잭션 별로 제어합니다 그렇다면 트랜잭션이 무엇인지 알아보겠습니다 트랜잭션(Transaction) 데이터베이스의 상태를 변화시키기 위해 수행하는 작업의 단위를 말합니다 보통 데이터베이스관리시스템 선능을 초당 트랜잭션이 몇개가 실행되었는지를 측정합니다 MySQL의 입력하는 모든 명령어들은 각각 하나의 트랜잭션이라고 할 수 있습니다 간단하게 말해서 질의어(SQL)를 사용해 데이터베이스를 접근하는 것을 의미합니다 트랜잭션(Transaction)의 특징 ..
2023.12.25 -
데이터베이스 언어 정의와 종류(DLL,DML,DCL)
데이터베이스 언어는 데이터베이스를 구축하고 이용하기 위한 데이터베이스 시스템과의 통신 수단입니다 데이터베이스언어는 데이터베이스관리시스템을 통해 사용하며 기능과 사용 목적에 따라 정의 언어(DLL), 데이터 조작 언어(DML), 데이터 제어 언어(DCL)로 나뉩니다 이번엔 이 데이터베이스의 언어의 정의와 종류를 알아보겠습니다 데이터 조작 언어(DML : data manipulation language) 사용자로 하여 데이터를 처리할 수 있게하는 도구로써 사용자와 데이터베이스관리시스템과의 인터페이스를 제공합니다 대표적인 데이터 조작 언어에는 질의어가 있습니다 질의어는 터미널에서 주로 이용되는 비절차적 데이터 언어입니다 절차적 언어와 비 절차적 언어가 있습니다 데이터 조작언어는 입력하는 순간 즉시 반영이 되지..
2023.12.24 -
데이터베이스의 구조
데이터베이스 시스템(DBS:database system)은 데이터베이스와 데이터베이스관리시스템(DBMS)을 이용해 조직에 필요한 정보를 제공하는 전체 시스템을 의미합니다 이번에는 이 데이터베이스 시스템에 대해 알아보겠습니다 스키마 스키마의 어원은 '모양' '형태'를 뜻하는 그리스어에 유래하였습니다 스키마란 데이터베이스에 저장되어있는 데이터의 구조와 제약 조건을 정의한 것을 스키마 라고 합니다 데이터 베이스에서의 스키마 종류로는 3가지가 있습니다 1.외부 스키마(external schema) 사용자, 응용프로그래머가 데이터베이스에 접근할 수 있는 인터페이스 역할을 합니다 사용자 그룹을 위한 외부 스키마가 존재합니다 외부 스키마가 모여 개념 스키마를 이룹니다 하나의 데이터베이스 시스템에는 여러 개의 외부 스..
2023.12.23 -
데이터베이스의 기본개념
데이터베이스의 어원은 1950년 미국정부가 전 세계에 위치한 군대의 군비상황을 관리하기 위해 컴퓨터 도서관을 설립하면서 데이터(data) + 기지(base)라는 뜻의 데이터베이스(database)라는 용어가 탄생했습니다 그 후 1963년 미국 SDC가 개최한 심포지엄에서 '데이터 베이스' 라는 용어를 공식으로 사용하기 시작하면서 초기 개념인 대량의 데이터를 축적하는 기지라는 뜻으로 사용되었습니다 GE에서 근무하던 찰스 바크만(Charles Bachman)박사가 최초의 데이터베이스관리시스템(DBMS)인 IDS(integrated Data Store)를 개발하면서 새롭게 저장장치에 직접 접근하기 위한 데이터 모델이 제안되었습니다 이후 다양한 데이터 모델을 기반으로 하는 데이터베이스관리시스템이 개발되기 시작했..
2023.12.22