우연찮게 알게 된 NoSQL 이.

SSD에 최적화 되어 있으며 기존 NoSQL에 비해 10배의 성능 향상이 있다고 한다.

그리고 In-Memory 타입으로도 사용 가능해서 Redis 대신으로 사용 가능하다.

 

공식 사이트: http://www.aerospike.com/

 

일반적인 NoSQL형 데이터베이스의 10, SQL형 데이터베이스의 100배 성능을 실현.

 

Aerospike는 인 메모리형 실시간 NoSQL데이터베이스. RAM 상에 인덱스를 SSD상에 데이터를 배치하는 유연성 높은 인 메모리 기술을 가지고 있으며, 대규모 데이터를 실시간으로 고속으로 처리할 수 있다.

 

확장성도 높고, ACID 지원과 다운 타임 제로라는 특징도 있다.

 

서버 측은 하이브리드형 메모리 시스템과 실시간 엔진을 바탕으로 그 위에서 스마트 클러스터와 데이터 센터 레플리케이션 기능이 동작한다. 노드를 추가하면 자동으로 데이터의 재배치와 부하 분산이 행해져 샤딩이나 수동으로 조작과 설정을 할 필요가 없다.

복수의 데이터 센터를 사용한 클러스터 구축도 가능.

서버 측 모니터링 시스템도 제공.

 

소스 코드도 공개 되어 있다. 공개된 것은 Aerospike Community Edition(CE)판 버전 3.3.5.

서버 및 클라이언트의 양쪽 모두의 코드가 공개되어 있다.

라이센스는 서버 측이 GNU AGPL, 클라이언트 측이 Apache License 2.

기술 지원이 추가된 Enterprise Edition도 있다.

 

 

특징

Key Value Store

OSS

CAP 정리에서 AP

AWS에서는 AMI도 있음.

SSD 최적화

기존 KVS 보다 10배 빠르다

SSD & 메모리 뿐만이 아닌, 메모리만, 메모리&디스크 타입도 있다.

현재 광고업계에서 다수 사용 사례가 있다.




 

아키텍처 중 일부

스키마 레스

RDBMS에 비교하면

database=namespace

table=set

row=record

colum=bin

병렬 지향의 데이터 층을 가지고 있다.

Partition

데이터는 클러스터 내에 4096의 파티션으로 분할 되어 골고루 배치.

예를 들어 노드 4개이면 1 노드에 1024의 파티션이 존재.

데이터의 액세스는? 가용성은?

대부분의 상황에서 데이터에 접속을 1 홉임을 보증.

파티션 정보를 항상 클라이언트 측에 보냅니다. 이 정보를 파티션 맵이라고 부른다.

1대 서버가 고장 나서 마스타 데이터가 없어진 경우, 레플리카 데이터의 위치를 파티션 맵에서 산출할 수 있다.

 

 

SSD & Memory형 이용

키 자체는 메모리에도 SSD에도 저장되지 않는다.

키는 해시화 되어 1 레코드 64 바이트의 인덱스로 메모리 상에 보존

요컨대 Memory 사용량은(레코드 수 * 64바이트)이므로 Memory는 설계하기 쉽다.

애매한 HWM(HighWaterMark). default 60%로 이것을 넘는 것은 소프트웨어적으로 성능을 보장하지 않는다. 넘으면 낡은 것을 지워 나간다. 낡은 것을 지워서라도 계속 동작하려고 한다.

넘어서는 안 될 SW(StopWrite). 넘었을 경우 이후 기록할 수 없다. ReadOnly 상태.

 

 

지원 OS

현재 리눅스 플랫폼만 지원한다.

 

클라이언트 라이브러리 언어

Java, C#, C, Go, PHP, Python, Ruby, Perl, Erlang, Node.js

 

Redis vs Aerospike

http://www.slideshare.net/sunilvirus/redis-vs-aerospike

 

Aerospike on Amazon EC2에서 100 TPS를 단 1.68 달라/시 로 실현하는 방법

http://highscalability.com/blog/2014/8/18/1-aerospike-server-x-1-amazon-ec2-instance-1-million-tps-for.html

 

라이센스

오픈소스와 상업용 두 가지 버전이 있음.

오픈소스용을 사용할 때는 사용한 소스를 공개해야 한다(즉 오픈소스 프로젝트에 사용에 적합)

http://www.aerospike.com/products-services/

 

 

 

 

저작자 표시
신고
by 흥배 2015.01.29 08:00
| 1 |