Google 애플리케이션 엔진에서 사용되지 않은 색인을 제거하려면 어떻게해야합니까?

StackOverflow https://stackoverflow.com/questions/813839

  •  03-07-2019
  •  | 
  •  

문제

나는 실수로 추가되었습니다 내 GAE 응용 프로그램에 대한 새 필터. 인덱스의 상태는 지금 '서빙'입니다. 그러나 그 지수가 전혀 필요하지 않으며 제거하고 싶습니다. 어떻게 할 수 있습니까?

도움이 되었습니까?

해결책

문서화되어 있습니다 여기. 도움이되기를 바랍니다.

사용되지 않은 인덱스 삭제

index.yaml에서 인덱스를 변경하거나 제거하면 원래 인덱스가 App Engine에서 자동으로 삭제되지 않습니다. 이를 통해 새 인덱스가 구축되는 동안 이전 버전의 앱을 실행하거나 최신 버전으로 문제가 발견되면 즉시 이전 버전으로 되돌릴 수 있습니다.

이전 인덱스가 더 이상 필요하지 않다고 확신하면 다음 명령을 사용하여 App Engine에서 삭제할 수 있습니다.

appcfg.py vacuum_indexes myapp/

이 명령은 로컬 버전의 index.yaml에 언급되지 않은 앱의 모든 인덱스를 삭제합니다.

다른 팁

GAE / Java의 경우 문서에는 포함됩니다 이 정보:

사용되지 않은 인덱스 삭제

...

이전 인덱스가 더 이상 필요하지 않다고 확신하면 Vacuum_Indexes 작업을 사용하여 App Engine에서 삭제할 수 있습니다.

./appengine-java-sdk/bin/appcfg.sh vacuum_indexes myapp/war

이 명령은 DataStore-Indexes.xml의 로컬 버전 및 생성/Datastore-Indexes-Auto.xml에서 언급되지 않은 앱의 모든 인덱스를 삭제합니다.

~ 안에 Windows Google Appengine Java, 우리는 사용해야합니다 appcfg.cmd 명령 사용되지 않은 인덱스를 삭제합니다 배포 된 응용 프로그램.

구문 :

Appengine-Java-SDK-PATH bin appcfg.cmd Vacuum_indexes Project-Root-Path poject-name war

Gae-Java의 경우 Jochenjung이 언급했듯이 "Vacuum_indexes"도구가 작동하지만 다음과 같은 방식으로 Python 프로젝트를 모방해야합니다.

진공 도구는 로컬 개발자가 아닌 *.appspot.com에서만 지적 할 때만 작동하는 것 같습니다. 환경.

  • 앱 용 app.yaml을 만들고 최소한 / myapp / root 디렉토리에 넣으십시오.

    application: myproj
    version: 4
    runtime: python
    api_version: 1

"버전"이 앱의 버전 인 "MyProj"는 프로젝트의 GAE 이름입니다.

  • index.yaml을 만들고 같은 루트에 넣습니다. 보관하려는 지수에 대한 인덱스 정보를 인덱스 정보를 중력적으로 넣는 대신, 도구가 삭제하는 각 인덱스에 대한 예/아니오 확인을 제공 할 것이라는 것이 밝혀졌습니다. 지수를 삭제하고 확인을 사용하여 유지하려는 것을 보존해야합니다.

indexes:

# AUTOGENERATED

그런 다음 위와 같이 명령을 실행하면


  /appcfg.py vacuum_indexes /path/to/myproj/

2019 년 2 월 현재는 지금입니다.

gcloud datastore indexes cleanup index.yaml

사용하는 경우 Maven mvn appengine:vacuum_indexes. 할 필요가 없습니다 mvn appengine:update, 명령은 원격 서버를 업데이트합니다.

Maven 명령의 전체 목록 여기.

Java를 사용하는 Windows 에서이 명령은 다음과 같습니다.

appcfg.cmd vacuum_indexes C:\Users\Name\AndroidStudioProjects\Project\backend\src\main\webapp\

메모: 당신이 가지고 있는지 확인하십시오 datastore-indexes.xml 에서 webapp 폴더 (이 인덱스는 구축됩니다).

GCLOUD의 현재 버전을 사용하면 간단히 할 수 있습니다.

gcloud datastore cleanup-indexes index.yaml

APPCFG.CMD를 호출하는 것보다 더 직관적입니다. [...].

gcloud datastore cleanup-indexes /path/to/file/index.yaml

이 명령 더 이상 작동하지 않습니다.

gcloud datastore indexes cleanup /path/to/index.yaml

이것이 새로운 명령.

당신은 그들을 실행해야합니다 google cloud console. 일반적으로 업로드 할 수 있습니다 index.yaml 파일 사용 file upload 기능 google cloud console. 파일은 직접 호출됩니다 _admin 당신은 할 수 있습니다 cd 거기에 전화를 걸어

gcloud datastore indexes cleanup index.yaml

사용중인 경우 datastore 안에 자바 프로젝트, 당신은 가지고 있습니다 datastore-indexes.xml 대신에 index.yaml. 당신은 찾는 데 어려움이있을 수 있습니다 index.yaml 어디를 볼지 모르는 경우 파일.

당신은 단순히 경로를 찾을 수 있습니다 index.yaml 파일을보고 파일 deploy console 당신의 IDE에서.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top