라벨이 Database인 게시물 표시

DATABASE에 대한 기초 지식(MySQL)

이미지
DATABASE : MySQL 데이터베이스는 데이터 저장소이다. 더불어 MySQL은 관계형데이터베이스다. 관계형 데이터베이스(오라클, MySQL,mssql)은 SQL문을 공유한다. NoSQL은 빅데이터같은 경우 관계형데이터베이스로 한계가 있기 때문에 대안으로 생겨난것이다. 그림 출처 : 생활코딩 데이터베이스 서버 : 서버안에 데이터를 저장하고 수정, 삭제, 정의 즉  관리하는 것을 서버에서 한다. 서버 안에는 여러개의 데이터베이스가 존재할 수 있다. 데이터베이스 클라이언트 : 데이터를 명령하고 서버를 체크하는 것을 클라이언트에서 한다. 데이터베이스 :  테이블을 카테고라이징 하는 역할을 함. 물론 여러개의 테이블이 존재 할 수 있다. Row와 Column은 연결되어 있으며, Column에는 데이터 타입이 Row에는 데이터의 그룹이고 구체적인 데이터를 레코드라고 한다. 각각의 칸들을 필드라고 한다.

RDBMS (Relational Database Management System)

RDBMS   (relational database management system) ; 관계형 데이터베이스 관리 시스템 RDBMS는 관계형 데이터베이스를 만들거나, 수정하고 관리할 수 있게 해주는 프로그램이다. RDBMS는 사용자가 입력하거나, 또는 응용프로그램 내에 포함된 SQL 문장을 취하여 데이터베이스의 생성, 수정 및 검색 등의 서비스를 제공한다. 잘 알려진 RDBMS로는 마이크로소프트의 액세스, 오라클의 오라클7, Ardent의 UniData 등이 있다. 신생기업이나 소규모 비즈니스 그리고 개인적인 데이터베이스들의 대부분이 RDBMS를 이용하여 만들어지고 있다. 그러나, 새로운 객체지향형 데이터베이스 모델인 OODBMS가, 미래의 데이터베이스 관리 시스템으로서의 자리를 놓고 RDBMS와 각축을 벌이기 시작했다. 특징으로는  -   모든 데이터를  2 차원 테이블로 표현할수 있다. -  테이블은  row(record, tuple) 과  column(field, item) 으로 이루어진 기본 데이터 저장 단위이다. -  상호관련성을 가진 테이블 (table) 의 집합이다. -  만들거나 이용하기도 비교적 쉽지만 ,  무엇보다도 확장이 용이하다는 장점을 가진다. -  데이터베이스의 설계도는  ER(Entity Relationship)  모델이다. - ER 모델에 따라 ,  데이터베이스가 만들어지며 ,  데이터베이스는 하나 이상의 테이블로 구성 됨 . ER 모델에서 엔티티를 기반으로 테이블이 만들어진다. 여기서  DB 인 데이터베이스는 일종의 데이터 저장소 (Storage) 라고 생각하면 된다 .  정보를 단순하고 규칙적인 모양새로 구성한 저장소인 셈이다 .  엑셀의 표처럼 테이블로 구성되어 있고 ...

MySQL vs NoSQL

관계형 데이터베이스 (MySQL) 데이터 모델 관계형 모델은 데이터를 행과 열로 구성된 테이블이라고 하는 테이블 형식 구조로 정규화한다. 스키마는 테이블, 열, 인덱스, 테이블 간 관계 및 기타 데이터베이스 요소를 정의한다. ACID 속성 기존의 RDBMS(관계형 데이터베이스 관리 시스템)는 약어인 ACID(원자성, 일관성, 격리성, 내구성)로 정의된 일련의 속성 세트를 지원한다.  원자성 은 트랜잭션이 완전히 실행되거나 전혀 실행되지 않는 "모두 실행 또는 전혀 실행되지 않음"을 의미한다.  일관성 은 트랜잭션이 실행되면 데이터가 데이터베이스 스키마를 준수해야 함을 의미한다.  격리성 은 동시에 일어나는 트랜잭션이 다른 트랜잭션과 별도로 실행되어야 함을 의미한다.  내구성 은 예기치 못한 시스템 장애 또는 정전으로부터 마지막으로 알려진 상태로 복원하는 기능이다. 성능 성능은 일반적으로 디스크 하위 시스템에 따라 다릅니다. 최고 성능을 달성하기 위해서는 쿼리, 인덱스 및 테이블 구조를 최적화해야 한다. 확장 가능 더 빠른 하드웨어로 "확장"이 간편해 진다.  분산 시스템을 확장하기 위해서는 관계형 테이블에 대해 추가적인 투자가 필요하다. API 구조화 질의어(SQL)를 준수하는 쿼리를 사용하여 데이터를 저장 및 검색하기 위한 요청이 전달된다. 이러한 쿼리는 RDBMS(관계형 데이터베이스 관리 시스템)에 의해 구문 분석 및 실행된다. 도구 SQL 데이터베이스는 일반적으로 데이터베이스로 구동되는 애플리케이션의 배포를 간소화하기 위해 다양한 도구 세트를 제공한다. NoSQL 데이터베이스 (NoSQL) 데이터 모델 비관계형(NoSQL) 데이터베이스는 일반적으로 스키마를 강제 적용하지 않는다. 파티션 키는 값, 열 세트, 반정형 JSON, XML 또는 관련 항목 속성을 포함하는 다른 문서에 일반적으로 사용된다. ...

DBMS (database management system, DBMS)

DBMS  ( database management system ,  DBMS) 란? 데이터베이스라는 데이터의 집합을 만들고, 저장 및 관리할 수 있는 기능들을 제공하는 응용프로그램이다. 즉, 데이터 의 관리에 특화된 프로그램이라고 생각하면 편하다. 널리 알려진 DBMS로는 오라클 사의 오라클 과  Mysql , MariaDB 의 MariaDB 등등 많다! DBMS  ( database management system ,  DBMS) 기능 중복 제어 : 동일한 데이터가 여러 위치에 중복 저장되는 현상을 방지한다. 데이터가 중복되면, 저장 공간이 낭비되고 데이터의 일관성이 깨질 수 있다. 접근 통제 : DBMS는 사용자마다 다양한 권한을 부여할 수 있으며, 권한에 따라 데이터에 대한 접근을 제어할 수 있다. 인터페이스 제공 : DBMS는 사용자에게 SQL 및 CLI,GUI등 다양한 인터페이스를 제공한다. 관계 표현 : 서로 다른 데이터간의 다양한 관계를 표현할 수 있는 기능을 제공한다. 무결성 제약 조건 : 무결성에 관한 제약 조건을 정의/검사하는 기능을 제공한다. 데이터베이스는 반드시 무결성 제약조건을 통과한 데이터만을 저장하고 있어야 한다. DBMS  ( database management system ,  DBMS) 장단점 장점 - 데이터의 논리적, 물리적 독립성이 보장된다. - 데이터의 중복을 피할 수 있어서 기억공간이 절약된다. - 저장된 자료를 공동으로 사용할 수 있다. - 데이터의 일관성, 무결성을 유지할 수 있다 - 보안이 유지된다. - 데이터를 표준화, 통합 관리가 가능하다. - 최신의 데이터를 유지할 수 있고, 데이터의 실시간 처리가  가능하다. 단점 DBMS는 데이터...

Database 언어 정의 및 종류

데이터베이스 언어  ( Database Language )는 컴퓨터의 데이터베이스 작업을 위한 컴퓨터 언어이다. 데이터베이스 언어를 사용하여 데이터베이스 사용자 및 응용 프로그램 소프트웨어는 데이터베이스에 액세스 할 수 있다. 데이터베이스를 취급하는 기능 중 검색(질의)가 중요하기 ​​때문에, 통례는 (데이터베이스) 쿼리 언어라고도 불린다. 그러나 데이터베이스 언어 및 질의 언어는 개념적으로 겹치는 부분도 있지만, 동의어는 아니다. [ 정의] -  데이터베이스 언어는 데이터베이스를 구축하고 이용하기 위한 데이터베이스 시스템과의 통신 수단이다 . 데이터 베이스 언어는 DBMS를 통해 사용하며, 기능과 사용 목적에 따라 데이터 정의 언어(DDL), 데이터 조작 언어(DML), 데이터 제어 언어(DCL)로 나뉜다. [종류] 1) 데이터 정의 언어(DDL : Data Definition Language) 데이터 구조의 생성, 업데이트, 삭제를 위한 언어 또는 언어 요소 : DB 구조, 데이터 형식, 접근 방식 등 DB를 구축하거나 수정할 목적으로 사용하는 언어이다. 외부 스키마를 명세한다.  DDL은 SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 정의하거나 변경 또는 삭제할 때 사용하는 언어로써  논리적 데이터 구조와 물리적 데이터 구조의 사상을 정의하고,  데이터베이스 관리자나 데이터베이스 설계자가 사용하게 된다. - CREATE : SCHEMA, DOMAIN, TABLE, VIEW, INDEX를 생성 - ALTER : Table에 대한 정의를 변경하는 데 사용 - DROP : SCHEMA, DOMAIN, TABLE, VIEW, INDEX 를 삭제 2) 데이터 조작 언어(DML: Data Manipulation Language) 대상 데이터의 검색, 등록, 업데이트 및 삭제를 위한 언어 또는 언어 요소 : 사용자로 하여금 데이터를 처리할 수 있게...

이 블로그의 인기 게시물

3계층 구조( 3 Tier Architecture )

MySQL Index태우기가 뭐에요?