Database/MongoDB

라이센스 MongoDB 는 MongoDB, Inc 회사에 의해 개발 및 유지보수되는 오픈소스 데이터베이스이다. 기본적인 기능을 모두 오픈 소스로 관리하며 누구든지 별도의 비용 없이 MongoDB 를 사용할 수 있다. 필요할 때에는 직접 소스 코드를 수정하여 MongoDB 를 사용할 수 있다. 별도 비용이 없는 오픈소스 MongoDB 는 커뮤니티 버전이라 부르고 기술 지원과 추가 기능을 사용할 수 있는 유료 라이센스 모델인 프로페셔널과 엔터프라이즈 버전을 제공한다. 그러나 요즘 클라우드 환경의 PAAS 로 인해 언제 라이센스 정책을 변경할지는 잘 모르겠다. 버전 3개의 숫자로 구성된 버전 체계를 제공한다. 7.0.6 버전을 예로들면 앞의 7 은 메이저, 0 은 마이너, 6은 패치버전이다. 마이너 버전에서 ..
NoSQL 에서 스키마? NoSQL 은 스키마라는 개념이 없다. 그래서 NoSQL 인 MongoDB 에서 스키마를 설계한다는 말이 이해가 안 될 수 있다. 우선 RDBMS 와 같은 스키마 개념은 없다고 보는게 맞다. 엄밀이 비유하면 Table 은 Collection , Row 는 Document 로 표현은 가능하지만 그렇다고 스키마를 설계하지는 않는다. 그렇다면 여기에서 말하는 스키마란 무엇일까? MongoDB 스키마 디자인 MongoDB 스키마 디자인은 RDBMS 의 디자인과 많이 다르게 작동한다. 먼저 규칙, 정규화에 대한 개념이 없고 Document 에 Key-Value 구조로 저장된다. 아래 데이터의 경우 RDBMS 라면 정규화를 거쳐 배열데이터를 별도의 테이블/로우로 분리 할 수도 있지만 Mon..
몽고DB 데이터는 유실된다? 얼마전 한 유튜브 강의에서 몽고DB 는 데이터가 유실될 수 있다는(왜?는 말씀하지 않으심) 이야기를 듣고 조금 의아하여 구글링을 조금 해보았다. 그랬더니 많은 블로그에서 데이터 유실이 있다는 부분을 작성하였는데 언제, 얼마나, 왜 발생하는지에 대한 내용은 작성되어 있지 않았다. DB관리자로써 나는 이걸알고 싶은데.. 그래서 한국문서를 넘어 해외문서를 뒤적거리고나서 어느정도 원하는 답을 알게 되었다. 그러나 찾아본 자료가 이분들이 말하는 유실과 같은의미를 담고있는지는 잘 모르겠다. MongoDB 꼬꼬마로써 발견하지 못한 자료가 더 있을지는 모르겠다. 다른점으로도 Memory Map 을 사용하고 주기적으로 flush 하는 동작이기 때문에 이 사이에 발생하는 장애로 인한 유실도 배..
파일별 용도는 다시정리해서 MongoDB 데이터폴더 구조 MongoDB 로그폴더 구조 MongoDB 속성폴더 구조
mongosh 몽고DB 에 접속하는 툴 mongosh 시 SSL 에러 OpenSSL configuration error: digital envelope routines: ... 에러가 발생 openssl3 의 mongosh 로 재설치 sudo yum install mongodb-mongosh-shared-openssl3 mongosh 로 접속 접속 성공
MongoDB 지원 OS MongoDB 는 총 4개의 운영체제를 지원 - Windwos / Linux / Unix Solaries / Mac MongoDB 를 사용하는 대부분의 유저는 90% 가 리눅스 사용 - 빅데이터 처리를 위해서는 많은 수의 머신이 필수적으로 필요 - 운영체제에 대한 비용이 상대적으로 적은 리눅스를 사용 MongoDB 는 메모리 관리를 운영체제에 맡김 - 상대적으로 메모리 관리에 뛰어난 unix 베이스의 운영체제를 선택 MongoDB 지원 언어 지원하는 언어 - Java / Java Script - Perl / PHP / Python - Ruby / Scala / Erlang / Haskell MongoDB 설치방법 AWS Linux 2023 에 설치합니다. https://www.m..
MongoDB 소개 Key Value 와 다르게 여러 용도로 사용이 가능 스키마가 고정되지 않음 - 스키마 변경으로 이슈가 없음 - 데이터를 구조화해서 json 형태로 저장 ( key - value 화 ) 조인이 불가능하기 때문에 조인이 필요없도록 설계 필요 MongoDB 특징 메모리맵 형태의 파일엔진 DB 이기 때문에 메모리에 의존적임 - 메모리 크기가 성능을 좌우 - 메모리를 넘어서는 경우 성능이 급격히 저하됨 쌓기만 하고 삭제가 업는 로직에 적합 - 로그 데이터 - 이벤트 참여 내역 - 세션 왜? 트랜잭션이 필요한 금융, 결제, 빌링, 회원정보등에는 부적합 RDBMS 가 적합 도큐먼트 데이터 모델을 사용 - 속성의 이름과 값으로 이루어진 쌍의 집합 - 속성은 문자열이나 숫자, 날짜 가능 - 배열 또..
꽁담
'Database/MongoDB' 카테고리의 글 목록 (3 Page)