Database/SQL

Database/SQL

[MySQL] 데이터 타입

MySQL 데이터 타입MySQL 데이터베이스에서 사용할 수 있는 다양한 데이터 타입은 데이터의 특성과 필요에 따라 선택될 수 있음. 1. 숫자형 타입1.1 TINYINT매우 작은 정수를 저장함.-128에서 127까지, 또는 부호 없는 상태에서 0에서 255까지의 값을 저장할 수 있음.1.2 SMALLINT작은 정수를 저장함.-32768에서 32767까지, 또는 부호 없는 상태에서 0부터 65535까지의 값을 저장할 수 있음.1.3 MEDIUMINT중간 크기의 정수를 저장함.-8388608에서 8388607까지, 또는 부호 없는 상태에서 0에서 16777215까지의 값을 저장할 수 있음.1.4 INT or INTEGER표준 정수형임.-2147483648에서 2147483647까지, 또는 부호 없는 상태에서..

Database/SQL

[SQL] OLTP와 OLAP

OLTPOLTP (Online Transaction Processing) 는 데이터베이스 관리 시스템에서 실시간 트랜잭션 처리를 지원하는 기술임.이 시스템은 특히 금융, 리테일, 기업 자원 관리와 같은 분야에서 필수적으로 사용되며, 사용자의 요청을 즉시 처리하여 신속한 피드백을 제공하는 것이 핵심임. OLTP 특징1. 효율적인 트랜잭션 처리OLTP 시스템은 작은 크기의 트랜잭션을 매우 빠르고 효율적으로 처리함.각 트랜잭션은 일반적으로 몇 초 이내에 완료됨. 2. 고도의 병렬성과 동시성OLTP 시스템은 동시에 많은 사용자가 접속하고 작업을 수행할 수 있도록 설계됨.이를 위해 고급 동시성 제어 메커니즘과 락 기술을 사용함. 3. 데이터 무결성 유지OLTP 시스템은 데이터의 정확성과 일관성을 유지하는 데 중점..

Database/SQL

[SQL] 행 기반 데이터베이스와 열 기반 데이터베이스

행 기반 데이터베이스행 기반 데이터베이스 (Row-based Database) 는 데이터를 테이블 형태로 저장함.각 행은 여러 개의 컬럼으로 구성된 데이터 레코드를 나타냄.이 방식은 전통적인 관계형 데이터베이스 관리 시스템(RDBMS)에서 주로 사용됨.행 기반 데이터베이스는 SQL을 사용하여 데이터를 조작하고 관리하는 것이 일반적임. 행 기반 데이터베이스 특징1. 데이터 저장 방식데이터는 행 단위로 저장됨.각 행은 고유한 키에 의해 식별되며, 한 행 내에는 여러 컬럼이 있어 다양한 속성의 데이터를 저장할 수 있음. 2. 인덱싱행 기반 데이터베이스는 효율적인 조회를 위해 인덱스를 사용함.인덱스는 특정 컬럼에 대한 포인터를 제공하여 검색 속도를 빠르게함. 3. 트랜잭션ACID(원자성, 일관성, 격리성, 지속..

Database/SQL

[MySQL] 대용량 이진 객체와 장단점

MySQL 대용량 이진 객체MySQL에서 대용량 이진 객체 (LOB, Large Binary Object)는 큰 데이터 파일을 저장하는 데 사용되는 데이터 타입임.MySQL에서 LOB 타입에는 BLOB, TEXT, MEDIUMBLOB, LONGBLOB, LONGTEXT 등이 있음.이러한 타입들은 각각 다른 크기의 데이터를 처리할 수 있도록 설계됨.예를 들어, LONGBLOB 은 최대 4GB의 이진 데이터를 저장할 수 있음.LOB 타입은 비디오, 이미지, 대형 문서 파일과 같은 멀티미디어 콘텐츠를 데이터베이스에 저장하기 위해 사용됨.데이터베이스 내에서 이런 타입의 데이터를 관리함으로써 높은 수준의 데이터 무결성과 보안을 유지할 수 있음. 대용량 이진 객체 장단점1. 장점1.1 데이터 통합LOBs 를 사용하..

Database/SQL

[Database] 데이터베이스란?

데이터베이스란? 데이터베이스(Database)는 체계적으로 구성된 데이터의 집합이며, 이 데이터들은 효율적이고 안정적으로 저장, 관리, 검색, 업데이트, 삭제 등의 작업을 수행하기 위해 구조화된 방식으로 구성됩니다. 데이터베이스는 정보를 기록하고 유지하는 데 사용되며, 다양한 종류의 응용 프로그램과 시스템에서 데이터를 관리하는 데 주로 사용됩니다. 데이터베이스는 일반적으로 테이블(table)로 구성된 관계형 데이터베이스(Relational Database) 형태로 사용됩니다. 테이블은 행(row)과 열(column)로 구성되어 있으며, 각 행은 데이터 레코드(record)를 나타내고, 각 열은 해당 레코드의 특정 속성(attribute)을 나타냅니다. 예를 들어, 고객 정보를 저장하는 테이블은 고객의 이..

Database/SQL

[SQL] 효율적인 쿼리 작성 방법

효율적인 쿼리 작성 방법 효율적인 쿼리 작성 방법에 대해서는 다음과 같은 것들이 있습니다. 인덱스를 활용하기 데이터베이스에 인덱스를 생성해 놓으면 데이터를 빠르게 찾을 수 있습니다. 인덱스를 생성할 때는 자주 사용하는 컬럼에 대해서 생성하는 것이 좋습니다. 하지만 인덱스를 너무 많이 생성하면 데이터 삽입, 수정, 삭제 시간이 길어질 수 있으므로 적절한 인덱스를 생성해야 합니다. 적절한 쿼리 작성하기 조건절에 적절한 컬럼을 사용하고, 중복되는 데이터를 최소화하는 등 적절한 쿼리 작성 방법이 중요합니다. 불필요한 연산을 피하고, 필요한 컬럼만 가져오는 것도 성능에 도움이 됩니다. 데이터 정규화 데이터를 정규화하여 중복 데이터를 제거하면 저장 공간을 절약할 수 있고, 데이터 무결성이 유지됩니다. 하지만 데이터..

Database/SQL

[SQL] 데이터 레이크란? (Data Lake)

- 정형, 반정형, 비정형 데이터를 원시 형태로 저장 - 이로 인한 데이터 활용성이 높아지고, 머신러닝 딥러닝 모델 만들기 용이함 - 기업에서 얻은 아무런 정제되지 않은 데이터가 저장돼 있다. - Hadoop - RDBMS - 클라우드 기반 스토리지

Database/SQL

[SQL] 데이터웨어하우스(DW), 데이터마트 란?

- 데이터 저장소 - 데이터의 양은 데이터 마트보다 많음 - 기본적으로 기업의 정보와 의사결정을 도와주는 데이터를 모으는 데이터베이스 - 데이터 저장소 - 데이터의 양은 데이터 웨어하우스보다 적음 - 위의 데이터 웨어하우스보다 작은 데이터 웨어하우스라고 생각하면 됨 - 데이터 웨어하우스의 하위 집합 정도 - 범위가 제한적인 데이터 웨어하우스 - 데이터의 양이 데이터 웨어하우스보다 적어서 쿼리가 가벼움 - 데이터 웨어하우스보다 쿼리의 복잡성이 낮음 (왜냐면 분석에 용이하게 구축된 데이터이기 때문에) - 시간과 돈을 아낄 수 있음 - 효율성을 추구해서 너무 많..

Database/SQL

[SQL] 파이썬과 마리아디비 테스트용으로 도커 컨테이너 만들기

파이썬과 데이터베이스 연결을 위해 두개의 컨테이너를 만드는 작업을 해보자 파일의 구조는 다음과 같다 docker-compose.yml version: '2.1' services: mariadb: image: mariadb:10.7 hostname: mariadb container_name: mariadb restart: always ports: - 3376:3306 environment: MYSQL_ROOT_PASSWORD: root python: hostname: python container_name: python build: context: . dockerfile: ./Dockerfile stdin_open: true tty: true restart: always volumes: - type: bi..

Database/SQL

[SQL] MariaDB 테이블 정보를 쿼리로 확인하는 방법

데이터베이스 목록 조회 show databases; 데이터베이스 a_db 로 만들기 create database a_db; show databases; a_db 데이터베이스를 사용하고, 테이블 조회하기 use a_db; show tables; 테이블 만들어보기 a_table create table a_db.a_table (num int primary key, num2 int); show tables; 만든 테이블의 정보 조회하기 show columns from a_db.a_table; b_table 이라는 테이블을 만드는데 테이블의 열은 num, num2 컬럼으로 만들고 둘다 타입을 int(3) 으로 만들어보자 create table a_db.b_table (num int(3) primary key, n..

박경태
'Database/SQL' 카테고리의 글 목록 (2 Page)