개발/MongoDB

[MongoDB][M001] Chapter2 : Importing, Exporting, and Quering Data

nova_dev 2022. 9. 29. 00:00
반응형
 

M001: MongoDB Basics | MongoDB University

In this course you will learn how to set up your database and start exploring different ways to search, create, and analyze your data with MongoDB. We will cover database performance basics, and discover how to get started with creating applications and vi

university.mongodb.com

아래 내용은 MongoDB에서 무료로 제공하는 MongoDB University의 M001: MongoDB Basics의 Chapter2를 공부하며 정리한 내용이다.

Chapter2: Importing, Exporting, and Quering Data

1. Lecture: How does MongoDB store data?

JSON

  • JSON
    • JavaScript Standard Object Notation의 약자
  • JSON format
    • 중괄호 {} 로 시작하고 끝난다.
    • key와 value는 콜론 : 으로 분리된다.
    • key:value 페어는 콤마 , 로 분리된다.
    • key는 반드시 “”로 감싸진다.
{
  "_id": 1,
  "name": { "first" : "John", "last" : "Backus" },
  "contribs": [ "Fortran", "ALGOL", "Backus-Naur Form", "FP" ],
  "awards": [
    {
      "award": "W.W. McDowell Award",
      "year": 1967,
      "by": "IEEE Computer Society"
    }, {
      "award": "Draper Prize",
      "year": 1993,
      "by": "National Academy of Engineering"
    }
  ]
}

BSON

  • Binary JSON
  • 바이너리 표현과 JSON 표현의 격차를 해소한다.
  • JSON을 ‘속도, 공간, 유연성’ 측면에서 최적화 한 것.

JSON vs BSON

추가적인 학습은 아래 링크 참고

Cloud: MongoDB Cloud

1.1 Quiz: What is JSON?

1.2 Quiz: JSON vs BSON


2. Lecture: Importing and Exporting Data

  • Stored BSON vs Viewed JSON
    • [JSON] Export to a local machine
    • [BSON] Export to a different system
    • [BSON] Backup cloud data locally
    • [JSON] Import from a different system
    • [JSON] Import from a local machine
  • JSON
    • mongoimport
    • mongoexport
  • BSON
    • mongostore
    • mongodump
  • Export Data in BSON / Export data in JSON
mongodump --uri "mongodb+srv://<your username>:<your password>@<your cluster>.mongodb.net/sample_supplies"

mongoexport --uri="mongodb+srv://<your username>:<your password>@<your cluster>.mongodb.net/sample_supplies" --collection=sales --out=sales.json

mongorestore --uri "mongodb+srv://<your username>:<your password>@<your cluster>.mongodb.net/sample_supplies"  --drop dump

mongoimport --uri="mongodb+srv://<your username>:<your password>@<your cluster>.mongodb.net/sample_supplies" --drop sales.json

Cloud: MongoDB Cloud

2.1 Quiz: Import and Export


3. Lecture: Data Explorer

MongoDB Atlas Data Explorer 사용법에 대해 자세히 설명한다. MongoDB를 쿼리할 때 GUI를 통해 간단한 데이터를 쿼리하는 등에 유용하다.

Cloud: MongoDB Cloud

3.1 Quiz: Data Explorer

앞 강의에서 했던 Data Explorer를 활용하여 실제 퀴즈를 맞춰보자.

혹시 아틀라스에 데이터를 안부어놓은 사람은 Chapter1의 아래 링크를 반드시 수행하자.

Cloud: MongoDB Cloud


4. Lecture: Find Command

  • it
    • cursor를 통한 반복자
  • cursor
    • 쿼리 결과 집합에 대한 포인터
  • pointer
    • 메모리 위치의 직접 주소

강의를 따라 find 명령어를 통해 데이터를 쿼리하는 테스트를 진행해보자.

db.zips.find({"state": "NY"})
## find 쿼리를 통해 state가 NY인 목록 조회

db.zips.find({"state": "NY"}).count()
## 카운트 쿼리를 통해 위 find 쿼리에 해당하는 목록의 갯수 출력

db.zips.find({"state": "NY", "city": "ALBANY"})
## find의 기본은 where and이기 때문에 state가 NY이고 ALBANY인 목록을 보여줌

db.zips.find({"state": "NY", "city": "ALBANY"}).pretty()
## pretty를 사용하면 쿼리를 사람이 읽기 쉽게 보여줌. (JSON pretty와 동일)

Cloud: MongoDB Cloud

4.1 Quiz: Find Command

4.2 Quiz: The Mongo Shell

 

참고자료

 

M001: MongoDB Basics | MongoDB University

In this course you will learn how to set up your database and start exploring different ways to search, create, and analyze your data with MongoDB. We will cover database performance basics, and discover how to get started with creating applications and vi

university.mongodb.com

 

반응형