문서 메뉴
문서 홈
/
MongoDB 매뉴얼
/

인덱스 만들기

이 페이지의 내용

  • 이 작업에 대하여
  • 절차
  • 예제
  • 결과
  • 자세히 알아보기

인덱스는 MongoDB에서 쿼리를 효율적으로 실행할 수 있도록 지원합니다. 애플리케이션에서 동일한 필드에 대한 쿼리를 반복적으로 실행하는 경우 해당 필드에 인덱스를 생성하여 해당 쿼리의 성능을 개선할 수 있습니다.

인덱스를 만들려면 드라이버에 createIndex() 셸 메서드 또는 이에 상응하는 메서드를 사용합니다. 이 페이지에는 MongoDB Shell 및 드라이버의 예제가 나와 있습니다.

MongoDB 셸 또는 드라이버에서 인덱스 생성 명령을 실행하면 동일한 사양의 인덱스가 존재하지 않는 경우에만 인덱스가 생성됩니다.

인덱스는 쿼리 성능을 향상시키지만 인덱스를 추가하면 쓰기 작업의 성능에 부정적인 영향을 미칩니다. 쓰기 대 읽기 비율이 높은 컬렉션의 경우 각 삽입 및 업데이트는 인덱스도 업데이트해야 하므로 비용이 많이 듭니다.


➤ 이 페이지에 있는 예제의 언어를 설정하려면 오른쪽 탐색 창에서 언어 선택 드롭다운 메뉴를 사용합니다.


mongosh 에서 인덱스를 만들려면 db.collection.createIndex() 을 사용합니다.

db.collection.createIndex( <key and index type specification>, <options> )

.NET 드라이버 를 사용하여 인덱스를 생성하려면 MongoCollection.CreateIndex 를 사용합니다.

collection.CreateIndex( IndexKeys<collection>.<key and index type specification>, <options> );

비동기 Java 드라이버 를 사용하여 인덱스를 생성하려면 ,com.mongodb.async.client.MongoCollection.createIndex 사용 .

collection.createIndex( <key and index type specification>, <options>, <callbackFunction>)

Java 드라이버를 사용하여 인덱스를 작성하려면 com.mongodb.client.MongoCollection.createIndex를 사용하세요.

collection.createIndex(<key and index type specification>, <options>)

코틀린 코루틴 드라이버 를 사용하여 인덱스를 만들려면 MongoCollection.createIndex() 메서드.

collection.createIndex(<key and index type specification>, <options>)

Node.JS 드라이버를 사용하여 인덱스를 생성하려면 createIndex()을(를) 사용합니다.

collection.createIndex( { <key and index type specification> }, function(err, result) {
console.log(result);
callback(result);
}

펄( Perl) 드라이버 를 사용하여 인덱스를 생성하려면 ,create_one() 을 사용합니다. .

my $indexes = $db->get_collection( <collection> )->indexes;
$indexes->create_one( [ <key and index type specification> ] );

PHP 드라이버 를 사용하여 인덱스를 만들려면 MongoDB\\Collection::createIndex()을(를) 사용합니다.

$collection->createIndex(<key and index type specification>, <options>);

Python 드라이버 를 사용하여 인덱스를 만들려면 를 pymongo.collection.Collection.create_index 사용합니다.

db.collection.create_index([(<key and index type specification>)], <options> )

Ruby 드라이버 를 사용하여 인덱스를 만들려면 Mongo::Index::View#create_one 을 사용합니다. .

client[:collection].indexes.create_one({ <key and index type specification> }, {options})

Scala 드라이버를 사용하여 인덱스를 만들려면 org.mongodb.scala.model.Indexes를 사용합니다.

collection.createIndex(<key and index type specification>)

이 예에서는 name 필드에 단일 키 내림차순 색인을 만듭니다.

db.collection.createIndex( { name: -1 } )

이 예에서는 name 필드에 단일 키 내림차순 색인을 만듭니다.

collection.CreateIndex( IndexKeys<collection>.Descending("name") );

이 예에서는 name 필드에 단일 키 내림차순 색인을 만듭니다.

collection.createIndex(Indexes.descending("name"), someCallbackFunction());

이 예에서는 name 필드에 단일 키 내림차순 색인을 만듭니다.

collection.createIndex(Indexes.descending("name"));

이 예에서는 name 필드에 단일 키 내림차순 색인을 만듭니다.

collection.createIndex(Indexes.descending("name"))

이 예에서는 name 필드에 단일 키 내림차순 색인을 만듭니다.

await collection.create_index([("name", pymongo.DESCENDING)])

이 예에서는 name 필드에 단일 키 내림차순 색인을 만듭니다.

collection.createIndex( { name : -1 }, function(err, result) {
console.log(result);
callback(result);
}

이 예에서는 name 필드에 단일 키 내림차순 색인을 만듭니다.

my $indexes = $db->get_collection( <collection> )->indexes;
$indexes->create_one( [ name => -1 ] );

이 예에서는 name 필드에 단일 키 내림차순 색인을 만듭니다.

$collection->createIndex(['name' => -1]);

이 예에서는 name 필드에 단일 키 내림차순 색인을 만듭니다.

collection.create_index([("name", pymongo.DESCENDING)])

이 예에서는 name 필드에 단일 키 내림차순 색인을 만듭니다.

client[:collection].indexes.create_one({ name: -1 })

이 예에서는 name 필드에 단일 키 내림차순 색인을 만듭니다.

collection.createIndex(descending("name"))

참고

인덱스 정렬 순서

MongoDB는 어느 방향으로든 인덱스를 탐색할 수 있으므로, 단일 필드 인덱스의 경우 인덱스 키의 정렬 순서(오름차순 또는 내림차순)는 중요하지 않습니다.

인덱스가 생성되었는지 확인하려면 mongosh을(를) 사용하여 db.collection.getIndexes() 메서드를 실행합니다.

db.collection.getIndexes()

출력:

[
{ v: 2, key: { _id: 1 }, name: '_id_' },
{ v: 2, key: { name: -1 }, name: 'name_-1' }
]

드라이버를 사용하여 생성된 인덱스에 대한 정보를 보려면 해당 드라이버의 문서를 참조하세요.

  • MongoDB Compass에서 인덱스를 생성하는 방법을 알아보려면 Compass 문서에서 인덱스 관리를 참조하세요.

  • 인덱스가 얼마나 자주 사용되는지 확인하려면 인덱스 사용량 측정을참조하세요.

  • 인덱스 이름을 지정하는 방법에 대한 자세한 내용은 인덱스 이름 지정을 참조하십시오.

  • MongoDB가 인덱스를 빌드하는 방법을 알아보려면 인덱스 빌드 프로세스를 참조하세요.

돌아가기

색인

다음

이름 지정