Computer >> 컴퓨터 >  >> 프로그래밍 >> Redis

Redis 마스터하기:인메모리 데이터베이스 가이드

인메모리 데이터베이스란 무엇인가요?

인메모리 데이터베이스는 주로 컴퓨터 데이터 저장을 위해 메인 메모리에 의존하는 데이터베이스 관리 시스템입니다. 디스크 액세스가 메모리 액세스보다 느리기 때문에 메모리 내 데이터베이스는 디스크 최적화 데이터베이스보다 빠릅니다. 메모리의 데이터에 액세스하면 데이터를 쿼리할 때 탐색 시간이 없어져 디스크보다 더 빠르고 예측 가능한 성능을 제공합니다. 다양한 라이센스로 사용할 수 있는 인메모리 데이터베이스가 많이 있습니다. 이 기사에서는 잘 알려진 오픈 소스 인메모리 데이터베이스 중 하나인 Redis에 대해 설명합니다. Redis를 시작하기 전에 먼저 인메모리 데이터베이스 사용의 주요 이점 중 일부를 살펴보겠습니다.

인메모리 데이터베이스의 장점

  • 인메모리 데이터베이스는 빅데이터 관리에 도움이 됩니다
  • 실시간 업데이트를 통해 기업은 발생하는 데이터에 액세스할 수 있습니다.
  • 매우 빠른 데이터 액세스, 저장 및 조작을 허용하는 애플리케이션과 함께 사용됩니다.
  • 인메모리 데이터베이스는 더 빠른 쿼리 응답 시간을 촉진할 뿐만 아니라 동시에 데이터 인덱싱의 필요성을 줄이거나 완전히 제거하고 OLAP 큐브 또는 집계 테이블에 사전 집계된 데이터를 저장합니다.

레디스

Redis는 선택적 내구성을 갖춘 분산형 인메모리 키-값 저장소를 구현하는 오픈 소스 인메모리 데이터베이스 프로젝트입니다. Redis는 문자열, 목록, 맵, 세트, ​​정렬된 세트, 하이퍼로그, 비트맵 및 공간 인덱스와 같은 다양한 종류의 추상 데이터 구조를 지원합니다. 자세한 내용은 Redis 인메모리 데이터베이스를 참조하세요.

애플리케이션에서 Redis 인메모리 데이터베이스를 사용하려면 먼저 Redis 데이터베이스를 설치해야 합니다. 여기에서 다운로드할 수 있습니다. Redis In-Memory 데이터베이스의 최신 버전을 다운로드하세요. 설치 준비가 완료되면 간단한 콘솔 애플리케이션 하나를 만들어 어떻게 작동하는지 살펴보겠습니다.

1단계.  Visual Studio를 엽니다. 여기서는 Microsoft Visual Studio 2015 Community Edition을 사용하고 있습니다. 파일 - 새로 만들기 - 프로젝트를 클릭합니다. 여기에서는 데모 목적으로 콘솔 애플리케이션을 만들고 있습니다.

Redis 마스터하기:인메모리 데이터베이스 가이드

2단계.  Redis에 연결하려면 먼저 Nuget 패키지에서 Redis 클라이언트를 다운로드해야 합니다. 솔루션 탐색기에서 참조를 마우스 오른쪽 버튼으로 클릭하고 NuGet 패키지 관리를 클릭합니다. ServiceStack.Redis.Complete를 찾아보면 NuGet 패키지 관리자가 열립니다. 설치를 클릭하세요.

Redis 마스터하기:인메모리 데이터베이스 가이드

3단계. 이제 Redis 환경이 준비되었으므로 몇 가지 코드를 작성해 보겠습니다. 여기서는 Redis DB에 값을 삽입하는 함수와 DB에서 값을 읽는 함수 등 두 개의 정적 함수를 생성합니다.

Redis 데이터베이스에 데이터를 저장하기 위해 아래 코드를 사용하고 있습니다.

///<summary>
///ToSaveKeyValuePairinRedisDB
///</summary>
///<paramname="host">RedisHostName</param>
///<paramname="key">Keyasstring</param>
///<paramname="value">Valueasstring</param>
///<returns></returns>
privatestaticboolSave(stringhost,stringkey,stringvalue)
{
using(varobjRedisClient=newRedisClient(host))
{
if(objRedisClient.Get<string>(key)==null)
{
returnobjRedisClient.Set<String>(key,value);
}
else
{
returnfalse;
}
}
}
///<summary>
///TogetvaluefromRedisDB
///</summary>
///<paramname="host">RedisHostName</param>
///<paramname="key">Keyasstring</param>
///<returns></returns>
privatestaticstringGet(stringhost,stringkey)
{
using(varobjRedisClient=newRedisClient(host))
{
returnobjRedisClient.Get<String>(key);
}
}

다음 두 함수를 호출하여 이를 테스트하겠습니다:

staticvoidMain(string[]args)
{
Save("localhost","Key1","Value1");
varresult=Get("localhost","Key1");
}

이 코드를 디버그했을 때의 결과는 다음과 같습니다

Redis 마스터하기:인메모리 데이터베이스 가이드

결론

이 기사에서는 Redis 인메모리 데이터베이스의 기본 구현을 살펴보았습니다. 이 기사에 첨부된 샘플 애플리케이션 소스 코드를 다운로드할 수 있습니다. 이 기사를 재미있게 읽으셨기를 바랍니다. 계속 읽어보시고 귀중한 피드백을 게시하는 것을 잊지 마세요.