이 가이드는 Google Cloud Search Norconex HTTP Collector 색인 생성기 플러그인을 다운로드, 배포, 유지관리하는 관리자를 대상으로 합니다. Linux, 웹 크롤링 기본 사항, XML, Norconex HTTP Collector에 익숙해야 합니다.
이 가이드에는 다음을 수행하는 방법이 포함되어 있습니다.
- 색인 생성기 플러그인 소프트웨어를 다운로드합니다.
- Cloud Search를 구성합니다.
- Norconex HTTP Collector 및 웹 크롤링을 구성합니다.
- 웹 크롤링을 시작하고 콘텐츠를 업로드합니다.
Google Workspace 관리자가 수행해야 하는 작업에 대한 정보는 이 가이드에 포함되어 있지 않습니다. 해당 작업에 대한 자세한 내용은 타사 데이터 소스 관리를 참조하세요.
Norconex HTTP Collector 색인 생성기 플러그인 개요
Cloud Search는 기본적으로 Google 문서, Gmail과 같은 Google Workspace 제품에서 콘텐츠를 검색하고, 색인을 생성하고, 관련 콘텐츠를 제공할 수 있습니다. 오픈소스 엔터프라이즈 웹 크롤러인 Norconex HTTP Collector의 색인 생성기 플러그인을 배포하여 웹 콘텐츠를 포함하도록 범위를 확장할 수 있습니다.
구성 속성 파일
플러그인이 콘텐츠를 크롤링하고 업로드할 수 있도록 하려면 두 개의 구성 파일에 특정 정보를 제공해야 합니다.
{gcs-crawl-config.xml}: Norconex HTTP Collector의 설정입니다.sdk-configuration.properties: Cloud Search 설정입니다.
웹 크롤링 및 콘텐츠 업로드
구성 파일을 채운 후 웹 크롤링을 시작할 수 있습니다. Norconex HTTP Collector는 웹을 크롤링하고 원본 바이너리 또는 텍스트 문서 콘텐츠를 Cloud Search Indexing API에 업로드합니다.
시스템 요구사항
- 운영체제: Linux만 해당
- Norconex 버전: 버전 2.8.0
- 소프트웨어: Java JRE 1.8
ACL 지원
색인 생성기 플러그인은 액세스 제어 목록 (ACL)을 지원하여 Google Workspace 도메인의 문서에 대한 액세스를 제어합니다.
플러그인 구성에서 기본 ACL을 사용 설정하면 (defaultAcl.mode이 none 이외의 값으로 설정됨) 플러그인이 이러한 기본값을 적용합니다. 그렇지 않으면 플러그인이 전체 도메인에 대한 읽기 권한을 부여합니다. Google 제공 커넥터 매개변수를 참고하세요.
기본 요건
색인 생성기 플러그인을 배포하기 전에 다음 구성요소를 수집하세요.
- Google Workspace 비공개 키 (서비스 계정 ID 포함) Cloud Search API에 대한 액세스 구성을 참고하세요.
- Google Workspace 데이터 소스 ID입니다. 서드 파티 데이터 소스 관리를 참고하세요.
배포 단계
- Norconex HTTP Collector 및 플러그인 소프트웨어 설치
- Cloud Search 구성
- Norconex HTTP Collector 구성
- 웹 크롤링 구성
- 웹 크롤링 시작 및 콘텐츠 업로드
1단계: Norconex HTTP Collector 및 플러그인 소프트웨어 설치
- Norconex 다운로드 페이지에서 Norconex 커밋터 소프트웨어를 다운로드합니다.
- 소프트웨어를
~/norconex/에 추출합니다. 커미터 플러그인을 클론합니다.
git clone https://github.com/google-cloudsearch/norconex-committer-plugin.git cd norconex-committer-plugin선택한 버전을 체크아웃하고 플러그인을 빌드합니다.
git checkout tags/v1-0.0.3 mvn package테스트를 건너뛰려면
mvn package -DskipTests를 사용합니다.JAR 파일을 Norconex
lib디렉터리에 복사합니다.cp target/google-cloudsearch-norconex-committer-plugin-v1-0.0.3.jar ~/norconex/norconex-collector-http-VERSION/lib빌드된 ZIP 파일을 추출합니다.
unzip target/google-cloudsearch-norconex-committer-plugin-v1-0.0.3.zip cd google-cloudsearch-norconex-committer-plugin-v1-0.0.3설치 스크립트를 실행하고 Norconex
lib디렉터리의 전체 경로를 제공합니다.sh install.sh중복 파일이 있는지 묻는 메시지가 표시되면
1옵션을 선택합니다.
2단계: Cloud Search 구성
Norconex 디렉터리에 sdk-configuration.properties을 만듭니다. 파일은 다음 매개변수를 지정해야 합니다.
| 설정 | 매개변수 |
| 데이터 소스 ID | api.sourceId = 1234567890abcdef
필수. Google Workspace 관리자의 소스 ID입니다. |
| 서비스 계정 | api.serviceAccountPrivateKeyFile = ./PrivateKey.json
필수. 서비스 계정 키 파일입니다. |
sdk-configuration.properties 예:
# data source access
api.sourceId=1234567890abcdef
api.serviceAccountPrivateKeyFile=./PrivateKey.json
batch.*와 같은 매개변수를 포함하여 플러그인이 데이터를 푸시하는 방식을 제어할 수도 있습니다. Google 제공 커넥터 매개변수를 참고하세요.
메타데이터를 채우려면 다음 선택적 매개변수를 구성하세요.
| 설정 | 매개변수 |
| 제목 | itemMetadata.title.field=movieTitle |
| 스키마 객체 유형 | itemMetadata.objectType=movie |
3단계: Norconex HTTP Collector 구성
플러그인에는 샘플 파일인 minimum-config.xml이 포함되어 있습니다.
Norconex 디렉터리로 변경하고 샘플을 복사합니다.
cd ~/norconex/norconex-collector-http-VERSION/ cp examples/minimum/minimum-config.xml gcs-crawl-config.xmlgcs-crawl-config.xml를 수정하여<committer>및<tagger>노드를 추가하거나 대체합니다.
| 설정 | 매개변수 |
<committer> 노드 |
<committer class="com.norconex.committer.googlecloudsearch.GoogleCloudSearchCommitter">
필수. <httpcollector> 노드 아래에 이를 추가합니다. |
<uploadFormat> |
<uploadFormat>raw</uploadFormat>
선택사항. raw 또는 text. 기본값은 raw입니다. |
gcs-crawl-config.xml 예:
<committer class="com.norconex.committer.googlecloudsearch.GoogleCloudSearchCommitter">
<configFilePath>/full/path/to/gcs-sdk-config.properties</configFilePath>
<uploadFormat>raw</uploadFormat>
</committer>
<importer>
<preParseHandlers>
<tagger class="com.norconex.committer.googlecloudsearch.BinaryContentTagger"/>
</preParseHandlers>
</importer>
4단계: 웹 크롤링 구성
다음과 같이 필요에 따라 <crawler> 노드를 구성합니다.
- 시작 URL
- 최대 크롤링 깊이
- 스레드 수
Norconex 구성 페이지를 참고하세요.
5단계: 웹 크롤링 시작 및 콘텐츠 업로드
로컬 모드에서 수집기를 실행합니다.
./collector-http[.bat|.sh] -a start -c gcs-crawl-config.xml
JEF Monitor로 크롤러 모니터링
Norconex JEF (Job Execution Framework) Monitor는 진행 상황을 그래픽으로 표시합니다. JEF Monitor로 크롤러 모니터링을 참고하세요.