Database

Database/Redis

[Redis] brew install redis 설치 방법

설치 명령어brew install redis Redis 실행brew services start redis Redis 정지brew services stop redis Redis 재실행brew services restart redis

Database/Redis

[Redis] 정의, 인메모리 데이터베이스

RedisRedis는 고성능 키-값 저장소임.메모리 내 데이터 구조 저장소로서 주로 사용됨.Redis는 다양한 데이터 구조를 지원하며, 네트워크를 통해 데이터에 빠르게 접근할 수 있게 설계되어 있음.주로 캐시, 메시지 브로커, 큐, 세션 스토어 등으로 사용됨. Redis의 주요 특징1. 메모리 기반Redis는 모든 데이터를 메모리에 저장하고 접근함.이는 디스크 기반의 데이터베이스보다 훨씬 빠른 읽기 및 쓰기 속도를 가능하게 함. 2. 데이터 구조Redis는 단순한 키-값 쌍 이상을 지원함.리스트, 세트, 해시, 정렬된 세트, 비트맵, 하이퍼로그로그, 지오스페이셜 인덱스 등 다양한 데이터 구조를 내장함. 3. 지속성Redis는 두 가지 방법(RDB, AOF)을 통해 메모리 내 데이터를 디스크에 지속적으로 ..

Database/SQL

[MySQL] Auto Increment, 컬럼 생성 옵션 종류

MySQL Auto IncrementMySQL에서 Auto Increment 속성은 주로 테이블의 기본 키를 위해 사용됨.새로운 레코드가 추가될 때마다 자동으로 고유한 숫자를 생성하고 할당함.이 기능은 주로 식별자 필드에서 사용되어 데이터베이스 내 각 행의 고유성을 보장함. MySQL Auto Increment 기능 및 용도1. 자동 고유 번호 생성Auto Increment 필드는 새로운 행이 추가될 때마다 자동으로 값을 증가시킴.이는 사용자가 직접 각 행에 고유 번호를 할당하지 않아도 되도록 하여 데이터 삽입 과정을 단순화함. 2. 기본 키와의 통합 사용일반적으로 Auto Increment 속성은 기본 키와 함께 사용됨.이렇게 함으로써, 각 행은 자동으로 생성된 고유한 ID를 갖게 되어, 데이터를 보다..

Database/SQL

[MySQL] 외래키, 복합키

MySQL 외래키MySQL에서 외래키는 두 테이블 간의 관계를 정의하고, 참조 무결성을 유지하는 데 사용됨.외래키는 한 테이블의 열이 되며, 이 열은 다른 테이블의 기본키를 참조함.이를 통해 테이블 간의 데이터가 서로 일관성을 유지하도록 보장함. MySQL 외래키의 역할과 기능1. 데이터 무결성1.1 참조 무결성외래키는 참조 무결성을 보장하여 참조된 테이블의 기본키 없는 값이 참조하는 테이블에 입력되는 것을 방지함.이는 데이터베이스의 논리적 일관성을 유지하는 데 중요함. 2. 관계의 정의2.1 테이블 간 관계 설정외래키를 사용하여 테이블 간의 관계를 명확하게 정의할 수 있음.이 관계는 일대일, 일대다, 다대다 등이 될 수 있음.3. 캐스케이딩 작업3.1 캐스케이드 업데이트와 삭제외래키 관계에서 주 테이블..

Database/SQL

[MySQL] 인덱스, 기본키

MySQL 인덱스MySQL에서 인덱스는 데이터베이스 테이블의 데이터 검색 속도를 향상시키기 위해 사용되는 자료구조임.인덱스는 검색 엔진의 색인과 유사하게, 데이터베이스 내에서 데이터를 빠르게 찾을 수 있도록 도움.인덱스를 사용하면 테이블의 모든 행을 차례대로 검사하는 대신, 효율적인 방법으로 특정 데이터 위치를 빠르게 찾아갈 수 있음. MySQL 인덱스 종류1. 기본 인덱스 (Primary Index)기본키 인덱스는 테이블의 주요 검색 기준이 되는 열에 자동으로 생성됨.각 행은 고유한 기본 키를 가지며, 이는 데이터의 무결성을 보장하는 데 중요한 역할을 함. 2. 보조 인덱스 (Secondary Index)보조 키 인덱스는 기본 키 이외의 열에 생성될 수 있음.이 인덱스는 보조 검색 경로를 제공하여 기본..

Database/SQL

[DB] 데이터 모델링, NoSQL

데이터 모델링데이터 모델링은 데이터를 효과적으로 구조화, 조직화 및 정의하는 과정임.데이터가 저장, 관리, 검색되는 방식을 결정하는 데 중요한 역할을 함. 데이터 모델링의 기본 개념1. 개념적 데이터 모델1.1 목적데이터와 비즈니스 요구 사항 간의 관계를 이해하고 시각화해야함.1.2 구성요소엔터티, 속성, 관계 및 제약 조건1.3 도구ER 다이어그램, UML 2. 논리적 데이터 모델2.1 목적구체적 데이터 구조를 설계하고 시스템 내의 데이터 흐름을 정의해야 함.2.2 구성요소정규화된 테이블, 키, 인덱스2.3 도구관계 데이터베이스 스키마, NoSQL 데이터 모델 등. 3. 물리적 데이터 모델3.1 목적실제 데이터베이스에 데이터를 어떻게 저장할지를 결정해야 함.3.2 구성요소테이블 스페이스, 파티셔닝, 인..

Database/ElasticSearch

[ES] 엘라스틱서치의 인덱스, 인덱스 수명주기 관리 (ILM)

엘라스틱서치의 인덱스엘라스틱서치의 인덱스는 중심적인 데이터 구조로서, 전체 데이터를 저장하고 관리하는 데 사용됨.인덱스는 매우 유연하며, 다양한 종류의 검색 작업에 최적화되어 있음. 1. 인덱스의 개념 및 정의1.1 인덱스 구조엘라스틱서치의 인덱스는 아파치 루씬을 기반으로 한 역 인덱스 구조를 사용함.이 구조는 데이터를 효율적으로 검색할 수 있도록 설계된 것으로, 각 단어와 그 단어가 포함된 문서의 목록을 매핑함. 1.2 인덱스 생성사용자는 JSON 형식의 문서를 엘라스틱서치에 제출함.이 문서들은 자동으로 색인화되어 인덱스에 저장됨.인덱스는 검색 쿼리에 응답하기 위해 필요한 모든 정보를 포함함. 2. 매핑2.1 매핑 정의매핑은 인덱스에 포함된 문서들의 구조를 정의함.각 필드의 데이터 타입, 인덱스 방법,..

Database/ElasticSearch

[ES] 엘라스틱서치의 구조 및 색인

엘라스틱서치의 구조엘라스틱서치는 아파치 루씬을 기반으로 하는 분산 검색 엔진임.이 구조는 매우 유연하고 확장 가능하며, 실시간 데이터 검색과 분석을 위한 강력한 기능을 제공함. 1. 노드와 클러스터1.1 노드엘라스틱서치에서 하나의 서버 인스턴스를 노드라고 부름.각 노드는 클러스터의 일부로서 데이터를 저장하고 클러스터의 색인 생성, 검색 기능을 처리함. 1.2 클러스터여러 노드가 모여 하나의 클러스터를 형성함.클러스터는 전체 데이터를 저장하고, 모든 색인 및 검색 기능을 관리함.클러스터는 하나 이상의 노드로 구성될 수 있으며, 하나의 노드만으로도 클러스터를 형성할 수 있음. 2. 인덱스엘라스틱서치의 인덱스는 유사한 특성을 가진 문서들의 집합임.인덱스는 관계형 데이터베이스의 데이터베이스와 비슷한 개념으로 이..

Database/SQL

[MySQL] MySQL 및 MariaDB 차이

MySQL과 MariaDB의 차이MySQL과 MariaDB는 모두 인기 있는 관계형 데이터베이스 관리 시스템임.둘 다 동일한 원본 코드를 공유하는 역사를 가지고 있지만, MariaDB는 MySQL의 포크임.MySQL이 오라클에 인수된 이후 2009년에 만들어짐.이러한 분기 이후, 두 데이터베이스는 서로 다른 기능 개발과 성능 향상에 중점을 두면서 점차적으로 차별화됨. 기원과 배경1. MySQLMySQL AB에 의해 개발됨.2008년에 Sun Microsystems에 의해 인수된 후 2010년에 오라클에 의해 인수됨. 2. MariaDBMySQL의 원 개발자 중 한 명인 몬티 와이드니어스가 주도하여 시작됨.MariaDB는 MySQL과 완전히 호환되는 목표를 가지고 시작됨.기능과 성능 개선에 중점을 둠. 라..

Database/ElasticSearch

[ES] 엘라스틱서치의 장점

엘라스틱서치의 장점엘라스틱서치는 아파치 루씬 기반의 오픈 소스 검색 엔진임.전문 검색, 구조화된 검색, 분석 기능을 제공함.데이터를 실시간으로 검색하고 분석하는 데 매우 유용하며, 다양한 장점을 통해 많은 기업에서 널리 사용됨. 1. 분산 처리 시스템엘라스틱서치는 데이터를 자동으로 여러 노드에 분산하여 저장함.이를 통해 높은 가용성과 확장성을 보장함.사용자는 각 검색 요청이 다수의 노드에서 동시에 처리되도록 구성할 수 있으며, 이로 인해 대규모 데이터셋도 빠르게 처리할 수 있음. 2. 실시간 검색과 분석엘라스틱서치는 거의 실시간으로 데이터를 색인화하고 검색 결과를 반환할 수 있음.새로운 데이터가 엘라스틱서치 클러스터에 추가되면, 이는 즉시 검색 가능한 상태가 됨.이는 온라인 쇼핑, 로그 분석, 실시간 모..

박경태
'Database' 카테고리의 글 목록