NoSql
-
Mongo DB - 대량 데이터 Insert 성능 ( feat. mongoengine )NoSql/MongoDB 2021. 11. 24. 16:27
몽고를 제대로 쓰기 시작하면서 몇 가지 알게 될 것들을 정리해보고자 한다. 그 첫 번째 순서... 대량으로 입력할 때 어디까지 얼마나 걸릴까...? 막연하게 기존에 RDB 보다 대량 입력에 뛰어나다고는 알고 있지만 실제로 어느정도까지 수행이 가능할지 테스트해보고자 했다. 분명 환경이나 이런것들이 데이터 이관을 위한 스크립트를 작성하다가 문뜩 기록해보자는 생각이 들어서 작성한 것이기 때문에 완벽한 성능 테스트 구성을 해놓고 했다고 할 순 없다. 일단 환경 조건 자체는 아래와 같다. 1) 몽고 클러스터 : atlas cloud 기반 m10 급 2) 언어 환경 : python , mongoengine 4) select 대상 : AWS RDS 데이터 ( 약 2200만건 ) 중 특정 조건에 해당되는 필터링된 데이..
-
MongoDB ( vs Mysql )NoSql/MongoDB 2021. 4. 8. 15:08
특징 MongDB 는 일반적인 Document 기반의 Nosql 이다. Nosql 을 쓰는 이유는 간단하게는 아래와 같다. - 유연성 -확장성 -고성능 -고가용성 이전에 couchbase 를 사용해봤을때 느낀것이지만 Nosql 에서 뭔가 디테일하고 빡빡한 기능들을 사용한다면 여러가지를 고려했을때 기존 RDBMS 를 사용하는것만큼의 리소스가 소모 된다고 생각한다. 여기서 리소스는 개발기간, 유지보수, 단순 성능등 여러가지를 종합한것을 말한다 비교 기능 비교 mysql 은 데이터베이스를 새로 만들고 그다음 테이블을 생성할때 컬럼과 타입을 명시해 줘야 한다. 하지만 Document 기반인 MongDB 경우 데이터베이스를 새로 만들어주고 collection 을 생성 해주면 사용 준비가 마무리 된다. - mysq..
-
Elaticsearch 시작NoSql/Elasticsearch 2019. 9. 19. 10:14
시작하자 ! ...... 그전에 먼저... 일단 가볍게 도커로 Elaticsearch 를 설치 하였다. 도커의 위대함(?) 을 느낀건 생각보다 아주 손쉽게 사용이 가능했다 이미지를 받아서 사용하면 끝!! ( docker composer 를 사용하였기때문에 설정도 쉬월했다. ) 서비스가 제대로 실행되고 Elaticsearch API 가 잘 동작하는것도 확인했다. 이제 사용에 앞서서 개인적으로 먼저 확인 해야할거 같다고 생각이 든건 딱 세가지였다. 1. document 구성은 어떻게 짜야 하는것인가 ? 2. 내가 너무 RDBMS 스럽게 생각하여 Elaticsearch 스럽지 못하게 오해하고있는 개념은 없는가? 3. 시행착오를 겪는 부분은 대체로 어디인가 ? 바로 구글링을 시작했고 역시나 우려했던 부분 몇가지..
-
Elastic SearchNoSql/Elasticsearch 2019. 9. 4. 12:11
- Elastic Search 회사 내에서 사용할 일이 생겨서 급하게 R&D 를 시작했다. ELK(Elasticsearch, Kibana, Logstash, Beats 을 합쳐서 통칭함) 에 대한 기본 상식이 없으며 Elastic Search 는 써본적도 없는 상태에서 실제 상용서비스를 구축해야 하는 상황이다. 일단 구글링을 하면 대부분 Elastic Search 를 쓰기전에 ELK 스택에 대해서 설명을 한다. 데이터 과학, 흔히 data science 라고 불리는 부분부터 설명을 시작한다. 간단하게 요약하면 어떤 데이터든 수집하고 빠르게 검색하여 보기 좋게 만들수 있어야 한다고 한다. 그리고 ELK 스택을 마스터 할경우 어떤 빅데이터라도 쉽게 개발할수 있다고 한다. 보통 Elastic Search 를 ..
-
CouchBase 사용하기 ( part.1)NoSql/couchbase 2019. 7. 15. 10:27
CouchBase 를 사용 하기 위해선 생각보다 많은 준비가 필요하지 않다 . maven 으로 라이브러리를 추가해주고 클러스터와 버킷을 가져오는 부분을 구현해주면 된다. 기본적으로 카우치 베이스는 비동기식 처리로 진행 된다. 데이터를 넣은뒤 다시 조회시 타이밍에 따라 입력된 데이터가 조회 되지 않을수 있다. 공식사이트에서 sleep 처리로 그런 타이밍을 맞춰줘도 된다는 문장을 본기억이 있는데 일부 개발자들은 그런 방식을 선호 하지 않는경우도 있었다. Async 와 Sync 방식을 전부 지원은 된다고 하지만 확실히 동기식 처리는 제대로 처리 되지 않는거 같고, 얼마전에 카우치베이스에서 한국에 기술 세미나를 열었는데 ( 참가.. 신청했고 참가신청번호 2번이였는데 ㅠㅠ.. 약속된 일정때문에 못갔다 천추의 한...
-
CouchbaseNoSql/couchbase 2019. 5. 3. 09:30
Couchbase ? 난 지독할정도로 RDBMS 만 사용한 개발자다 . 경력의 반은 오라클 나머지는 mysql 과 함께 했다고 해도 될거 같다. 한국특성(?) 이라고할지 다녔던 회사의 특성들이 동일해서 그런지 RDBMS 를 쓰고 있는 회사의 사람들중에는 Nosql 에 대한 혐오(?) 라고 해야할까? 그 영향으로 좀처럼 접하기가 힘들었다. 몇만건되는 데이터들을 인덱스문제때문에 고생하고 트래픽이 몰려 감당하지 못해서 DB 가 먹통 직전까지 가는경우를 봤지만 그때마다 사람을 갈아 넣어서 해결하려만 했지 뭔가 다른 수단을 써볼생각을 하는 DB 팀을 본적이 없는거 같다. 하다못해 mysql 도 5.3 에서 0.1 버전업조차 꺼려하는 수동적인 사람들이 태반이였다. 이제 세상도 바뀌었고 빅데이터가 이미 알만한사람들은..