본문 바로가기

Programming/Database System23

[Database] 빅 데이터 (Big Data) 1장 - Big Data Storage System 전통적인 application은 관계형 데이터베이스 (RDBMS)를 기반으로 구축할 수 있었다. 그러나 현대 application은 관계형 데이터베이스 구조에 딱 맞는 데이터만을 다루지 않는다. 더 이상 데이터는 하나의 엔터프라이즈로부터 생산되지 않는다. 즉 빅데이터가 나타났으며 이 빅데이터를 다루기 위한 여러 데이터베이스 시스템 종류들이 등장한다. 따라서 빅 데이터를 정의, 분류하고 그에 따른 적절한 데이터베이스 시스템들을 훑어본다. 전체적인 흐름은 데이터베이스 시스템 (Abraham Silberschatz , Henry F. Korth , S. Sudarshan 저)의 10장 Big Data을 따른다. 목차 빅 데이터 (Big Data) 이전의 데이터 빅 데이터 쿼리 (Query) 빅 데이터 저장소 .. 2024. 4. 13.
[Database] 데이터 타입 비교 : char vs varchar 목차 SQL 표준에서의 char, varchar 예시 1. Oracle 예시 2. MySQL SQL 표준에서의 char, varchar SQL 표준에서 정의한 built-in type은 다음과 같다. char(n) : character, 고정길이 형태 문자열, n (bytes)은 사용자가 정의 varchar(n) : character varying, 가변길이 형태 문자열, 사용자는 최대길이 n (bytes)을 정의 nvarchar (n) : 다국어 데이터를 저장할 수 있는 varchar int samllint numeric(p, d) real, double precision folat(n) char와 varchar에 대해 간단히 비교해보려 한다. 둘 다 문자열 데이터 타입이고, null을 삽입할 수 있다.. 2024. 1. 17.
[Database] Oracle Database Index (19c 기준) 목차 오라클의 인덱스 오라클에서 지원하는 데이터베이스 인덱스 B-Tree 인덱스 Bitmap 인덱스 Funtion-Based 인덱스 Application Domain 인덱스 Index-Organized Tables 오라클의 인덱스 오라클 인덱스는 스키마 object로서 원천 데이터로부터 논리(물리)적으로 분리되어 있다. 그러므로 인덱스를 Drop 하면 여전히 데이터에는 액세스가 가능하다. (그러나 느리겠지) 인덱스는 빠르게 single row 로 찾아갈 수 있는 길이다. 오로지 실행 속도에 영향을 준다. 찾으려는 데이터 값이 인덱싱 되어있다면 인덱스를 통해 해당 값이 포함된 row로 곧장 갈 수 있다. 인덱스는 테이블의 1개 이상의 컬럼에 생성할 수 있다. 인덱스는 disk I/O를 줄여주는 여러 대안 .. 2024. 1. 8.
[Message Brokers] Streaming data와 Pub / Sub system 목차 Streaming Data Streaming Data를 쿼리하는 방법 Algebraic Operations Publish / Subscribe system [참고] 트위터의 데이터 처리 방식 Streaming Data : 지속적인 데이터 흐름 웹 서비스에서의 데이터는 주로 데이터베이스 시스템에서 관리된다. Relational Database Management System (RDBMS, 관계형 데이터베이스)가 대표적이다. 데이터베이스에 저장된 데이터를 불러오기 위해 많은 client들이 질의 (query)하는데 이 질의를 지속적으로 (혹은 주기적으로) 해야 하는 데이터들이 있다. 예를 들면, SNS 게시글은 데이터가 추가될 때마다 엄청난 질의가 들어올 것이다. 호날두가 인스타그램에 글을 올리면 해당.. 2023. 11. 25.
[Database] 인덱스 (Index) 6장 : 쓰기에 최적화된 인덱스 https://kghworks.tistory.com/153 [Database] 인덱스 (Index) 5장 : Multiple-key Access (다중 키) https://kghworks.tistory.com/152 [Database] 인덱스 (Index) 4장 : Hash Index https://kghworks.tistory.com/151 [Database] 인덱스 (Index) 3장 : B+-Tree Index 기본 https://kghworks.tistory.com/150 [Database] 인덱스 (Index) 2장 : Ordered Index htt kghworks.tistory.com 여기서부터는 심화 포스팅이다. B+-Tree index는 쓰기 성능이 떨어지므로 쓰기 성능에 특화되어 있는 .. 2023. 11. 8.
[Database] 인덱스 (Index) 5장 : Multiple-key Access (다중 키) https://kghworks.tistory.com/152 [Database] 인덱스 (Index) 4장 : Hash Index https://kghworks.tistory.com/151 [Database] 인덱스 (Index) 3장 : B+-Tree Index 기본 https://kghworks.tistory.com/150 [Database] 인덱스 (Index) 2장 : Ordered Index https://kghworks.tistory.com/149 [Database] 인덱스 (Index) 1장 : 필요성과 kghworks.tistory.com 4장까지 인덱스의 종류와 그 특징을 알아보았다. Ordered index와 Hash index가 있으며 Oredered index에서 B+-Tree ind.. 2023. 10. 20.