cassandra 사용해 보신분 있으신가요? > 자유게시판

자유게시판

cassandra 사용해 보신분 있으신가요? 정보

cassandra 사용해 보신분 있으신가요?

본문

NoSql cassandra 사용해 부신분 댓글좀 부탁 드립니다.

추천
0

댓글 5개

얼마전 몽고디비 추천했던 사람입니다.

mongodb는 쿼리가 없기 때문에 where문은 안되지만
php로 사용하실 경우 restful한 method를 지원합니다.
find나 where이라는 mongo driver class안에 함수들이 있는데,
where문의 기능을 합니다.

이것에 대해서는 SQL작성에 익숙해져있으시다면 굉장히 난해할 수도 있는 개념입니다.

SQL로 연산도 안되고 SQL자체가 안먹히기 때문에 통계를 내기 위해서는 전문적인 SQL 쿼리분석가가 필요한 것이 아니라, python이나 ruby로 간단한 백앤드단에서 처리하는 프로그램을 만들 줄 아는 개발자가 해야 한다는 단점이 있습니다. (적합한 것은 역시 댓글이나 SNS형 데이타에 적합하겠죠)

카산드라는 최근 버전에 SQL이 들어가있더군요. SQL이 가능한 것으로 알고 잇으나 RDBMS 처럼 디비안에서 연산은 불가능합니다.

noSQL은 접근 방식이 조금 다릅니다. RDBMS는 realtime에 적합한 반면, noSQL은 안정적인 트랜젝션을 기반으로 정확한 정보에 적합합니다.

물론 insert속도는 쌓이는 row에 따라서 nosql이 더 빠르다는 것은 익히 알려진 사실이기 때문에 많이 선택하는 이유가 되기도 합니다.

mongo를 추천하는 이유는 replication이 간단한 설정으로 확장성이 뛰어나기 때문입니다.
물론 카산드라는 시스템 특성을 타지 않는 안정적인 자바 기반이라는 장점이 있긴 합니다만, 처음 nosql을 접근하시는 경우 조금 난해하실수도 있기 때문에 선택에 조금 신중을 기하셔야 합니다.
noSQL을 검토하는 이유는 단시간에 너무 커지는 대용량DB 때문에
쿼리속도가 점점 느려지고 있기 때문입니다.
cassandra를 검토하는 이유는 cassandra는 SQL문을 일부 지원 하기
때문입니다. 그런데, 초기 설계를 어떻게 해야할지 도무지 모르겠습니다.
noSQL은 초기 설계가 정말 중요하다고 하는데 사용하셨다는분이 없어서..
RDBMS와 noSQL을 비교할때 대용량 DB에서 noSQL이 빠를까요?
제가 Python은 다룰줄 알기 때문에 Python을 이용한 처리방법이 있다면
가능할 것 같은데, 뭘 어떻게 해야하는지 noSQL에 대한 기초 지식 자체가 없어서
걱정이 많이 됩니다.
우선 카산드라 지원하는 드라이버 설치하시고
디비 설계 이런거 안하셔도 됩니다;;
물론 초기 설계가 중요하긴 한데  어짜피 json과 유사한 형태로 저장되기 때문에 프로그램을 할 줄 아시면 쉽게 마이그레이션도 됩니다.
저는 루비를 할 줄알기에
루비로 설명드리면

@object = new Model
@object = { name: "test", user: "1212" }
@object.save

이런식으로 하게 되면 name = test user = 1212라고 들어갑니다.
꺼낼때는
@object.find(:all,
                  :conditions => "name = test")
이런 SQL에서 select *from models where name='test'와 같은 구문이 됩니다.



속도는 대용량에서 noSQL이 빠릅니다. 검색 부분은 인덱싱과 여분의 메모리 풀으로 무장된 RDBMS와 유사하겠지만 Insert에서 확실한 속도 차이가 납니다.

데이타베이스가 서버단으로 커지게 되면 replication을 설정으로 지원하기 때문에 확장성이 좋고, 각 서버가 가지는 정보가 나눠져서 저장되기 때문에 바쁜 디비 서버는 질의를 보류하고 여유있는 디비 서버가 대답하게 됩니다.

물론 RDBMS도 이것이 가능하지만,
이걸 구현하려면 proxy기능과 함께 디비 load를 체크하는 프로그램 등등을 개발해야겠죠.
솔루션이 있긴합니다. 오라클은 이것 역시 지원하고 있구요. 하지만 비싸죠 -_-;;

여담이지만
noSQL에 익숙해지시면 SQL이 필요가 없습니다.
python할 줄 아신다면 더더욱이 필요없을 듯 하군요;;
전체 9 |RSS
자유게시판 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT