
MongoDB에서 색인을 만드는 방법
2022-06-04 last update
7 minutes reading MongoDBMongoDB는 NoSQL 데이터베이스로 컬렉션에 저장된 문서를 조회하는 데 광범위한 지원을 제공합니다.MongoDB에서는 MongoDB 컬렉션에 필드 인덱스를 작성하여 검색 프로세스를 가속화할 수 있습니다.그리고 색인은 이 특정 필드의 데이터를 저장하고 문서를 신속하게 검색하는 데 도움을 줍니다.
대형 데이터베이스를 처리할 때, 필드 인덱스는 확실히 도움이 된다.예를 들어 조회는 문서의 전체 집합을 찾을 필요가 없다.색인을 찾아서 결과를 표시할 뿐입니다.오늘의 글은 MongoDB 시리즈의 일부입니다. MongoDB에서 색인을 만드는 방법을 보여 드리겠습니다.
MongoDB의 인덱스는 필드에서 작성되며 MongoDB에서 인덱스를 작성하려면 다음 구문을 사용해야 합니다.
문법
은 색인을 만들 집합의 필드를 가리키며, 색인을 만들 때 는 문서의 오름차순이나 내림을 가리킨다.오름차순은 "1", 내림차순은 -1을 사용합니다.
MongoDB의 인덱스는 주로 MongoDB의 처리 속도를 높이는 데 사용됩니다.여기서 다루는 MongoDB 컬렉션의 이름은 다음과 같습니다.
다음 부분에서는 위에 표시된 데이터를 사용하여 명령을 실행합니다.
MongoDB에서 가장 많이 사용되는 색인 유형은 다음과 같습니다.
단일 인덱스: 컬렉션의 문서만 참조하는 필드
복합 색인: 여러 필드를 나타냅니다.
다중 키 인덱스: 그룹 데이터 필드를 위한 인덱스 만들기
단일 필드 인덱스는 문서의 단일 필드에 인덱스를 만드는 것을 의미합니다.다음 명령은 "staff"집합의 "name"필드에 인덱스를 만듭니다.
출력은 이 명령 전에 색인이 하나밖에 없었고, 이 명령을 실행하면 색인 총수가 2로 변하는 것을 보여 줍니다.
또한 생성된 색인에 대한 이름을 설정할 수 있습니다.예를 들어, 아래에 언급된 명령은 "index on std name"이라는 이름을 설정합니다.
주: 상기 명령의 "1"또는 "-1"은 색인의 오름차순 또는 내림차순을 나타냅니다.
두 필드를 인용하여 색인을 만들 수도 있습니다.다음 명령은 "staff"집합의 "name"과 "desig"에 색인을 만듭니다.
참고: 여기서 사용하는 복합 인덱스의 도움말에 따라 MongoDB는 먼저 오름차순으로 "name"필드를 찾은 다음 "desig"[이름] 필드에 따라 내림차순으로 문서를 정렬합니다.
앞에서 말한 바와 같이, 다중 키 인덱스는 그룹 필드에 인덱스를 만드는 데 사용됩니다.MongoDB는 배열 필드를createIndex()에 전달할 때 다중 키 인덱스를 만듭니다.이것은 그룹 필드라는 것을 언급할 필요가 없습니다.반면,createIndex() 함수는 자동으로 그룹을 식별합니다.
우리의 예시에서 "staff"집합은 "cat"이라는 그룹 필드를 포함하는데, 이 필드는 운영체제에서 특정 직원이 처리하는 종류를 나타낸다.
여기서 제공하는 명령은 배열 필드의 각 요소에 대한 색인을 생성합니다.
색인을 만들면 다음 명령을 실행하여 시스템에서 사용할 수 있는 모든 색인을 찾을 수 있습니다.
위에서 만든 모든 색인이 여기에 표시됩니다.
특정 색인을 삭제하려면 다음 구문을 따릅니다.
특정 인덱스에 지정된 이름을 표시합니다.
또는:
예: 예를 들어 아래에 언급된dropIndex () 방법의 명령은 "name"필드에 만든 인덱스를 삭제합니다. 순서는 "1"입니다.
참고: 명령을 실행하면 조건에 맞는 모든 인덱스가 삭제됩니다.
또는 다음 명령을 사용하여 집합의 모든 인덱스를 삭제할 수 있습니다.
참고: 시스템 기본 인덱스만 남기고 나머지는 모두 삭제합니다.
MongoDB는 MongoDB 쿼리 언어(MQL)가 지원하는 신속하고 효과적인 쿼리 시스템을 제공합니다.문서를 조회할 때, 색인은 더 적은 시간으로 조회를 실행하는 데 중요한 역할을 한다.본고에서 우리는 MongoDB의'색인'개념을 설명했다.이 안내서를 읽으면 단일 필드, 복합 필드, 그룹 필드에 색인을 만들 수 있습니다.이 밖에 사용할 수 있는 인덱스를 찾을 수 있습니다. 본고는 모든 인덱스를 삭제하는 방법을 소개합니다.
대형 데이터베이스를 처리할 때, 필드 인덱스는 확실히 도움이 된다.예를 들어 조회는 문서의 전체 집합을 찾을 필요가 없다.색인을 찾아서 결과를 표시할 뿐입니다.오늘의 글은 MongoDB 시리즈의 일부입니다. MongoDB에서 색인을 만드는 방법을 보여 드리겠습니다.
MongoDB에서 색인 현상의 작업 원리
MongoDB의 인덱스는 필드에서 작성되며 MongoDB에서 인덱스를 작성하려면 다음 구문을 사용해야 합니다.
문법
db.collection-name.createIndex({: })
MongoDB에서 색인을 만드는 방법
MongoDB의 인덱스는 주로 MongoDB의 처리 속도를 높이는 데 사용됩니다.여기서 다루는 MongoDB 컬렉션의 이름은 다음과 같습니다.
> db.staff.find().pretty()

다음 부분에서는 위에 표시된 데이터를 사용하여 명령을 실행합니다.
MongoDB에서 가장 많이 사용되는 색인 유형은 다음과 같습니다.
단일 인덱스: 컬렉션의 문서만 참조하는 필드
복합 색인: 여러 필드를 나타냅니다.
다중 키 인덱스: 그룹 데이터 필드를 위한 인덱스 만들기
단일 필드 인덱스를 만드는 방법
단일 필드 인덱스는 문서의 단일 필드에 인덱스를 만드는 것을 의미합니다.다음 명령은 "staff"집합의 "name"필드에 인덱스를 만듭니다.
> db.staff.createIndex({name: 1})

출력은 이 명령 전에 색인이 하나밖에 없었고, 이 명령을 실행하면 색인 총수가 2로 변하는 것을 보여 줍니다.
또한 생성된 색인에 대한 이름을 설정할 수 있습니다.예를 들어, 아래에 언급된 명령은 "index on std name"이라는 이름을 설정합니다.
> db.staff.createIndex({name: -1}, {name: "index on student name"})

주: 상기 명령의 "1"또는 "-1"은 색인의 오름차순 또는 내림차순을 나타냅니다.
복합 색인을 만드는 방법
두 필드를 인용하여 색인을 만들 수도 있습니다.다음 명령은 "staff"집합의 "name"과 "desig"에 색인을 만듭니다.
> db.staff.createIndex({name: -1, desig: 1})

참고: 여기서 사용하는 복합 인덱스의 도움말에 따라 MongoDB는 먼저 오름차순으로 "name"필드를 찾은 다음 "desig"[이름] 필드에 따라 내림차순으로 문서를 정렬합니다.
다중 키 인덱스를 만드는 방법
앞에서 말한 바와 같이, 다중 키 인덱스는 그룹 필드에 인덱스를 만드는 데 사용됩니다.MongoDB는 배열 필드를createIndex()에 전달할 때 다중 키 인덱스를 만듭니다.이것은 그룹 필드라는 것을 언급할 필요가 없습니다.반면,createIndex() 함수는 자동으로 그룹을 식별합니다.
우리의 예시에서 "staff"집합은 "cat"이라는 그룹 필드를 포함하는데, 이 필드는 운영체제에서 특정 직원이 처리하는 종류를 나타낸다.
여기서 제공하는 명령은 배열 필드의 각 요소에 대한 색인을 생성합니다.
> db.staff.createIndex({cat: 1})

MongoDB에서 색인을 찾는 방법
색인을 만들면 다음 명령을 실행하여 시스템에서 사용할 수 있는 모든 색인을 찾을 수 있습니다.
> db.staff.getIndexes()


위에서 만든 모든 색인이 여기에 표시됩니다.
MongoDB에서 색인을 삭제하는 방법
특정 색인을 삭제하려면 다음 구문을 따릅니다.
db.collection-name.dropIndex()
또는:
db.collection-name.dropIndex({: })
<필드 이름> 및 <순서>는 정확한 필드 이름과 필드를 만들 때의 색인 순서를 나타냅니다.예: 예를 들어 아래에 언급된dropIndex () 방법의 명령은 "name"필드에 만든 인덱스를 삭제합니다. 순서는 "1"입니다.
참고: 명령을 실행하면 조건에 맞는 모든 인덱스가 삭제됩니다.
> db.staff.dropIndex({name:1})

또는 다음 명령을 사용하여 집합의 모든 인덱스를 삭제할 수 있습니다.
> db.staff.dropIndexes()

참고: 시스템 기본 인덱스만 남기고 나머지는 모두 삭제합니다.
결론
MongoDB는 MongoDB 쿼리 언어(MQL)가 지원하는 신속하고 효과적인 쿼리 시스템을 제공합니다.문서를 조회할 때, 색인은 더 적은 시간으로 조회를 실행하는 데 중요한 역할을 한다.본고에서 우리는 MongoDB의'색인'개념을 설명했다.이 안내서를 읽으면 단일 필드, 복합 필드, 그룹 필드에 색인을 만들 수 있습니다.이 밖에 사용할 수 있는 인덱스를 찾을 수 있습니다. 본고는 모든 인덱스를 삭제하는 방법을 소개합니다.