샹

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

· 2012-06-12 (화) 14:45:28 · 5490 · 5
NoSql cassandra 사용해 부신분 댓글좀 부탁 드립니다.

|

댓글 5개

2012-06-12 (화) 20:16:39
얼마전 몽고디비 추천했던 사람입니다.

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에 대한 기초 지식 자체가 없어서
걱정이 많이 됩니다.
2012-06-13 (수) 16:58:32
우선 카산드라 지원하는 드라이버 설치하시고
디비 설계 이런거 안하셔도 됩니다;;
물론 초기 설계가 중요하긴 한데 어짜피 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할 줄 아신다면 더더욱이 필요없을 듯 하군요;;
2012-06-18 (월) 20:22:27
mysql 에 익숙하다면, mysql + nosql(memcached) api 를 추천드립니다.
cassandra라.. 요즘은 정말 날이 갈수록 새로운게 나와는군요.. ㅠㅠ
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
12-06-21 조회 3,772
12-06-21 조회 3,337
12-06-20 조회 3,500
12-06-20 조회 3,928
12-06-20 조회 3,165
12-06-20 조회 4,465
12-06-20 조회 3,133
12-06-20 조회 3,073
12-06-20 조회 3,888
12-06-20 조회 3,987
12-06-18 조회 4,625
12-06-18 조회 3,301
12-06-18 조회 3,424
12-06-18 조회 3,230
12-06-18 조회 3,958
12-06-18 조회 4,616
12-06-17 조회 3,722
12-06-17 조회 3,778
12-06-17 조회 3,390
12-06-16 조회 3,183
12-06-15 조회 3,006
12-06-15 조회 3,640
12-06-15 조회 4,459
12-06-15 조회 4,211
12-06-14 조회 3,848
12-06-14 조회 3,866
12-06-14 조회 2,936
12-06-14 조회 3,334
12-06-14 조회 4,662
12-06-14 조회 3,068
12-06-14 조회 2,997
12-06-13 조회 7,229
12-06-13 조회 3,508
12-06-12 조회 5,491
12-06-11 조회 3,331
12-06-11 조회 3,374
12-06-11 조회 3,373
12-06-11 조회 3,289
12-06-11 조회 3,875
12-06-11 조회 3,168
12-06-08 조회 3,223
12-06-08 조회 4,613
12-06-08 조회 3,018
12-06-08 조회 4,803
12-06-08 조회 3,805
12-06-08 조회 3,333
12-06-08 조회 3,305
12-06-08 조회 4,309
12-06-08 조회 2,937
12-06-08 조회 3,624
12-06-07 조회 3,893
12-06-07 조회 3,785
12-06-06 조회 3,186
12-06-06 조회 3,273
12-06-06 조회 3,561
12-06-06 조회 6,132
12-06-06 조회 5,792
12-06-06 조회 6,467
12-06-05 조회 5,644
12-06-05 조회 3,085
12-06-05 조회 3,129
12-06-05 조회 3,138
12-06-05 조회 1.2만
12-06-05 조회 4,728
12-06-05 조회 5,315
12-06-05 조회 5,098
12-06-05 조회 5,462
12-06-05 조회 3,277
12-06-05 조회 3,347
12-06-05 조회 7,197
12-06-04 조회 3,160
12-06-04 조회 3,994
12-06-04 조회 3,697
12-06-04 조회 3,806
12-06-03 조회 3,651
12-06-02 조회 3,072
12-06-02 조회 3,810
12-06-01 조회 3,213
12-06-01 조회 3,950
12-06-01 조회 3,538
12-06-01 조회 3,199
12-06-01 조회 4,635
12-06-01 조회 3,555
12-06-01 조회 3,151
12-05-31 조회 4,840
12-05-31 조회 3,653
12-05-31 조회 3,620
12-05-31 조회 3,601
12-05-31 조회 3,434
12-05-30 조회 3,006
12-05-30 조회 3,108
12-05-30 조회 3,955
12-05-30 조회 3,197
12-05-29 조회 4,360
12-05-29 조회 3,695
12-05-28 조회 3,050
12-05-28 조회 6,473
12-05-28 조회 3,122
12-05-27 조회 4,438
12-05-27 조회 3,726