우노
[DocumentDB] MongoDB 데이터 Amazon DocumentDB에 Migration하기 본문
데이터셋을 Amazon DocumentDB에 Migration 하기
- 오프라인 접근 방식 : mongodump 및 mongorestore 도구를 사용하여 Amazon DocumentDB 클러스터로 데이터를 마이그레이션할 수 있다.
- 순서
- MongoDB에 데이터를 업로드 한다.
- MongoDB의 컬렉션 데이터 및 인덱스를 덤프한다.
- 덤프한 인덱스를 Amazon DocumentDB 클러스터에 복원한다.
- 덤프한 컬렉션 데이터를 Amazon DocumentDB 클러스터에 복원한다.
- Migration 된 Amazon DocumentDB 데이터 확인
- 순서
Step 1. MongoDB에 데이터를 업로드 한다.
docker 설치 및 Mongodb container 생성
sudo yum update -y sudo yum install docker -y sudo service docker start sudo usermod -a -G docker ec2-user
docker run -d --name mongodb -p 27017:27017 mongo docker exec -it mongodb mongo
Mongoimport를 사용해 Mongodb로 데이터셋 전송
mongoimport -d nyc -c col --type csv --file ./nyc-job.csv/nyc_jobs.csv --headerline
Mongodb 접속 후 데이터 확인
mongo show dbs use nyc db db.col.find()
Step 2. Mongodb의 인덱스 및 컬렉션 데이터를 덤프한다.
mongodump --db nyc --authenticationDatabase admin --forceTableScan
Step 3. 덤프한 인덱스를 Amazon DocumentDB 클러스터에 복원한다.
- Amazon DocumentDB Migration Tool 다운로드
git clone https://github.com/awslabs/amazon-documentdb-tools.git
- bson, pymongo 설치
sudo yum install python-pip -y
sudo pip install bson
sudo pip install pymongo
- 인덱스를 Amazon DocumentDB 클러스터에 복원
python amazon-documentdb-tools/migrationtools/documentdb_index_tool.py --host docdb-2020-06-17-04-01-59.cluster-cuwjk5rgtfpv.us-east-1.docdb.amazonaws.com:27017 --restore-indexes --dir dump --tls --tls-ca-file rds-combined-ca-bundle.pem --username userDemo --password userDemo
Step 4. 덤프한 컬렉션 데이터를 Amazon DocumentDB 클러스터에 복원한다.
- 컬렉션 데이터를 Amazon DocumentDB에 복원
mongorestore --ssl --sslCAFile rds-combined-ca-bundle.pem --username userDemo --password userDemo --host docdb-2020-06-17-04-01-59.cluster-cuwjk5rgtfpv.us-east-1.docdb.amazonaws.com:27017 --numInsertionWorkersPerCollection 8 --noIndexRestore
Step 5. Amazon DocumentDB 데이터 확인
- Amazon DocumentDB 접속 후 데이터 확인
mongo --ssl --host docdb-2020-06-17-04-01-59.cluster-cuwjk5rgtfpv.us-east-1.docdb.amazonaws.com:27017 --sslCAFile rds-combined-ca-bundle.pem --username userDemo --password userDemo
show dbs
use nyc
db.col.find()
'AWS > DocumentDB' 카테고리의 다른 글
[DocumentDB] EC2 Instance에서 Amazon DocumentDB 접근 (0) | 2020.07.03 |
---|
Comments