레디스(5)
-
Redis 트랜잭션 Isolation & Lock
트랜잭션이란? 트랜잭션으로 묶게 되면 트랜잭션 내부에서 하나의 로직이 실패하여 오류가 나게되면 모두 취소시키며 그렇지 않으면 모두 성공시키는 것입니다. Redis 에서 트랜잭션이라니 조금 어색하다고 생각 할 수 있다. 하지만 여러 자료구조를 사용할 수 있는 Redis 의 특성상 트랜잭션을 잘 이용한다면 더 유용하게 다양한 상황에서 Redis를 사용할 수 있다. 읽기 일관성과 데이터 공유를 위해 Data Sets(Key/Value) Lock 을 제공한다. 또한 트랜잭션 제어를 위해 Read Uncommitted와 Read committed 타입 2가지 유형을 제공한다. 빅데이터 처리를 위한 플랫폼에는 Hadoop 과 같은 파일 시스템 기반도 있지만 가장 기본적인 단위의 트랜잭션을 제어할 수 없기 때문에 데..
2023.12.12 -
Redis 확장 모듈
오픈소스로 개발된 Redis server는 빅데이터 저장 및 관리 기술을 제공하는 소프트웨어이다. 물론 RedisLabs co. 에 의해 Enterprise Edition 에 대한 유지 보수 및 기술 지원이 이루어 지고 있지만 최초 Community Edition이 먼저 개발되어 배포된 것이다. 그러다보니 Community Edition에 대한 지속적인 기능 추가 및 서버 확장에는 다소 한계가 있을 수 밖에 없게 되었고 이에 많은 개발자들이 Redis Server의 소스를 이용한 다양한 기능들을 개발하여 배포하게 되었는데 이를 Redis 확장 모듈이라고 한다. REJSON : JSON 데이터 타입을 이용해 데이터를 처리할 수 있는 모듈 RediSQL : Redis Server에서 SQLite(관계형 DB..
2023.12.12 -
Redis 데이터 타입
데이터 타입 종류 내용 strings 문자(text), Binary 유형 데이터를 저장 List 하나의 key에 여러 개의 배열 값을 저장 Hash 하나의 key에 여러 개의 Fields와 Value로 구성 된 테이블을 저장 Set Sorted Set 정렬되지 않은 String 타입 Set과 Hash를 결합한 타입 Bitmaps 0 & 1 로 표현하는 데이터 타입 HyperLogLogs Element 중에서 Unique 한 개수의 Element 만 계산 Geospatial 좌표 데이터를 저장 및 관리하는 데이터 타입 기존 관계형 DB뿐만 아니라 대부분의 NoSQL 제품들은 하나의 토탈 데이터 관리 시스템 기능을 제공하기 때문에 보편적으로 파일 시스템에 비해 효율적으로 데이터를 저장 관리 할 수 있다. R..
2023.12.12 -
Redis 데이터 입력/수정/삭제/조회
종류 내용 set 데이터를 저장할 때(key, value) get 저장된 데이터를 검색할 때 rename 저장된 데이터 값을 변경할 때 randomkey 저장된 key 중에 하나의 key를 랜덤하게 검색할 때 keys 저장된 모든 key를 검색할 때 exits 검색 대상 key가 존재하는지 여부를 확인할 때 mset/mget 여러 개의 key와 value를 한번 저장하고 검색할 때 Redis DB에 데이터를 입력/수정/삭제/조회하기 위해서는 반드시 Redis 서버에서 제공하는 명령어를 사용해야 하며 데이터를 조작할 때는 하나의 Key에 대해 하나 이상의 Field 또는 Element 로 표현해야 한다. Redis 서버 실행 cd /home/redis/src ./redis-server /home/redis..
2023.12.10 -
NoSQL 개념
등장 배경 컴퓨터가 처음 발명된 이후로 인류는 수 많은 데이터를 양산하고 있고 이를 효과적으로 저장 관리 하고 있다. 최근 인터넷 및 모바일을 통해 접하게 되는 데이터 양은 급격하게 늘어나고 있고 기존 파일 시스템, DBMS 와 같은 저장 및 관리 기술 만으로 이를 처리하기에 많은 부담이 있다. 1970~1980 년대 개발되었던 관계형 DBMS 를 사용하고 있다 보니 2000~2020 년 대의 시대 환경에 미치지 못하여 예기치 못한 문제점들이 도출되고 있다. 이에 2000년대 초 새로운 데이터 저장 관리 기술이 등장하는데 이를 NoSQL 이라고 한다. 기존 관계형 DBMS는 클라이언트/서버 플랫폼을 기반으로 한다면 NoSQL은 클라우드 컴퓨팅과 클라이언트/서버 플랫폼 모두를 기반으로 한다는 점이 가장 큰..
2023.12.06