NoSQL 41

JBoss Infinispan 온라인 웨비나 내용 노트

전준식 이사님의 Infinispan 강의 내용 요약 정리 In Memory Data Grid - Infinispan(JBoss Data Grid) Webinar from Opennaru on Vimeo. [Cosistent hashing]- Hash Ring 형태로 저장- 서버가 늘어나고 줄어드는 것에 대해서 대응이 가능한 구조1번은 0번부터2번은 27번부터3번은 50번부터의 해쉬 값을 저장함. 장애 대응예를 들어, 2번이 죽으면 1번이 0~49번까지 보관함복제는, 다른 서버에다가도 값을 복제 해놓음. 이 알고리즘을 이용하면, memcached 등을 이용해서도 고가용 서버를 만들 수 있음 Segment(Replica,Virtual node)- Hash ring에 가상의 노드를 만들어서, 특정 서버에 값이..

CouchDB 강의 내용 정리

CouchDB Overview 어제 SSAG 에서 정명훈 이사가 강의한 CouchDB에 대한 내용 정리 CouchDB 일반 특징CouchDB Apache 프로젝트로 MongoDB와 같은 Document DB의 형태를 띄며, NOSQL CAP이론중 AP 에 해당 한다. (장애에 매우 강하다.) 단 Consistency는 Eventual Consistency를 제공한다. (버전으로 하는 방식), Eventual Consistency 모델이기 때문에 Locking을 사용하지 않는다. (Optimistic Lock) 유사 프로젝트유사 프로젝트로 CouchBase와 BigCouch, Cloudant등이 있다.CouchBase는 memcached와 CouchDB를 합쳐놓은 제품으로, 앞단에 캐쉬가 있어서 성능이 매..

In memory dictionary Redis 소개

redis Introduction IntroRedis는 "REmote DIctionary System"의 약자로 메모리 기반의 Key/Value Store 이다.Cassandra나 HBase와 같이 NoSQL DBMS로 분류되기도 하고, memcached와 같은 In memory 솔루션으로 분리되기도 한다.성능은 memcached에 버금가면서 다양한 데이타 구조체를 지원함으로써 Message Queue, Shared memory, Remote Dictionary 용도로도 사용될 수 있으며, 이런 이유로 인스탄트그램, 네이버 재팬의 LINE 메신져 서비스, StackOverflow,Blizzard,digg 등 여러 소셜 서비스에 널리 사용되고 있다.BSD 라이센스 기반의 오픈 소스이며 최근 VMWare에 ..

MongoDB의 Physical 데이타 저장 구조

MongoDB를 구성할때 보면, 가장 많이 권장 받는 부분 중의 하나가, 메모리량과 디스크 성능이다.메모리 크기가 아주 sensitive한 요인이 되는데, 어떤 부분이 문제가 되는지 내부 저장 구조를 살펴 봄으로써 이해를 돕고자 한다. 저장 구조mongodb는 기본적으로 memory mapped file (OS에서 제공되는 mmap을 사용) 을 사용한다. mongodb는 데이타를 write할때, 논리적으로 memory 공간에 write하고, 일정 주기에 따라서, 이 메모리 block들을 주기적으로 disk로 write하는데, 이 디스크 writing 작업은 OS에 의해서 이루어 진다. OS에 의해서 제공되는 Virtual Memory를 사용하게 되는데, Pysical Memory 양이 작더라도 Virtu..

MongoDB 30분만에 이해하기.. (설치,테스트 및 자바 샘플)

초간단 Mongo DB Quick Start Guide 조대협 (http://bcho.tistory.com) Mongo DB는 NoSQL 중에서 가장 널리 사용되는 인기있는 제품이다. 사용과 운영이 다른 시스템에 비해서 매우 쉽고, JSON 기반의 Document를 제공하기 때문에, 데이타 구조에 대한 이해 및 사용이 쉽다. 또한 index나 search와 같은 feature를 제공하고 있고, 근래에는 Text Search와 GridFS를 이용한 파일 저장 그리고, 위치 정보 저장 및 쿼리등 다양한 기능을 제공하고 있다. Mongo DB는 10gen이라는 회사에서 개발되어서, 현재 오픈소스로와 상용 버전으로 공급되고 있다. 이 글에서는 Mongo DB에 대한 이해를 돕기 위해서 간단한 설치에서 부터, 자..

NoSQL 인기 순위

미국의 NoSQL 인기 순위를 분석해보니, mongodb가 앞도적인 1위, 2위권은 cassandra,hbase 그리고 다음이 redis 맨 아래로 riak,couchdb 등이 있다.아무래도 기능이 편리한 mongodb 가 단연 인기고, 난이도는 있지만 확장성에 우위가 있는 cassandra,hbase가 그 뒤를 따른다. 분석 방법은 indeed.com 이나 monster.com의 구인 광고중, 해당 기술별 구인 광고를 분석하였다. mongodb 276cassandra 149hbase 146redis 91coherence 53couchdb 40riak 24

NoSQL 데이타 모델링 #2- 데이타 모델링 패턴

NoSQL 데이타 모델링 #2Facebook Server Side Architecture Group http://www.facebook.com/groups/serverside 조대협NoSQL 데이타 모델링 패턴 NoSQL 데이타 모델링 패턴[1]은 Key/Value 저장 구조에 Put/Get 밖에 없는 단순한 DBMS에 대해서 다양한 형태의 Query를 지원하기 위한 테이블을 디자인하기 위한 가이드 이다. 특히 RDBMS에는 있는 “ Order by를 이용한 Sorting, group by를 이용한 Grouping, Join등을 이용한 개체간의 relationship 정의, 그리고 Index 기능” 들을 데이타를 쿼리하는데, 상당히 유용한 기능인데, NoSQL은 이러한 기능들을 가지고 있지 않기 때문에,..

NoSQL 데이타 모델링 #1-데이타모델과, 모델링 절차

NoSQL 데이타 모델링 #1Facebook Server Side Architecture Group http://www.facebook.com/groups/serverside 조대협빅데이타,클라우드,NoSQL은 요즘 기술적인 화두중에 하나이다. 그중에서도 NoSQL은 많은 사람이 관심을 갖고 있음에도 불구하고, 기존의 RDBMS 데이타 모델링 관점에서 접근을 하기 때문에, 많은 문제를 유발한다. NoSQL은 데이타 베이스이기도 하지만 RDBMS와는 전혀 다른 성격을 가지고 있고, 접근 방식도 틀리다. 특히 테이블 구조를 정의 하는 데이타 모델에 따라서 NoSQL의 성능은 하늘과 땅차이만큼 차이가 난다. 이 글에서는 NoSQL의 데이타 모델링 기법에 대해서 소개하고자 한다.※ 깨지는 그림은 클릭해서 봐주세..

대용량 시스템 레퍼런스 디자인

대용량 시스템 레퍼런스 디자인 SSAG - Face book Server Side Architecture Grouphttp://www.facebook.com/groups/serverside조대협 (bwcho75 골뱅이 지메일닷컴) I. 배경웹로직,JBOSS 가 유행이던, J2EE 시대만 하더라도, 웹서버+WAS+RDBMS면 대부분의 업무 시스템을 구현할 수 있었다. 오픈소스가 유행하면서 부터는 프레임웍 수는 다소 많기는 했지만 Spring,IBatis or Hibernate,Struts 정도면 대부분 구현이 가능했다.그러나 근래 수년 동안 벤더 중심에서 오픈소스 중심에서 기술의 중심이 구글,페이스북이 주도하는 B2C 기반의 서비스의 유행과 더불어 대규모 분산 시스템을 위한 대용량 아키텍쳐가 유행하게 되었..

도대체 왜? 클라우드,Hadoop,NoSQL에 열광하는가?

클라우드 컴퓨팅, Hadoop, NoSQL 새로운 기술이고 구글이나 FaceBook과 같은 B2C의 선두 업체들이 주로 사용하는 기술이다. 그런데, 왜 우리도 이 기술에 열광하는가?재미는 있고, 쓸모는 있는 기술이다. 그런데 필요가 있나? 한번 더 생각해볼 필요가 있다. 첫번째 HadoopHadoop의 경우 대용량 데이타를 배치성으로 처리하기 위한 분산 처리 프레임웍이다.여러가지 사용 용도가 있을 수 있겠지만, 주로 대용량 데이타를 분석하기 위해서 사용된다.이런 형태의 데이타 분석은 이미 OLAP이나 BI형태로 솔루션들이 제공되고 있고, 기업에서는 이미 구축되어 있다. 구글이나 페이스북과 같은 대규모 서비스를 한다면 모를까? 5000만 인구의 대한민국에서는 그만한 데이타 분석이 필요할까 과연 의문이다.물..