일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- auto configure
- K6
- dynamic query
- MongoDB
- hyperledger
- resilience4j
- c#
- 초대장
- oracle
- 학점
- 파이썬 소스
- JVM
- 백준 알고리즘
- gradle
- SQL
- spring
- 티스토리
- 오라클 디비
- 문법 정리
- jsp
- 리눅스
- smart cast
- 자바
- 운영체제
- 파이썬
- 알고리즘
- 유사코드
- 오라클
- 프로젝트
- 자바 프로젝트
- Today
- Total
목록MongoDB (3)
모종닷컴
MySQL의 경우 flyway를 통해서 데이터 마이그레이션을 진행할 수 있는데 Mongodb의 경우는 데이터 마이그레이션을 하기 위해서는 어떤 라이브러리를 사용할 수 있을까? Mongock 페이지에서 소개하는 간단한 특징 몇 개만 짚어보자면 아래와 같다. 자바 기반 마이그레이션 도구 견고한 락 메커니즘을 이용하기 때문에 분산 환경에서 안정적으로 실행 가능하다. 코드로 마이그레이션 스크립트를 작성할 수 있다. MongoDB 마이그레이션이 가능하며 (자칭) 가장 안정적인 프로덕트 오픈 소스 정기적인 유지보수 Spring과 호환이 좋다. 노란줄만 보더라도 적합해 보이는 툴입니다. MongoDB 마이그레이션으로 가장 많은 스타를 받고 있는 mongobee의 경우 업데이트가 이제는 거의 없는 반면 Mongock은..
Transaction 먼저 트랜잭션이란 연속되는 연산들을 묶은 단위입니다. 이 단위에 정의된 연속된 연산들이 모두 성공해야 트랜잭션이 성공하며, 이 연산들 중 일부가 실패하면 정의된 연산들은 모두 실행되지 않았던 시점으로 다시 돌아가야 합니다. 예를 들어 A가 B에게 M원을 송금하는 것을 트랜젝션으로 정의한다면 아래와 같은 연산들이 포함될 것입니다. A가 B에게 M원을 송금한다 B의 계좌 상태가 유효한지 체크 A의 계좌에서 M원을 차감할 수 있는지 체크 A의 계좌에서 M원을 차감 B의 계좌에 M원을 더한다. 연산이 제대로 이루어졌는지 체크 트랜잭션 완료. 이러한 연산을 실행하는 중 4번 연산(=B의 계좌에 M원을 더하는 연산)에서 이 알 수 없는 오류에 실패하였을 때 A의 계좌에서 M원을 차감했던 것을 ..
atomic counter는 원자성 카운터입니다. 좀 더 쉽게 풀어 설명하자면 동기화된 카운터라고 이해할 수 있을 것 같아요. 카운터는 숫자를 1, 2, 3.. 이런 식으로 숫자를 세는 프로그램입니다. 애플리케이션 내에서는 이 카운터를 다양한 방법으로 동기화시켜 만들 수 있지만 전체 시스템이라면 얘기가 달라집니다. 시스템에서 카운터를 만드는 방법은 여러 가지 있지만 저는 이걸 데이터베이스를 사용하여 구현하고자 합니다. MySQL의 auto-increment를 이용한 카운터를 하는 방법과 mongodb의 findAndModify를 사용해서 구현하였고 이를 비교해보았습니다. 코드도 붙여넣을 예정인데 구현은 Spring+Kotlin으로 하였고 추가적으로 spring-boot-data-jpa, spring-..