본문 바로가기

공부/개념7

DB에서의 partitioning(분할, 파티셔닝) RDB에서는 빅데이터를 관리하거나 효율성을 위해 사용하는 기법으로 Partitioning 이 있습니다. 제가 기억하기 위해 정리해봅니다. Partitioning (분할) 말그대로 분할하는 것을 뜻합니다. 무엇을 분할하느냐? RDB에서 Table을 분리하는 것입니다. 위의 그림과 같이 예를 들어 하나의 테이블이 있는 경우 이것을 적당한 방법을 통하여 2개 혹은 그 이상으로 나누는 것을 뜻합니다. 이 나누는 방법에 범위를 정하는 것에는 여러가지가 있는데 어렵지 않아 간단하게 설명 드리겠습니다. 1. List Partitioning 리스트로 나누어서 파티셔닝을 하는 것을 뜻합니다. 예로 [서울,인천,대전,광주,대구,울산,부산] 이라는 인덱스들이 있다면 [서울, 인천] [대전,광주] [대구,울산,부산] 이런식으.. 2021. 6. 7.
NoSQL 저장 유형별 간단 정리 NoSQL은 특정한 DB를 말하는 게 아니라 RDB와 달리 데이터 액세스에 SQL만 사용하지 않는 DB들을 일컫는 단어입니다. 따라서 정확한 정의도 없으며 NoSQL을 분류하는 기준도 사람에 따라 모두 다 다릅니다. NoSQL이라는 단어 대신 비관계성 데이터베이스라는 단어도 사용하기도 합니다. 저는 위의 그림에 따라 Wide Column, Graph, Key-Value, Document 이 네 가지 방법 저장 형태에 따라 살펴보겠습니다. 1. Key - Value Key를 고유한 식별자로 사용하는 Key - Value 쌍의 집합으로 데이터를 저장합니다. 일반적으로 RDB는 모든 Record가 동일한 Field를 가지고 있지만 Key - Value DB는 각 Record가 모두 다른 Field를 가지고 있.. 2021. 6. 6.
RDBMS, NoSQL, Elasticsearch 그리고 Hadoop 헷갈리니까 간단하게 정리하려고 글을 씁니다. DB 용어들 자체가 생소하시다면 아래 링크를 한번 읽어보세요. 데이터베이스 종류와 SQL 그리고 스키마(schema) 직전 포스팅에서 엑셀과 데이터베이스를 간단하게 비교를 해 봤는데, 이번 글은 직전 포스팅의 후속글입니다. 따라서 예상 독자도 이전글과 동일하게 엑셀로 현업 실무를 하는, 개발자가 아닌 eine.tistory.com 1. RDBMS 일단 RDBMS는 대부분 다 아실것이라고 생각합니다. RDBMS는 유명한 DB 시스템 MySQL, Oracle, MariaDB 같은 흔히 DB 하면 떠오르는 이러한 표 형태의 관계형 데이터베이스들을 뜻합니다. 특징으로는 SQL을 사용하여 데이터 추가, 삭제, 수정등이 가능합니다. 2차원의 표 형태로 데이터를 표현합니다.. 2021. 6. 4.
apache kafka 개념 정리 kafka는 아마 가장 유명한 스트리밍 플랫폼 중 하나 일 것입니다. 여러모로 사용은 해봤지만 아직 개념적으로 부족한 부분이 많은 듯하여 처음부터 다시 정리해봅니다. 1. Apache Kafka의 간단한 정리 kafka는 분산 스트리밍 플랫폼이라고 합니다. 여기서 분산은 위의 그림처럼 여러 서버 혹은 데이터 센터에 클러스터로 설치 가능하다는 것을 말하며 스트리밍 플랫폼은 데이터 레코드 스트림을 처리할 수 있는 플랫폼이라는 것을 뜻합니다. 쉽게 말하자면 실시간으로 생기는 스트리밍 데이터를 분배할 수 있는 플랫폼 이라고도 할 수 있습니다. 이러한 특성 때문에 대체적으로 실시간 데이터 파이프라인 등 스트리밍 데이터 위주로 사용됩니다. 또한 3가지 특징을 가지고 있습니다. 높은 확장성(scalability)과 .. 2021. 6. 3.