Atlas Search 인덱스를 확인합니다.
중요
Index Overview 페이지에서 Atlas Search 인덱스 정의를 볼 수 있습니다. 각 인덱스에 대해 Index Overview 페이지에는 다음이 표시됩니다.
인덱스의 네임스페이스 입니다.
인덱스 정의에 지정된 분석기를 인덱싱하고 검색합니다.
동적 매핑 또는 정적 매핑.
필드 이름, 데이터 유형, 개별 필드에 대해 동적 매핑이 활성화되어 있는지 여부를 포함한 인덱스 정의의 필드 매핑(있는 경우).
이 페이지에서는 Index Overview 페이지에서 인덱스 정의를 보는 방법에 대해 설명합니다. 페이지에서 시각적 객체 또는 JSON 편집기를 사용 하여 Atlas 검색 인덱스를 편집 할 수도 있습니다.Index Overview
필요한 액세스 권한
다음 표는 각 역할이 지원하는 액세스 모드를 보여줍니다.
역할 | 작업 | Atlas UI | Atlas API | Atlas Search API | Atlas CLI |
---|---|---|---|---|---|
Atlas Search 분석기 및 인덱스를 보려면 다음 단계를 따르세요. | ✓ | ✓ | |||
Project Data Access Admin 이상의 역할 | Atlas Search 분석기 및 인덱스를 생성 및 관리하고 API 키에 역할을 할당합니다. | ✓ | ✓ | ✓ | ✓ |
✓ | ✓ | ||||
API 키에 대한 액세스 생성 목록 항목을 만들고 API 키에 대한 액세스 목록에 표시되는 클라이언트에서 요청을 보냅니다. | ✓ | ✓ | |||
Atlas UI 또는 API를 사용하여 Atlas Search 인덱스를 생성, 확인, 편집 및 삭제합니다. | ✓ | ✓ | ✓ |
절차
Atlas UI에서 또는 mongosh
, Atlas CLI, API 또는 원하는 언어로 지원되는 MongoDB 드라이버 를 사용하여 프로그래밍 방식으로 Atlas Search 인덱스를 검색할 수 있습니다.
참고
명령 또는 운전자 헬퍼 메서드를 사용하여 모든 Atlas cluster 계층에서 Atlas Search 인덱스를 조회 할 수 있습니다.mongosh
지원되는 운전자 버전 목록은 MongoDB 드라이버를 참조하세요.
인덱스가 포함된 데이터베이스에 대해 최소한 readAnyDatabase
역할 또는 read
액세스 권한이 있어야 합니다. 자세히 알아보려면 기본 제공 역할 또는 특정 권한을참조하세요.
➤ 언어 선택 드롭다운 메뉴를 사용하여 이 섹션에 있는 예시의 언어를 설정합니다.
API를 통해 Atlas Search 인덱스를 조회하려면 다음을 수행하세요.
요청을 보냅니다.<a class=\" \" href=\" \" title=\" \"><svg xmlns=\" \" width=\" \" height=\" \" fill=\" \" viewbox=\" \" class=\" \" role=\" \" aria-label=\" \"><path fill=\" \" d=\" \"> <path fill=\" \" d=\" \"> GET
원하는 Atlas Search 인덱스의 고유 ID 또는 이름을 search/indexes/
엔드포인트로 포함하여 GET
요청을 전송합니다.
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --include \ --request GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes/{indexId}"
컬렉션의 모든 Atlas Search 인덱스를 조회하려면 다음을 수행하세요.
요청을 보냅니다.<a class=\" \" href=\" \" title=\" \"><svg xmlns=\" \" width=\" \" height=\" \" fill=\" \" viewbox=\" \" class=\" \" role=\" \" aria-label=\" \"><path fill=\" \" d=\" \"> <path fill=\" \" d=\" \"> GET
인덱스를 검색하려는 컬렉션 이름을 사용하여 search/indexes/
엔드포인트에 GET
요청을 보냅니다.
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --include \ --request GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes/{databaseName}/{collectionName}"
클러스터의 모든 Atlas Search 인덱스를 조회하려면 다음을 수행하세요.
요청을 보냅니다.<a class=\" \" href=\" \" title=\" \"><svg xmlns=\" \" width=\" \" height=\" \" fill=\" \" viewbox=\" \" class=\" \" role=\" \" aria-label=\" \"><path fill=\" \" d=\" \"> <path fill=\" \" d=\" \"> GET
인덱스를 조회할 클러스터의 이름과 함께 search/indexes/
엔드포인트에 GET
요청을 보냅니다.
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --include \ --request GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/clusters/{clusterName}/search/indexes"
클라우드 배포를 위한 Atlas Search 인덱스 조회
Atlas CLI를 사용하여 클러스터의 모든 검색 인덱스를 나열하려면 다음 명령을 실행하세요.
atlas clusters search indexes list [options]
Atlas CLI를 사용하여 지정한 검색 인덱스에 대한 세부 정보를 반환하려면 다음 명령을 실행하세요.
atlas clusters search indexes describe <indexId> [options]
이전 명령의 구문 및 매개변수에 대해 자세히 알아보려면 Atlas CLI 클러스터 Atlas Atlas Search 인덱스 목록 Atlas 및 cluster Atlas Search 인덱스 설명 에 대한설명서를 참조하세요.
로컬 배포를 위한 Atlas Search 인덱스 조회
Atlas CLI를 사용하여 지정된 배포에 대한 지정된 검색 인덱스를 설명하려면 다음 명령을 실행하세요.
atlas deployments search indexes describe [indexId] [options]
Atlas CLI를 사용하여 지정된 배포에 대한 모든 검색 인덱스를 나열하려면 다음 명령을 실행하세요.
atlas deployments search indexes list [options]
이전 명령의 구문 및 매개변수에 대해 자세히 알아보려면 Atlas 배포 검색 인덱스 설명 및 Atlas 배포 검색 인덱스 목록에 대한 Atlas CLI 문서를 참조하세요.
AtlasGo Atlas 에서 프로젝트 의 Clusters 페이지로 고 (Go) 합니다.
아직 표시되지 않은 경우 탐색 표시줄의 Organizations 메뉴에서 원하는 프로젝트가 포함된 조직을 선택합니다.
아직 표시되지 않은 경우 탐색 표시줄의 Projects 메뉴에서 원하는 프로젝트를 선택합니다.
아직 표시되지 않은 경우 사이드바에서 Clusters 클릭하세요.
Clusters(클러스터) 페이지가 표시됩니다.
클러스터의 Atlas Search 페이지로 이동합니다.
사이드바, Data Explorer 또는 클러스터 세부 정보 페이지에서 Atlas Search 페이지로 이동할 수 있습니다.
사이드바에서 Services 제목 아래의 Atlas Search를 클릭합니다.
Select data source 드롭다운에서 클러스터를 선택하고 Go to Atlas Search를 클릭합니다.
Atlas Search 페이지가 표시됩니다.
cluster의 Browse Collections 버튼을 클릭합니다.
데이터베이스를 확장하고 컬렉션을 선택합니다.
컬렉션의 Search Indexes 탭을 클릭합니다.
Atlas Search 페이지가 표시됩니다.
클러스터 이름을 클릭합니다.
Atlas Search 탭을 클릭합니다.
Atlas Search 페이지가 표시됩니다.
mongosh
를 통해 Atlas Search 인덱스를 조회하려면 db.collection.getSearchIndexes()
메서드를 사용합니다.
명령은 다음과 같은 구문을 가집니다. 인덱스 이름을 생략하는 경우, Atlas Search는 컬렉션의 모든 인덱스를 반환합니다.
db.<collection>.getSearchIndexes("<index-name>")
예시
다음 명령은 movies
컬렉션에서 default
라는 검색 인덱스를 조회합니다. 결과는 예시 출력과 유사해야 합니다.
db.movies.getSearchIndexes("default")
[ { id: '648b4ad4d697b73bf9d2e5e0', name: 'default', status: 'READY', queryable: true, latestDefinition: { mappings: { dynamic: true } } } ]
C 드라이버를 사용하여 Atlas Search 인덱스를 조회하려면 mongoc_collection_aggregate()
메서드를 사용하여 $listSearchIndexes
단계를 포함하는 집계 파이프라인을 만듭니다.
예시
다음 코드 예시를 파일에 복사합니다.
다음 샘플 애플리케이션에서는 집계 파이프라인의 $listSearchIndexes
단계를 지정합니다. 그런 다음 애플리케이션은 파이프라인과 대상 컬렉션을 mongoc_collection_aggregate()
메서드에 전달합니다. 이 메서드는 코드가 각 Atlas Search 인덱스에 액세스하여 인쇄하는 커서를 반환합니다.
int main (void) { mongoc_client_t *client = NULL; mongoc_collection_t *collection = NULL; mongoc_database_t *database = NULL; bson_error_t error; bson_t cmd = BSON_INITIALIZER; bool ok = true; bson_t pipeline = BSON_INITIALIZER; mongoc_cursor_t *cursor = NULL; mongoc_init(); // Connect to your Atlas deployment client = mongoc_client_new("<connectionString>"); if (!client) { fprintf(stderr, "Failed to create a MongoDB client.\n"); ok = false; goto cleanup; } // Access your database and collection database = mongoc_client_get_database(client, "<databaseName>"); collection = mongoc_database_get_collection(database, "<collectionName>"); // Create an aggregation pipeline with the $listSearchIndexes stage const char *pipeline_str = BSON_STR ({"pipeline" : [ {"$listSearchIndexes" : {}} ]}); // Convert your aggregation pipeline to BSON if (!bson_init_from_json(&pipeline, pipeline_str, -1, &error)) { fprintf(stderr, "Failed to parse command: %s\n", error.message); ok = false; goto cleanup; } // Run the aggregation operation and iterate through the indexes returned cursor = mongoc_collection_aggregate (collection, MONGOC_QUERY_NONE, &pipeline, NULL, NULL); const bson_t *got; char *str; while (mongoc_cursor_next (cursor, &got)) { str = bson_as_canonical_extended_json (got, NULL); printf ("%s\n", str); bson_free (str); } if (mongoc_cursor_error (cursor, &error)) { fprintf (stderr, "Failed to iterate all documents: %s\n", error.message); ok = false; goto cleanup; } cleanup: mongoc_cursor_destroy(cursor); mongoc_collection_destroy(collection); mongoc_database_destroy(database); mongoc_client_destroy(client); bson_destroy(&pipeline); bson_destroy(&cmd); mongoc_cleanup (); return ok ? EXIT_SUCCESS : EXIT_FAILURE; }
다음 값을 지정하고 파일을 저장합니다.
Atlas 연결 문자열입니다. 자세한 사항은 드라이버를 통해 연결을 참조하십시오.
인덱스를 검색하려는 데이터베이스 및 컬렉션입니다.
C++ 드라이버를 사용하여 Atlas Search 인덱스를 검색하려면 검색 인덱스 뷰에서 list()
메서드를 호출하세요.
예시
다음 코드 예시를 파일에 복사합니다.
다음 샘플 애플리케이션에서는 대상 컬렉션에서 search_indexes()
메서드를 사용하여 검색 인덱스 뷰를 인스턴스화합니다. 그런 다음, 애플리케이션은 뷰에서 list()
메서드를 호출합니다. 이 메서드는 코드가 각 Atlas Search 인덱스에 액세스하여 인쇄하는 커서를 반환합니다.
using namespace mongocxx; int main() { mongocxx::instance instance{}; try { // Connect to your Atlas deployment mongocxx::uri uri("<connectionString>"); mongocxx::client client(uri); // Access your database and collection auto db = client["<databaseName>"]; auto collection = db["<collectionName>"]; // Access and print the indexes in your collection auto siv = collection.search_indexes(); auto cursor = siv.list(); for (auto&& doc : cursor) { std::cout << bsoncxx::to_json(doc) << std::endl; }; } catch (const std::exception& e) { std::cout<< "Exception: " << e.what() << std::endl; } return 0; }
다음 값을 지정하고 파일을 저장합니다.
Atlas 연결 문자열입니다. 자세한 사항은 드라이버를 통해 연결을 참조하십시오.
인덱스를 검색하려는 데이터베이스 및 컬렉션입니다.
.NET/C# 드라이버를 사용하여 Atlas Search 인덱스를 조회하려면 List()
또는 ListAsync()
메서드를 사용합니다.
예시
다음 샘플 애플리케이션은 컬렉션의 인덱스를 반환합니다. 다음 값을 지정합니다.
Atlas 연결 문자열입니다. 자세한 사항은 드라이버를 통해 연결을 참조하십시오.
조회하려는 검색 인덱스가 포함된 데이터베이스와 컬렉션입니다.
참고
List()
메서드는 인덱스 대신 커서를 반환합니다. 인덱스에 액세스하려면 MoveNext()
메서드와 같은 커서 패러다임을 사용하세요.
using MongoDB.Bson; using MongoDB.Driver; // connect to your Atlas deployment var uri = "<connection-string>"; var client = new MongoClient(uri); var db = client.GetDatabase("<databaseName>"); var collection = db.GetCollection<BsonDocument>("<collectionName>"); // list your Atlas Search indexes var result = collection.SearchIndexes.List().ToList(); foreach (var index in result) { Console.WriteLine(index); }
샘플 애플리케이션을 실행하려면 csharp-list-indexes
(이)라는 새 .NET 콘솔 프로젝트를 만들고 이전 코드 예시를 Program.cs
파일에 복사합니다. 그 후 다음 명령을 사용하여 프로젝트를 실행합니다.
dotnet run csharp-list-indexes.csproj
<indexes for this collection>
Java 드라이버를 사용하여 컬렉션에서 Atlas Search 인덱스를 조회하려면 listSearchIndexes()
메서드를 사용하세요. Java Driver v4.11.0 이상이 있어야 합니다.
다음 코드 예시를 파일에 복사합니다.
다음 샘플 애플리케이션은 지정된 컬렉션의 모든 Atlas Search 인덱스를 검색합니다.
1 import com.mongodb.client.MongoClient; 2 import com.mongodb.client.MongoClients; 3 import com.mongodb.client.MongoCollection; 4 import com.mongodb.client.MongoCursor; 5 import com.mongodb.client.MongoDatabase; 6 import org.bson.Document; 7 public class ViewIndex { 8 public static void main(String[] args) { 9 // connect to your Atlas cluster 10 String uri = "<connection-string>"; 11 try (MongoClient mongoClient = MongoClients.create(uri)) { 12 // set namespace 13 MongoDatabase database = mongoClient.getDatabase("<database-name>"); 14 MongoCollection<Document> collection = database.getCollection("<collection-name>"); 15 // retrieve indexes 16 try (MongoCursor<Document> resultsCursor = collection.listSearchIndexes().iterator()) { 17 while (resultsCursor.hasNext()) { 18 System.out.println(resultsCursor.next()); 19 } 20 } 21 } 22 } 23 }
다음 값을 바꾼 다음 파일을 저장합니다.
<connection-string>
- Atlas 연결 문자열입니다. 자세한 내용은 드라이버를 통해 연결을 참조하세요.<database-name>
- 컬렉션이 포함된 데이터베이스의 이름입니다.<collection-name>
- 인덱스를 검색하려는 컬렉션의 이름입니다.
노드 드라이버 를 통해 Atlas Search 인덱스를 검색하려면 listSearchIndexes
헬퍼 메서드를 사용합니다.
예시
list-indexes.js
라는 다음 샘플 애플리케이션을 사용하여 컬렉션의 인덱스를 반환할 수 있습니다. 다음 값을 지정합니다.
Atlas 연결 문자열입니다. 자세한 사항은 드라이버를 통해 연결을 참조하십시오.
조회하려는 검색 인덱스가 포함된 데이터베이스와 컬렉션입니다.
특정 인덱스를 검색하려는 경우 인덱스 이름입니다. 컬렉션의 모든 인덱스를 반환하려면 이 값을 생략합니다.
참고
listSearchIndexes
명령은 커서를 반환합니다. 따라서 명령과 일치하는 인덱스를 즉시 반환하지 않습니다. 결과에 액세스하려면 toArray()
메서드와 같은 커서 패러다임을 사용합니다. 자세히 알아보려면 커서에서 데이터 액세스를 참조하세요.
import { MongoClient } from "mongodb"; // connect to your Atlas deployment const uri = "<connection-string>"; const client = new MongoClient(uri); async function run() { try { const database = client.db("<databaseName>"); const collection = database.collection("<collectionName>"); // run the helper method const result = await collection.listSearchIndexes("<index-name>").toArray(); console.log(result); } finally { await client.close(); } } run().catch(console.dir);
샘플 애플리케이션을 실행하려면 다음 명령을 사용합니다. 결과는 예제 출력과 유사해야 합니다.
node list-indexes.js
[ { id: '648b4ad4d697b73bf9d2e5e0', name: 'default', status: 'READY', queryable: true, latestDefinition: { mappings: { dynamic: true } } }, { id: '648b4ad4d697b73bf9d2e5e1', name: 'example-index', status: 'PENDING', queryable: false, latestDefinition: { mappings: { dynamic: false, fields: { text: { type: 'string' } } } } } ]
Python 드라이버를 사용하여 Atlas Search 인덱스를 검색하려면 컬렉션에서 list_search_indexes()
메서드를 호출하세요.
예시
다음 코드 예시를 파일에 복사합니다.
다음 샘플 애플리케이션은 컬렉션에서 list_search_indexes()
메서드를 호출합니다. 이 메서드는 코드가 각 Atlas Search 인덱스에 액세스하여 출력하는 커서를 반환합니다.
from pymongo.mongo_client import MongoClient def view_index(): # Connect to your Atlas deployment uri = "<connectionString>" client = MongoClient(uri) # Access your database and collection database = client["<databaseName>"] collection = database["<collectionName>"] # Get a list of the collection's search indexes and print them cursor = collection.list_search_indexes() for index in cursor: print(index)
다음 값을 지정하고 파일을 저장합니다.
Atlas 연결 문자열입니다. 자세한 사항은 드라이버를 통해 연결을 참조하십시오.
인덱스를 검색하려는 데이터베이스 및 컬렉션입니다.
검색 인덱스
Atlas UI의 Atlas Search 페이지에 컬렉션의 Atlas Search 인덱스에 대한 정보가 표시됩니다. 이 페이지에는 클러스터의 각 인덱스에 대해 다음 세부 정보를 표시합니다.
열 | 설명 |
---|---|
Database | 컬렉션이 포함된 데이터베이스의 이름입니다. |
Collection | 인덱싱된 컬렉션의 이름입니다. |
Index Name | 인덱스의 이름입니다. |
Type | 인덱스의 유형입니다. 값은 다음 유형의 인덱스 중 하나일 수 있습니다.
|
Index Fields | |
Status | 인덱스의 상태입니다. 자세히 알아보려면 Atlas Search 인덱스 상태를 참조하세요. |
Queryable | 컬렉션이 인덱스를 사용하여 쿼리 가능한지 여부를 나타내는 아이콘. 값은 다음 아이콘 중 하나일 수 있습니다.
|
Size | 인덱스의 크기입니다. |
Documents | 클러스터의 프라이머리 또는 검색 노드에서 인덱스를 구축하는 동안과 구축 후에 컬렉션의 총 문서 수 중 인덱싱된 문서의 대략적인 수와 백분율입니다. |
Actions |
다양한 열을 기준으로 인덱스를 정렬할 수 있습니다. 기본적으로 Atlas는 인덱스를 먼저 데이터베이스 이름순으로 정렬하고 그 다음에 컬렉션 이름순으로 정렬합니다. 여러 열로 정렬하려면 Shift
키를 누르고 인덱스 목록을 다중 정렬하려는 순서대로 열 이름을 클릭합니다. Atlas는 페이지를 나가면 사용자가 선호하는 정렬 순서를 저장하지 않습니다.
인덱스 상태 검토
각 인덱스에 대해 Status 열은 클러스터의 프라이머리 노드에 있는 인덱스의 현재 상태가 표시됩니다. 다음 표에서는 인덱스 상태를 설명합니다.
상태 | 설명 |
---|---|
보류 중 | Atlas가 아직 인덱스 빌드를 시작하지 않았습니다. |
건물 | Atlas가 인덱스를 작성하거나 편집 후 인덱스를 다시 작성하고 있습니다. 인덱스가 이 상태인 경우 다음과 같습니다:
|
준비 완료 | 인덱스를 사용할 준비가 되었습니다. |
Stale | 인덱스가 부실한 이유는 다음과 같습니다.
기존 인덱스 를 계속 쿼리 할 수 있습니다. 그러나 오래된 인덱스 에 대한 쿼리 결과에는 오래된 데이터가 포함될 수 있습니다. 검색 노드를 업스케일링하여 디스크 공간을 늘리고 기존 인덱스를 삭제하여 디스크 공간을 확보할 수 있습니다. 또는 View status details 모달 창의 오류를 사용하여 문제를 해결하세요. 자세한 내용은 Atlas Search 문제 해결을 참조하세요. |
실패하였습니다. | Atlas에서 인덱스를 작성할 수 없습니다. View status details 모달 창의 오류를 사용하여 문제를 해결하세요. 자세한 내용은 Atlas Search 문제 해결을 참조하세요. |
삭제 | Atlas가 클러스터 노드에서 인덱스를 삭제하는 중입니다. |
존재하지 않음 | 인덱스가 유효하지 않은 이유는 인덱스에 대한 컬렉션이 더 이상 존재하지 않기 때문입니다. 해당 인덱스에 대한 컬렉션이 없으므로 이 인덱스에 대한 쿼리를 실행할 수 없습니다. Atlas는 결국 해당 인덱스를 삭제합니다. |
상태 세부 정보 보기
Status 열은 클러스터의 프라이머리 노드에 있는 인덱스의 현재 상태를 표시합니다. 상세 상태를 보려면 다음 방법 중 하나를 사용할 수 있습니다.
Status열의 상태 아래에 있는 View status details 링크를 클릭합니다.
인덱스의 이름을 클릭한 다음 인덱스의 왼쪽 메뉴에서 Status Details를 선택합니다.
이 페이지에서는 인덱스에 대한 다음 세부 정보를 볼 수 있습니다.
Index Serving 쿼리
이 섹션에서는 쿼리를 처리하는 데 사용되는 인덱스를 표시합니다. 컬렉션에 대해 해당하는 이름을 가진 인덱스 버전이 하나뿐인 경우, 섹션에는 사용 중인 인덱스에 대한 인덱스 정의를 볼 수 있는 Index Overview 링크가 포함됩니다.
컬렉션에 이름이 동일하지만 다른 인덱스가 있는 경우, 이 섹션에는 최신 인덱스 정의가 표시되며 다른 탭에서 복사할 수 있는 이전 유효한 버전의 인덱스도 표시됩니다.
인덱스를 업데이트할 때 서로 다른 노드는 서로 다른 속도로 업데이트를 적용합니다. 따라서 일부 노드는 최신 버전을 사용할 수 있고, 일부는 이전 버전을 사용할 수 있습니다. Atlas는 변경 사항이 모든 노드에 적용될 때까지 두 버전의 인덱스를 모두 표시합니다.
잘못된 인덱스 정의로 인덱스를 업데이트하려고 하면 인덱스 빌드가 실패하고 Atlas는 이전의 유효한 인덱스 정의만 표시합니다.
노드별 상태 세부 정보
이 섹션은 클러스터의 각 노드에 대한 인덱스 상태를 표시합니다. 각 노드의 인덱스에 대한 자세한 내용은 다음과 같습니다.
Shard | 샤드 이름. |
Node | 노드 정보. |
Status | 샤드 내 노드에 있는 인덱스의 상태입니다. |
Queryable | 인덱스가 쿼리를 처리할 수 있는지 여부를 나타내는 아이콘. |
Message | 인덱스 상태의 이유입니다. Stale 또는 Failed 상태의 인덱스에 대해 인덱스가 부실한 이유 또는 인덱스 빌드가 실패한 이유를 표시합니다. |
Node Type | 노드 유형입니다. 값은 다음 유형 중 하나일 수 있습니다.
|
Region | 노드 리전 |
Size | 노드에 있는 인덱스의 크기입니다. |
Documents | 인덱스된 문서의 개수 및 백분율입니다. |
Actions | 노드의 인덱스에 대해 수행할 수 있는 작업입니다. 아이콘을 클릭하고 다음 옵션 중 하나를 선택할 수 있습니다.
|
경고
이미 Atlas Search 인덱스가 있는 컬렉션을 샤드하는 경우, 컬렉션이 샤드에 표시되기 시작할 때 잠시 동안 쿼리 중단 시간이 발생할 수 있습니다. 또한 이미 샤드된 컬렉션에 대한 샤드를 추가하고 Atlas Search 인덱스가 포함된 경우, 추가된 샤드에서 초기 동기화 프로세스가 완료될 때까지 해당 컬렉션에 대한 검색 쿼리가 실패합니다. 자세한 내용은 초기 동기화 프로세스를 참조하세요.
검색 노드로의 마이그레이션
이 섹션에서는 해당하는 경우 Atlas Search 및 Atlas Vector Search 인덱스를 검색 노드로 마이그레이션 중인 작업의 상태를 표시합니다. 현재 검색 노드로 마이그레이션하는 경우에만 표시됩니다.
Index Status by Search Node 섹션 아래의 정보 배너에 있는 View Migration Progress 링크를 클릭하면 인덱스를 검색 노드로 마이그레이션하는 진행 상황에 대한 자세한 정보를 볼 수 있습니다(노드별로).
Atlas UI는 클러스터의 각 인덱스에 대해 다음 열을 표시합니다.
열 | 설명 |
---|---|
Database | 컬렉션이 포함된 데이터베이스의 이름입니다. |
Collection | 인덱싱된 컬렉션의 이름입니다. |
Index Name | 인덱스의 이름입니다. |
Index Fields | |
Type | 인덱스의 유형입니다. 값은 다음 유형의 인덱스 중 하나일 수 있습니다.
|
Status | 마이그레이션 상태입니다. 자세한 내용은 검색 노드로의 마이그레이션을 참조하세요. |
Size | 인덱스의 크기입니다. |
Documents | 클러스터의 검색 노드에서 마이그레이션 중과 마이그레이션 후 컬렉션의 총 문서 수에서 인덱싱된 문서의 수와 백분율입니다. |
상태 열은 검색 노드의 인덱스 상태를 표시합니다. 상태는 다음 중 하나일 수 있습니다.
상태 | 설명 |
---|---|
건물 | 인덱스가 현재 검색 노드에서 빌드 중입니다. 새 인덱스가 빌드되는 동안 쿼리는 기존 인덱스를 계속 사용할 수 있습니다. |
대기 중 | 인덱스가 검색 노드에 성공적으로 빌드되었지만 마이그레이션이 아직 완료되지 않았습니다. Atlas가 검색 노드에서 모든 인덱스를 성공적으로 빌드한 경우에만 마이그레이션이 완료된다는 점에 유의하세요. |
준비 완료 | 검색 노드의 인덱스를 쿼리에 사용할 준비가 되었습니다. Atlas가 검색 노드로의 마이그레이션을 성공적으로 완료한 경우에만 표시됩니다. |
실패하였습니다. | 인덱스 빌드에 실패하여 별도의 검색 노드로의 마이그레이션이 중단되었습니다. 귀하의 쿼리는 기존 인덱스를 계속 사용할 수 있습니다. Atlas는 인덱스를 다시 작성하려고 시도하지만 7일 후에 시간 초과됩니다. 성공적으로 마이그레이션하려면 노드별 상태 세부 정보 Message 열 또는 Status Details 페이지에서 인덱스에 대한 오류 메시지를 검토하고 검색 노드에서 인덱스 빌드가 실패하는 원인이 되는 문제를 해결하세요. |
쿼리는 새 인덱스가 검색 노드에 구축되는 동안 기존 인덱스를 계속 사용할 수 있습니다. 검색 노드로의 마이그레이션은 Atlas가 검색 노드에서 모든 인덱스를 성공적으로 빌드한 경우에만 완료됩니다. 그러면 쿼리가 검색 노드의 인덱스를 사용하도록 자동으로 라우팅됩니다.