728x90

DB 44

Redis 란?_Key/value 규칙

개요 Redis는 Key/Value 형식이다 보니 Key에서도 일정한 규칙을 가지고 사용을 합니다. 물론 다른 DB도 일정한 규칙이 있지만 Redis에서 사용하면 좋은 규칙을 권장 하고 있습니다. Key Redis 키는 바이너리 안전합니다. "foo"와 같은 문자열에서 JPEG 파일의 콘텐츠에 이르기까지 모든 바이너리 시퀀스를 키로 사용할 수 있습니다. 빈 문자열도 유효한 키입니다. Key 규칙 매우 긴 키는 좋은 생각이 아닙니다. 예를 들어 1024바이트의 키는 메모리 측면에서 뿐만 아니라 데이터 세트에서 키를 조회하려면 비용이 많이 드는 몇 가지 키 비교가 필요할 수 있기 때문에 좋지 않습니다. 당면한 작업이 큰 값의 존재를 일치시키는 것일지라도 이를 해싱(예: SHA1 사용)하는 것이 특히 메모리와..

DB 2023.04.16

Redis 란?_기본 정보

개요 내가 아는 Redis특징은 Redis를 Key - Value 형식이다. 속도가 매우 빠르다 Queue와 같은 특징을 가졌다 정도로만 알고있다. 하지만 이 정도만 알고 Redis를 바로 개발에 적용하기에 부족한 지식이 많다. 내가 아는 지식에도 틀린 정보도 있을수도 있고 비슷하게 이해 하고 있는 지식도 있기 때문이다. 그래서 기본적인 Redis 정보를 정리 할려고 한다. 참고 (Redis Document)[https://redis.io/docs/] (Redis 명령어)[https://redis.io/commands/] (https://sudo-minz.tistory.com/101)[https://sudo-minz.tistory.com/101]%5Bhttps://sudo-minz.tistory.com/..

DB 2023.04.16

데이터베이스 트랜잭션(Transaction) 이란?

트랜잭션이란? 데이터 베이스의 상태를 변화시키기 위해서 수행하는 작업의 단위를 뜻한다. 이론적으로 데이터베이스 시스템은 각각의 트랜잭션에 대해 원자성(Atomicity), 일관성(Consistency), 독립성(Isolation), 영구성(Durability)을 보장한다. (ACID) 하지만, 실제로는 성능 향상을 위해 이런 특성들이 종종 완화되곤 한다. 트랜잭션 설정을 하지 않으면 SQL문 하나에 트랜잭션이 설정된다. 예) 홍길동 - 900원 -> 김국밥 READ(홍길동 잔액) 이름 잔액 홍길동 1000 김천사 500 UPDATE(김국밥 잔액) = 김국밥 잔액 + 900 이름 잔액 홍길동 1000 김천사 1400 UPDATE(홍길동 잔액) = 홍길동 잔액 - 900 이름 잔액 홍길동 100 김천사 14..

DB 2023.04.15

Connection Pool

Connection Pool이란 무엇일까요? Connection Pool은 데이터베이스로의 추가 요청이 필요할 때 연결을 재사용할 수 있도록 관리되는 데이터베이스 연결의 캐시입니다. 이를 사용하면 각 사용자가 데이터베이스 연결을 열고 유지보수하는 것보다 비용과 자원을 절약할 수 있습니다. Connection Pool은 데이터베이스와 연결된 Connection을 미리 만들어서 Pool 속에 저장해두고, 필요할 때마다 Connection을 Pool에서 가져다 쓰고 다시 Pool에 반환하는 기법입니다. 이를 통해 데이터베이스에 부하를 줄이고 유동적으로 연결을 관리할 수 있습니다. Connection Pool의 크기는 적절히 조정해야 합니다. 크기를 너무 크게 설정하면 메모리 소모가 커지고, 너무 작게 설정하면..

DB 2023.04.15
728x90