programing

mongo 데이터베이스의 구조를 검색하려면 어떻게 해야 합니까?

itsource 2023. 2. 13. 21:29
반응형

mongo 데이터베이스의 구조를 검색하려면 어떻게 해야 합니까?

작성 또는 설계하지 않은 Mongo 데이터베이스를 가지고 있습니다.데이터를 자세히 보거나 구조를 인쇄하여 저장되는 데이터 유형, 데이터 유형 중첩 방식 등을 파악할 수 있는 좋은 방법이 있습니까?

mongo 쉘에서 다음 명령을 실행하여 데이터베이스를 쿼리합니다.

use mydb //this switches to the database you want to query
show collections //this command will list all collections in the database
db.collectionName.find().pretty() //this will show all documents in the database in a readable format; do the same for each collection in the database

그러면 문서 구조를 검토할 수 있습니다.

실제로 Variety라고 하는 툴이 있습니다.

http://blog.mongodb.org/post/21923016898/meet-variety-a-schema-analyzer-for-mongodb

Github repo는 다음 URL에서 확인할 수 있습니다.https://github.com/variety/variety

경고하고 싶군요

  • MR을 사용하여 작업을 수행합니다.
  • 또한 성능 측면에서 프로덕션 설정을 거의 중단시킬 수 있는 다른 특정 쿼리를 사용합니다.

따라서 개발 서버나 복제본의 숨겨진 노드 등에서 실행할 것을 권장합니다.

문서의 크기와 깊이에 따라 데이터베이스의 대략적인 구조를 이해하는 데 매우 오랜 시간이 걸릴 수 있지만, 최종적으로는 이해할 수 있습니다.

그러면 이름과 해당 유형이 인쇄됩니다.

var schematodo = db.collection_name.findOne()
for (var key in schematodo) { print (key, typeof key) ; }

제한 없는 find 명령어를 발행하는 것보다 결과 세트를 제한하는 것이 좋습니다.

use mydb
db.collectionName.find().limit(10)
var z = db.collectionName.find().limit(10)
Object.keys(z[0])
Object.keys(z[1])

이를 통해 데이터베이스 구조 또는 데이터베이스 구조를 이해하는 데 도움이 됩니다.

이것은 제 친구와 함께 만든 오픈 소스 도구입니다 - https://pypi.python.org/pypi/mongoschema/

꽤 간단한 사용법을 가진 파이썬 라이브러리입니다.시험 삼아 써 볼 수 있다.

한 가지 방법은 몽고이를 사용하는 것입니다.Variety와 유사한 오픈 소스 도구입니다.

차이점은 Mongoeye는 독립형 프로그램이며(Mongo Shell은 필수가 아님), 더 많은 기능(이력, 가장 빈번한 값 등)을 가지고 있다는 것입니다.

https://github.com/mongoeye/mongoeye

며칠 전 GUI 클라이언트 MongoDB Compass와 멋진 시각화를 발견했습니다.제품 개요를 참조하십시오.그것은 mongodb 사람들로부터 직접 왔고 그들의 문서에 따르면:

MongoDB Compass는 사용자가 MongoDB 내의 데이터 수집 내용을 쉽게 분석하고 이해할 수 있도록 설계되었습니다.

검증 스키마에 대해 물어봤을 수 있습니다.입수 방법은 다음과 같습니다.MongoDb 컬렉션 검증자 규칙을 가져오는 방법

몽고 나침반 사용

여기서 설명하는 샘플 스키마를 가져오기 위해 1000개의 문서를 임의로 샘플로 사용하는 경우 - 누락될 수 있지만 데이터베이스가 여러 GB인 경우 이 옵션만 사용할 수 있습니다.

시각화

Mongo 나침반 스키마 탭

그러면 스키마를 JSON으로 내보낼 수 있습니다.

여기에 이미지 설명 입력

문서

MongoDB를 할 수 .mongodump시, a. 행행,, dump몽고덤프이 폴더에는 MongDB의 데이터베이스에 해당하는 여러 폴더가 있고, 모음에 해당하는 하위 폴더와 문서에 해당하는 파일이 있습니다.

빈 컬렉션의 스키마도 알 수 있기 때문에 이 방법은 제가 아는 한 가장 좋은 방법입니다.

언급URL : https://stackoverflow.com/questions/14713179/how-can-i-discover-a-mongo-databases-structure

반응형