가트너가 발표한 2012 10대 전략 기술 트렌드를 보면 빅데이터와 인-메모리 컴퓨팅이 나란히 나열되어 있습니다-메모리 기술은 빅데이터 시대에 데이터 처리 속도를 향상시킬 수 있는 핵심 기술입니다.

 

-메모리 컴퓨팅

64비트 범용 서버의 활용 확산메모리 가격의 하락 등 하드웨어의 발전과 실시간성을 요구하는 응용 분야의 확대로 인하여 인-메모리 컴퓨팅 기술에 대한 관심이 높아지고 있습니다.

 

-메모리 컴퓨팅 기술은 응용 서비스의 클라우드화모바일화글로벌화로 인하여 발생하는 익스트림 트랜잭션(Extreme transaction)의 고성능 처리를 지원하기 위한 기반 기술로 활용이 확대되고 있습니다익스트림 트랜잭션 처리는 빅데이터와 같이 예외적으로 많은 트랜잭션을 처리하는 것을 의미합니다또한 빅데이터를 효과적으로 분석하기 위해서 실시간성을 제공하기 위한 기반 플랫폼으로 활용이 될 전망입니다.

 

익스트림 트랜잭션 처리 환경에서 서비스 제공을 위해 활용되는 데이터 또는 서비스 중에 생성되는 데이터들은 그 양이 많고생성 속도가 매우 빠릅니다따라서대규모 데이터에 대해 익스트림 트랜잭션 처리를 지원하기 위해서는 고성능 컴퓨터 기술뿐만 아니라 인-메모리 컴퓨팅 기술과의 연계가 필요합니다어떤 일을 하는데 있어서 최고의 성과를 얻기 위해서는 적절한 시점즉 실시간성이 매우 중요합니다빅데이터를 활용하는 데 있어서도 적시성(실시간성확보가 매우 중요합니다.

 

-메모리 컴퓨팅(In-Memory Computing)이란 애플리케이션이 운영을 위한 데이터를 하드 디스크가 아닌 메인 메모리에 모두 올려서 서비스를 수행하는 것을 말합니다연산을 위한 영역으로만 여겨졌던 메모리 영역을 대량의 데이터를 저장하여 처리할 수 있는 공간으로 사용하는 것입니다예전에는 메인 메모리(Main Memory) 가격이 높아서 불가능하였지만지금은 가격의 하락으로 가능하게 된 기술입니다.

 

트랜잭션 처리 분야의 거장인 짐 그레이는 2006년 워싱턴의 레드먼드에서 열린 한 학술행사에서 하드 디스크가 데이터 백업을 위한 역할을 하게 되고(RAM)이 운영 데이터 저장 관리에 사용되는 인-메모리 컴퓨팅이 보편화될 것을 예견했습니다.

 

 

-메모리 컴퓨팅 기술의 분류

-메모리 컴퓨팅 기술은 인-메모리 응용 플랫폼(In-Memory Application Platform), -메모리 데이터 관리(In-Memory Data Management), -메모리 메시징(In-Memory Messaging) 3가지로 분류할 수 있습니다현재 인-메모리 컴퓨팅 기술을 활발하게 활용하려는 곳은 데이터 관리 분야로 데이터베이스 관리 서비스를 제공하는 인-메모리 데이터베이스 관리 시스템(In-Memory DBMS)과 분산 환경에서 응용의 성능을 높일 수 있는 분산 캐시층을 제공하는 인-메모리 데이터 그리드(In-Memory Data Grid)가 있습니다.

 

 

-메모리 DBMS 방식이 정말 유용한가?

 

-메모리 DBMS는 메인 메모리에 레코드들을 저장한다는 것이 기존의 디스크  DBMS 방식과 가장 큰 차이점이라고 할 수 있습니다이러한 차이점으로 디스크  DBMS와의 커다란 성능 차이를 가져오게 된 것입니다.


디스크 DBMS와 인-메모리 DBMS의 차이 ]



상단 그림을 보시면 디스크 DBMS의 경우 디스크에 저장된 내용을 메인 메모리로 로딩을 해야 하며 실행을 위해서는 CPU로 해당 데이터를 재 전송해야 합니다이에 반해서 인-메모리 DBMS는 메인 메모리에서 바로 CPU로 데이터를 전송만 하면 되므로 구조상으로 간단합니다.

 

하지만 메모리 액세스가 디스크 액세스보다 훨씬 빠르다는 것은 전혀 새로운 사실은 아닙니다기존의 DBMS들도 이러한 문제점을 캐시(Cache)를 통해 해결하고 있습니다자주 사용되는 레코드들은 캐싱을 통해 미리 메모리에 넣어두어서 디스크를 통한 입-출력에서 발생하는 속도 저하 문제를 해결한 것입니다이를 생각한다면 인-메모리는 기존 방식보다 얼마나 빠른가 하는 의문을 가지게 됩니다.

 

결론적으로 말하자면 디스크 DBMS와 인-메모리 DBMS의 작동 방식이 서로 다릅니다캐싱을 통한다고 해도 설계상의 차이점으로 성능상의 차이가 발생합니다디스크 컴퓨터는 태생적으로 읽고 쓰기 위해서는 반드시 디스크를 이용해야 되는 것입니다.

 

 

-메모리 DBMS의 접근 방식

요즘 거론되고 있는 인-메모리 데이터베이스의 양대 산맥인 SAP와 오라클의 메모리 접근 방식에는 차이점이 있습니다먼저 SAP는 모든 디스크를 없애고 메모리 상에 데이터베이스를 상주 시켜 속도를 향상시켰습니다이로 인하여 DRAM의 용량이 매우 크고 가격 또한 비쌉니다.

 

오라클은 디스크가 아닌 플래쉬 메모리에 저장해 접근 속도를 높이고 있습니다. SAP는 메인 메모리에서 모든 것을 처리하는 반면오라클은 보조 기억장치 활용을 극대화 하는 방향으로 가고 있습니다래리 엘리슨 오라클 CEO는 미국 샌프란시스코 모스콘센터에서 개최된 오라클 오픈월드 2013’ 행사에서 애플리케이션의 수정업로드 등이 없이 단지 옵션을 켜는 것만으로도 쿼리를 백배 이상 OLTP 속도를 두배 이상 높일 수 있다” 고 자신들의 인-메모리 방식에 대한 자신감을 내 보였습니다.

 

 

-메모리 DBMS의 단점

-메모리 DBMS의 단점은 안정성이 떨어진다는 것입니다충격에 대한 안전성은 HDD보다 높기 때문에 이 부분을 지적한 것은 아닙니다정전이나 정전기 발생 시 안정성이 크게 떨어진다는 말입니다메인 메모리는 휘발성 주기억장치로정전이나 전력이 끊기면 메모리에 저장된 방대한 데이터가 삽시간에 사라집니다데이터베이스 전체가 살아지는 최악의 경우가 발생할 수 있습니다.

 

이를 방지하기 위해서 백업용 SSD HDD를 구비해서 주기적으로 데이터를 백업 하겠지만 백업된 데이터와 증발된 데이터 사이에는 차이점이 발생할 수 있으며 이 문제는 치명적일 수 있습니다. 

 

+ Recent posts