เครื่องมือเชื่อมต่อทั้งหมดมีไฟล์การกำหนดค่าที่เชื่อมโยงซึ่งมีพารามิเตอร์ที่เครื่องมือเชื่อมต่อใช้ เช่น รหัสสำหรับที่เก็บ พารามิเตอร์ถือเป็นคู่คีย์-ค่า เช่น api.sourceId=1234567890abcdef
Google Cloud Search SDK มีพารามิเตอร์การกำหนดค่าที่ Google มีให้หลายรายการซึ่งใช้โดยเครื่องมือเชื่อมต่อต่างๆ ในพารามิเตอร์การกำหนดค่าที่ Google มีให้ มีเพียงพารามิเตอร์การเข้าถึงแหล่งข้อมูลเท่านั้นที่ต้องกําหนดในไฟล์การกำหนดค่า คุณไม่จําเป็นต้องกําหนดค่าพารามิเตอร์ที่ Google ให้ใหม่ในไฟล์การกำหนดค่า เว้นแต่คุณต้องการลบล้างค่าเริ่มต้น
ข้อมูลอ้างอิงนี้อธิบายพารามิเตอร์การกำหนดค่าที่ Google มีให้
ตัวอย่างไฟล์การกำหนดค่า
ตัวอย่างต่อไปนี้แสดงไฟล์การกำหนดค่าข้อมูลประจำตัวที่มีคู่คีย์-ค่าของพารามิเตอร์
# # Configuration file sample # api.sourceId=1234567890abcdef api.identitySourceId=0987654321lmnopq api.serviceAccountPrivateKeyFile= ./PrivateKey.json # # Traversal schedules # schedule.traversalIntervalSecs=7200 schedule.incrementalTraversalIntervalSecs=600 # # Default ACLs # defaultAcl.mode=fallback defaultAcl.public=true
พารามิเตอร์ที่ตั้งค่าโดยทั่วไป
ส่วนนี้จะแสดงพารามิเตอร์การกำหนดค่าที่จำเป็นและไม่บังคับซึ่งตั้งไว้ตามปกติ หากคุณไม่เปลี่ยนค่าสำหรับพารามิเตอร์ที่ไม่บังคับ เครื่องมือเชื่อมต่อจะใช้ค่าเริ่มต้นที่ SDK ระบุไว้
การเข้าถึงแหล่งข้อมูล
ตารางต่อไปนี้แสดงพารามิเตอร์ทั้งหมดที่จำเป็นเพื่อให้ปรากฏในไฟล์การกำหนดค่า พารามิเตอร์ที่คุณใช้จะขึ้นอยู่กับประเภทของเครื่องมือเชื่อมต่อที่คุณกำลังสร้าง (เครื่องมือเชื่อมต่อเนื้อหาหรือเครื่องมือเชื่อมต่อข้อมูลประจำตัว)
การเกริ่นนำ | พารามิเตอร์ |
---|---|
รหัสแหล่งข้อมูล | api.sourceId=1234567890abcdef
เครื่องมือเชื่อมต่อจำเป็นต้องใช้พารามิเตอร์นี้เพื่อระบุตำแหน่งของที่เก็บ คุณจะได้รับค่านี้เมื่อเพิ่มแหล่งข้อมูลที่จะค้นหา พารามิเตอร์นี้ต้องอยู่ในไฟล์การกำหนดค่าเครื่องมือเชื่อมต่อ |
รหัสแหล่งที่มาของข้อมูลประจำตัว | api.identitySourceId=0987654321lmnopq
เครื่องมือเชื่อมต่อข้อมูลประจำตัวต้องใช้พารามิเตอร์นี้เพื่อระบุตำแหน่งของแหล่งที่มาของข้อมูลประจำตัวภายนอก คุณจะได้รับค่านี้เมื่อแมปข้อมูลประจำตัวของผู้ใช้ใน Cloud Search โดยพารามิเตอร์นี้ต้องอยู่ในไฟล์การกำหนดค่าเครื่องมือเชื่อมต่อข้อมูลประจำตัวทั้งหมด |
ไฟล์คีย์ส่วนตัวของบัญชีบริการ | api.serviceAccountPrivateKeyFile=./PrivateKey.json
พารามิเตอร์นี้มีคีย์ส่วนตัวที่จำเป็นสำหรับการเข้าถึงที่เก็บ โดยคุณจะได้รับค่านี้เมื่อกำหนดค่าการเข้าถึง REST API ของ Google Cloud Search โดยพารามิเตอร์นี้ต้องอยู่ในไฟล์การกำหนดค่าทั้งหมด |
รหัสบัญชีบริการ | api.serviceAccountId=123abcdef4567890
พารามิเตอร์นี้ระบุรหัสบัญชีบริการ ค่าสตริงว่างเริ่มต้นจะใช้ได้เมื่อไฟล์การกำหนดค่าระบุพารามิเตอร์ไฟล์คีย์ส่วนตัวเท่านั้น ต้องระบุพารามิเตอร์นี้หากไฟล์คีย์ส่วนตัวไม่ใช่คีย์ JSON |
รหัสบัญชี Google Workspace | api.customerId=123abcdef4567890
พารามิเตอร์นี้จะระบุรหัสบัญชีสำหรับบัญชี Google Workspace ขององค์กร คุณจะได้รับค่านี้เมื่อแมปข้อมูลประจำตัวของผู้ใช้ใน Cloud Search ต้องระบุพารามิเตอร์นี้เมื่อซิงค์ผู้ใช้โดยใช้เครื่องมือเชื่อมต่อข้อมูลประจำตัว |
URL ราก | api.rootUrl=baseURLPath
พารามิเตอร์นี้ระบุเส้นทาง URL หลักของบริการจัดทำดัชนี ค่าเริ่มต้นของพารามิเตอร์นี้เป็นสตริงว่างเปล่าที่แปลงเป็น |
กำหนดการข้ามผ่าน
พารามิเตอร์การตั้งเวลาจะกำหนดความถี่ที่เครื่องมือเชื่อมต่อรอระหว่างการข้ามผ่าน
การเกริ่นนำ | พารามิเตอร์ |
---|---|
การส่งผ่านเต็มรูปแบบเมื่อเริ่มต้นเครื่องมือเชื่อมต่อ | schedule.performTraversalOnStart=true|false
เครื่องมือเชื่อมต่อจะข้ามผ่านอย่างเต็มรูปแบบเมื่อเริ่มต้นเครื่องมือเชื่อมต่อ แทนที่จะรอให้ช่วงแรกหมดอายุ ค่าเริ่มต้นคือ |
การส่งผ่านเต็มรูปแบบหลังจากช่วงเวลา | schedule.traversalIntervalSecs=intervalInSeconds
ตัวเชื่อมต่อจะดำเนินการข้ามผ่านอย่างเต็มรูปแบบหลังจากช่วงเวลาที่ระบุ ระบุช่วงเวลาระหว่างการส่งผ่านเป็นวินาที ค่าเริ่มต้นคือ |
ออกหลังจากข้ามผ่านครั้งเดียว | connector.runOnce=true|false
เครื่องมือเชื่อมต่อจะเรียกใช้การข้ามผ่านเต็มรูปแบบ 1 ครั้งแล้วออก ควรตั้งค่าพารามิเตอร์นี้เป็น |
การส่งผ่านที่เพิ่มขึ้นหลังช่วงหนึ่ง | schedule.incrementalTraversalIntervalSecs=intervalInSeconds
เครื่องมือเชื่อมต่อจะข้ามผ่านเพิ่มหลังจากผ่านช่วงที่ระบุ
ระบุช่วงเวลาระหว่างการส่งผ่านในหน่วยวินาที ค่าเริ่มต้นคือ |
ช่วงเวลาในคิวแบบสำรวจที่กำหนดเวลาไว้ | schedule.pollQueueIntervalSecs=interval_in_seconds
ช่วงเวลาระหว่างช่วงของคิวการสำรวจความคิดเห็นที่กำหนดเวลาไว้ (เป็นวินาที) ซึ่งใช้โดยเครื่องมือเชื่อมต่อการข้ามผ่านรายการเท่านั้น ค่าเริ่มต้นคือ |
รายการควบคุมการเข้าถึง
เครื่องมือเชื่อมต่อจะควบคุมการเข้าถึงรายการโดยใช้ ACL พารามิเตอร์หลายรายการช่วยให้คุณป้องกันการเข้าถึงของผู้ใช้ไปยังระเบียนที่จัดทำดัชนีด้วย ACL ได้
หากที่เก็บมีข้อมูล ACL แต่ละรายการที่เชื่อมโยงกับแต่ละรายการ ให้อัปโหลดข้อมูล ACL ทั้งหมดเพื่อควบคุมการเข้าถึงรายการภายใน Cloud Search หากที่เก็บของคุณให้ข้อมูล ACL บางส่วนหรือไม่มีข้อมูลเลย คุณสามารถระบุข้อมูล ACL เริ่มต้นในพารามิเตอร์ต่อไปนี้ซึ่ง SDK จัดเตรียมไว้ให้เครื่องมือเชื่อมต่อ
การเกริ่นนำ | พารามิเตอร์ |
---|---|
โหมด ACL | defaultAcl.mode=mode
กำหนดเวลาที่จะใช้ ACL เริ่มต้น ค่าที่ถูกต้อง:
โหมดเริ่มต้นคือ |
ACL สาธารณะเริ่มต้น | defaultAcl.public=true|false
ACL เริ่มต้นที่ใช้สำหรับที่เก็บทั้งหมดได้รับการตั้งค่าเป็นการเข้าถึงสาธารณสมบัติ
ค่าเริ่มต้นคือ |
ผู้อ่านกลุ่ม ACL ทั่วไป | defaultAcl.readers.groups=google:group1@mydomain.com,
group2 |
ผู้อ่าน ACL ทั่วไป | defaultAcl.readers.users=user1, user2,
google:user3@mydomain.com |
ACL ทั่วไปที่ปฏิเสธผู้อ่านกลุ่ม | defaultAcl.denied.groups=group3 |
Acl ทั่วไปที่ผู้อ่านถูกปฏิเสธ | defaultAcl.denied.users=user4, user5 |
การเข้าถึงทั้งโดเมน | หากต้องการระบุว่าผู้ใช้ทุกรายในโดเมนจะเข้าถึงระเบียนที่จัดทำดัชนีทั้งหมดแบบสาธารณะได้โดยตั้งค่าพารามิเตอร์ทั้ง 2 รายการต่อไปนี้ด้วยค่า
|
ACL ที่กำหนดค่าทั่วไป | หากต้องการระบุ ACL 1 รายการสำหรับระเบียนแต่ละรายการของที่เก็บข้อมูล ให้ตั้งค่าค่าพารามิเตอร์ต่อไปนี้ทั้งหมด
|
พารามิเตอร์การกำหนดค่าข้อมูลเมตา
ข้อมูลเมตาบางรายการสามารถกำหนดค่าได้ เครื่องมือเชื่อมต่อจะตั้งค่าช่องข้อมูลเมตาที่กำหนดค่าได้ในระหว่างการจัดทำดัชนี หากเครื่องมือเชื่อมต่อไม่ได้ตั้งค่าช่องไว้ ระบบจะใช้พารามิเตอร์ในไฟล์การกำหนดค่าเพื่อตั้งค่าช่อง
ไฟล์การกำหนดค่ามีชุดพารามิเตอร์การกำหนดค่าข้อมูลเมตาที่มีชื่อซึ่งระบุด้วยคำต่อท้าย .field
เช่น itemMetadata.title.field=movieTitle
หากมีค่าสำหรับพารามิเตอร์เหล่านี้
จะใช้เพื่อกำหนดค่าช่องข้อมูลเมตา หากไม่มีค่าสำหรับพารามิเตอร์ข้อมูลเมตาที่มีชื่อ ระบบจะกำหนดค่าข้อมูลเมตาโดยใช้พารามิเตอร์ที่มีคำต่อท้าย .defaultValue
)
ตารางต่อไปนี้แสดงพารามิเตอร์การกำหนดค่าข้อมูลเมตา
การตั้งค่า | พารามิเตอร์ |
ชื่อ | itemMetadata.title.field=movieTitle
itemMetadata.title.defaultValue=
ชื่อสินค้า หากไม่ได้กำหนด title.field เป็นค่า ระบบจะใช้ค่าสำหรับ title.defaultValue
|
URL ที่เก็บซอร์ส | itemMetadata.sourceRepositoryUrl.field=url
itemMetadata.sourceRepositoryUrl.defaultValue=https://www.imdb.com/title/tt0031381/
URL ของสินค้าที่ใช้ในผลการค้นหา คุณอาจตั้งค่า defaultValue เพื่อเก็บ URL ของที่เก็บทั้งหมด เช่น หากการตอบกลับเป็นไฟล์ CSV และมี URL เพียงรายการเดียวสำหรับแต่ละรายการ หากไม่ได้กำหนด sourceRepositoryUrl.field เป็นค่า ระบบจะใช้ค่าของ sourceRepositoryUrl.defaultValue
|
ชื่อคอนเทนเนอร์ | itemMetadata.containerName.field=containerName
itemMetadata.containerName.defaultValue=myDefaultContainerName
ชื่อคอนเทนเนอร์ของรายการ เช่น ชื่อไดเรกทอรีหรือโฟลเดอร์ระบบไฟล์ หากไม่ได้กำหนด containerName.field เป็นค่า ระบบจะใช้ค่าสำหรับ containerName.defaultValue
|
ประเภทของออบเจ็กต์ | itemMetadata.objectType.field=type itemMetadata.objectType.defaultValue=
ประเภทออบเจ็กต์ที่เครื่องมือเชื่อมต่อใช้ตามที่ระบุไว้ในสคีมา เครื่องมือเชื่อมต่อจะไม่จัดทำดัชนี Structured Data หากไม่ได้ระบุพร็อพเพอร์ตี้นี้ หากไม่ได้กำหนด objectType.field เป็นค่า ระบบจะใช้ค่าสำหรับ objectType.defaultValue
|
เวลาสร้าง | itemMetadata.createTime.field=releaseDate
itemMetadata.createTime.defaultValue=1940-01-17
การประทับเวลาการสร้างเอกสาร หากไม่ได้กำหนด createTime.field เป็นค่า ระบบจะใช้ค่าของ createTime.defaultValue
|
เวลาอัปเดต | itemMetadata.updateTime.field=releaseDate
itemMetadata.updateTime.defaultValue=1940-01-17
การประทับเวลาการแก้ไขล่าสุดของรายการ หากไม่ได้กำหนด updateTime.field เป็นค่า ระบบจะใช้ค่าของ updateTime.defaultValue
|
ภาษาของเนื้อหา | itemMetadata.contentLanguage.field=languageCode
itemMetadata.contentLanguage.defaultValue=
ภาษาของเนื้อหาสำหรับเอกสารที่จัดทำดัชนี หากไม่ได้กำหนด contentLanguage.field เป็นค่า ระบบจะใช้ค่าสำหรับ contentLanguage.defaultValue
|
ประเภท MIME | itemMetadata.mimeType.field=mimeType
itemMetadata.mimeType.defaultValue=
ประเภท MIME ดั้งเดิมของ ItemContent.content ในที่เก็บต้นทาง มีความยาวได้สูงสุดไม่เกิน 256 อักขระ หากไม่ได้กำหนด mimeType.field เป็นค่า ระบบจะใช้ค่าสำหรับ mimeType.defaultValue
|
ข้อมูลเมตาเกี่ยวกับคุณภาพการค้นหา | itemMetadata.searchQualityMetadata.quality.field=quality
itemMetadata.searchQualityMetadata.quality.defaultValue=
ตัวบ่งชี้คุณภาพของสินค้า ซึ่งใช้เพื่อสร้างอิทธิพลต่อคุณภาพการค้นหา ค่าควรอยู่ระหว่าง 0.0 (คุณภาพต่ำสุด) ถึง 1.0 (คุณภาพสูงสุด) ค่าเริ่มต้นคือ 0.0 หากไม่ได้กำหนด quality.field เป็นค่า ระบบจะใช้ค่าสำหรับ quality.defaultValue
|
แฮช | itemMetadata.hash.field=hash
itemMetadata.hash.defaultValue=f0fda58630310a6dd91a7d8f0a4ceda2
ค่าการแฮชที่ระบุโดยตัวเรียกใช้ API กรณีนี้ใช้กับเมธอด items.push เพื่อคํานวณสถานะที่แก้ไขได้ ความยาวสูงสุดคือ 2,048 อักขระ หากไม่ได้กำหนด hash.field เป็นค่า ระบบจะใช้ค่าสำหรับ hash.defaultValue
|
รูปแบบวันที่และเวลา
รูปแบบวันที่และเวลาจะระบุรูปแบบที่ต้องการในแอตทริบิวต์ข้อมูลเมตา หากไฟล์การกำหนดค่าไม่มีพารามิเตอร์นี้ ระบบจะใช้ค่าเริ่มต้น ตารางต่อไปนี้จะแสดงพารามิเตอร์นี้
การตั้งค่า | พารามิเตอร์ |
รูปแบบวันที่และเวลาเพิ่มเติม | structuredData.dateTimePatterns=MM/dd/uuuu HH:mm:ssXXX
รายการรูปแบบเพิ่มเติม java.time.format.DateTimeFormatter ที่คั่นด้วยเครื่องหมายอัฒภาค ระบบจะใช้รูปแบบดังกล่าวเมื่อแยกวิเคราะห์ค่าสตริงสำหรับช่องวันที่หรือวันที่และเวลาในข้อมูลเมตาหรือสคีมา ค่าเริ่มต้นจะเป็นรายการที่ว่างเปล่า แต่ระบบจะรองรับรูปแบบ RFC 3339 และ RFC 1123 เสมอ
|
Structured Data
Cloud Search Indexing API ให้บริการสคีมาที่คุณใช้เพื่อปรับแต่งวิธีที่ Cloud Search จัดทำดัชนีและแสดงข้อมูลได้ หากใช้สคีมาที่เก็บในเครื่อง คุณต้องระบุชื่อสคีมาภายในสำหรับ Structured Data
การเกริ่นนำ | พารามิเตอร์ |
---|---|
ชื่อสคีมาในเครื่อง | structuredData.localSchema=mySchemaName
ระบบอ่านชื่อสคีมาจากแหล่งข้อมูลและใช้สำหรับข้อมูลที่มีโครงสร้างของที่เก็บ โดยค่าเริ่มต้นจะเป็นสตริงว่างเปล่า |
คุณภาพเนื้อหาและการค้นหา
สำหรับที่เก็บที่มีเนื้อหาอิงตามระเบียนหรือเนื้อหาในช่อง (เช่น CRM, CVS หรือฐานข้อมูล) SDK จะอนุญาตให้จัดรูปแบบ HTML สำหรับช่องข้อมูลโดยอัตโนมัติ เครื่องมือเชื่อมต่อจะกำหนดช่องข้อมูลเมื่อเริ่มต้นการดำเนินการของเครื่องมือเชื่อมต่อ จากนั้นใช้เทมเพลตเนื้อหาเพื่อจัดรูปแบบบันทึกข้อมูลแต่ละรายการก่อนอัปโหลดไปยัง Cloud Search
เทมเพลตเนื้อหาจะกำหนดความสำคัญของค่าในช่องแต่ละรายการสำหรับการค้นหา
ต้องกรอกข้อมูลในช่อง HTML <title>
และกำหนดให้มีลำดับความสำคัญสูงสุด คุณกำหนดระดับความสำคัญด้านคุณภาพการค้นหาสำหรับช่องเนื้อหาอื่นๆ ทั้งหมดได้ ซึ่งได้แก่ สูง ปานกลาง หรือต่ำ ช่องเนื้อหาที่ไม่ได้กำหนดในหมวดหมู่ที่เจาะจงจะมีค่าเริ่มต้นเป็นลำดับความสำคัญต่ำ
การเกริ่นนำ | พารามิเตอร์ |
---|---|
ชื่อ HTML ของเนื้อหา | contentTemplate.templateName.title=myTitleField
ช่องชื่อ HTML ของเนื้อหาและช่องคุณภาพการค้นหาสูงสุด ต้องระบุพารามิเตอร์นี้ก็ต่อเมื่อคุณใช้เทมเพลตเนื้อหา HTML เท่านั้น ค่าเริ่มต้นคือสตริงว่างเปล่า |
คุณภาพการค้นหาสูงสำหรับช่องเนื้อหา | contentTemplate.templateName.quality.high=hField1,hField2
ช่องเนื้อหาที่มีลำดับความสำคัญในการค้นหาสูง โดยค่าเริ่มต้นจะเป็นสตริงว่างเปล่า |
คุณภาพการค้นหาปานกลางสำหรับช่องเนื้อหา | contentTemplate.templateName.quality.medium=mField1,mField2
ช่องเนื้อหาที่มีลำดับความสำคัญการค้นหาปานกลาง โดยค่าเริ่มต้นจะเป็นสตริงว่างเปล่า |
คุณภาพการค้นหาต่ำสำหรับช่องเนื้อหา | contentTemplate.templateName.quality.low=lField1,lField2
ช่องเนื้อหาที่มีลำดับความสำคัญการค้นหาต่ำ โดยค่าเริ่มต้นจะเป็นสตริงว่างเปล่า |
ช่องเนื้อหาที่ไม่ระบุ | contentTemplate.templateName.unmappedColumnsMode=value
วิธีที่เครื่องมือเชื่อมต่อจัดการช่องเนื้อหาที่ไม่ระบุ ค่าที่ใช้ได้มีดังนี้
|
รวมชื่อช่องในเทมเพลต HTML | contentTemplate.templateName.includeFieldName=true|false
ระบุว่าจะรวมชื่อช่องพร้อมกับข้อมูลช่องในเทมเพลต HTML หรือไม่ ค่าเริ่มต้นคือ |
พารามิเตอร์ที่ตั้งค่าไม่ปกติ
คุณแทบจะไม่ต้องตั้งค่าพารามิเตอร์ที่แสดงในส่วนนี้ ระบบจะตั้งค่าเริ่มต้นของพารามิเตอร์เพื่อประสิทธิภาพสูงสุด Google ไม่แนะนำให้ตั้งค่าพารามิเตอร์เหล่านี้ให้มีค่าแตกต่างจากค่าเริ่มต้นโดยไม่มีข้อกำหนดที่เฉพาะเจาะจงในที่เก็บของคุณ
การกำหนดค่าพร็อกซี
SDK อนุญาตให้คุณกำหนดค่าเครื่องมือเชื่อมต่อเพื่อใช้พร็อกซีสำหรับการเชื่อมต่อขาออก
ต้องมีพารามิเตอร์ transport.proxy.hostname
และ transport.proxy.port
เพื่อเปิดใช้การรับส่งข้อมูลผ่านพร็อกซี คุณอาจต้องระบุพารามิเตอร์อื่นๆ หากพร็อกซีต้องมีการตรวจสอบสิทธิ์หรือทำงานผ่านโปรโตคอล SOCKS แทน HTTP หากไม่ได้ตั้งค่า transport.proxy.hostname
SDK จะไม่ใช้พร็อกซี
การเกริ่นนำ | พารามิเตอร์ |
---|---|
ชื่อโฮสต์ | transport.proxy.hostname=hostname
ชื่อโฮสต์สำหรับพร็อกซีเซิร์ฟเวอร์ ต้องระบุพารามิเตอร์นี้เมื่อใช้พร็อกซี |
พอร์ต | transport.proxy.port=port
หมายเลขพอร์ตสำหรับพร็อกซีเซิร์ฟเวอร์ ต้องระบุพารามิเตอร์นี้เมื่อใช้พร็อกซี |
ประเภทพร็อกซี | transport.proxy.type=type
ประเภทของพร็อกซี ค่าที่ใช้ได้มีดังนี้
ค่าเริ่มต้นคือ |
ชื่อผู้ใช้ | transport.proxy.username=username
ชื่อผู้ใช้ที่จะใช้เมื่อสร้างโทเค็นการให้สิทธิ์พร็อกซี พารามิเตอร์นี้เป็นแบบไม่บังคับและควรตั้งค่าเมื่อพร็อกซีต้องมีการตรวจสอบสิทธิ์เท่านั้น |
รหัสผ่าน | transport.proxy.password=password
รหัสผ่านที่จะใช้เมื่อสร้างโทเค็นการให้สิทธิ์พร็อกซี พารามิเตอร์นี้เป็นแบบไม่บังคับและควรตั้งค่าเมื่อพร็อกซีต้องมีการตรวจสอบสิทธิ์เท่านั้น |
เครื่องตัดหญ้าแบบข้ามผ่าน
SDK ให้คุณระบุตัวข้ามผ่านเดี่ยวๆ เพื่ออนุญาตการข้ามผ่านแบบขนานของที่เก็บข้อมูล เครื่องมือเชื่อมต่อเทมเพลต SDK ใช้ฟีเจอร์นี้
การเกริ่นนำ | พารามิเตอร์ |
---|---|
ขนาดพูลชุดข้อความ | traverse.threadPoolSize=size
จำนวนชุดข้อความที่เครื่องมือเชื่อมต่อสร้างขึ้นเพื่อให้ใช้การประมวลผลแบบคู่ขนานได้ ตัววนซ้ำตัวเดียวจะดึงการดำเนินการตามลำดับ (โดยทั่วไปคือออบเจ็กต์ RepositoryDoc) แต่ API จะประมวลผลพร้อมกันโดยใช้เทรดจำนวนนี้ ค่าเริ่มต้นคือ |
ขนาดพาร์ติชัน | traverse.partitionSize=batchSize
จำนวน ค่าเริ่มต้นคือ |
คำขอแบบสำรวจของ Traverser
หลักของคิวการจัดทำดัชนี Cloud Search คือคิวลำดับความสำคัญที่มีรายการสำหรับแต่ละรายการที่มีอยู่ เครื่องมือเชื่อมต่อข้อมูลจะขอสำรวจรายการจาก API การจัดทำดัชนีได้ คำขอแบบสำรวจจะได้รับรายการลำดับความสำคัญสูงสุดจากคิวการจัดทำดัชนี
เทมเพลตเครื่องมือเชื่อมต่อข้อมูล SDK ใช้พารามิเตอร์ต่อไปนี้เพื่อกำหนดพารามิเตอร์แบบสำรวจ
การเกริ่นนำ | พารามิเตอร์ |
---|---|
ตัวข้ามผ่านที่เก็บ | repository.traversers=t1, t2, t3, ...
สร้างตัวข้ามผ่านอิสระอย่างน้อย 1 รายการโดยที่ t1, t2, t3, ... เป็นชื่อที่ไม่ซ้ำกันของแต่ละรายการ ตัวข้ามผ่านที่มีชื่อแต่ละรายการจะมีชุดการตั้งค่าของตนเองซึ่งกำหนดโดยใช้ชื่อที่ไม่ซ้ำกันของผู้ให้บริการข้ามผ่าน เช่น |
คิวที่จะสำรวจ | traverser.pollRequest.queue=mySpecialQueue
ชื่อคิวที่ผู้ตรวจสอบรายนี้สำรวจ ค่าเริ่มต้นคือสตริงว่างเปล่า (หมายความว่า "ค่าเริ่มต้น") |
traverser.t1.pollRequest.queue=mySpecialQueue
เมื่อคุณมีผู้ใช้ข้ามผ่านหลายคน ให้ตั้งค่าสถานะของรายการสำหรับผู้ข้ามผ่านแต่ละราย (โดยที่ t1 หมายถึงตัวข้ามผ่านที่เฉพาะเจาะจง) |
|
ลักษณะแบบสำรวจ | traverser.pollRequest.limit=maxItems
จำนวนรายการสูงสุดที่จะแสดงจากคำขอแบบสำรวจ
ค่าเริ่มต้นคือ |
traverser.t1.pollRequest.limit=limit
เมื่อคุณมีผู้ใช้ข้ามผ่านหลายคน ให้ตั้งค่าสถานะของรายการสำหรับผู้ข้ามผ่านแต่ละราย (โดยที่ t1 หมายถึงตัวข้ามผ่านที่เฉพาะเจาะจง) |
|
สถานะรายการ | traverser.pollRequest.statuses=statuses
สถานะของรายการที่ผู้ข้ามผ่านนี้สำรวจ โดย statuses สามารถเป็น |
traverser.t1.pollRequest.statuses=statusesForThisTraverser
เมื่อคุณมีผู้ใช้ข้ามผ่านหลายคน ให้ตั้งค่าสถานะของรายการสำหรับผู้ข้ามผ่านแต่ละราย (โดยที่ t1 หมายถึงตัวข้ามผ่านที่เฉพาะเจาะจง) | |
โหลดของโฮสต์ | traverser.hostload=threads
จำนวนชุดข้อความคู่ขนานที่ใช้งานอยู่สูงสุดที่ใช้ได้สำหรับการสำรวจ ค่าเริ่มต้นคือ |
traverser.t1.hostload=threadsForThisTraverser
เมื่อคุณมีผู้ใช้ข้ามผ่านหลายคน ให้ตั้งค่าสถานะของรายการสำหรับผู้ข้ามผ่านแต่ละราย (โดยที่ t1 หมายถึงตัวข้ามผ่านที่เฉพาะเจาะจง) |
|
หมดเวลา | traverser.timeout=timeout
ค่าระยะหมดเวลาสำหรับขัดจังหวะความพยายามในการสำรวจแบบสำรวจนี้ ค่าเริ่มต้นคือ |
traverser.t1.timeout=timeoutForThisTraverser
เมื่อคุณมีผู้ใช้ข้ามผ่านหลายคน ให้ตั้งค่าสถานะของรายการสำหรับผู้ข้ามผ่านแต่ละราย (โดยที่ t1 หมายถึงตัวข้ามผ่านที่เฉพาะเจาะจง) |
|
traverser.timeunit=timeoutUunit
หน่วยการหมดเวลา ค่าที่ถูกต้องคือ |
|
traverser.t1.timeunit=timeoutUnit
เมื่อคุณมีผู้ใช้ข้ามผ่านหลายคน ให้ตั้งค่าสถานะของรายการสำหรับผู้ข้ามผ่านแต่ละราย (โดยที่ t1 หมายถึงตัวข้ามผ่านที่เฉพาะเจาะจง) |
ในกรณีส่วนใหญ่ เครื่องมือเชื่อมต่อที่ใช้เทมเพลตเครื่องมือเชื่อมต่อข้อมูล SDK ต้องใช้พารามิเตอร์ชุดเดียวเท่านั้นสำหรับการสำรวจ ในบางกรณี คุณอาจต้องกำหนดเกณฑ์การสำรวจมากกว่า 1 เกณฑ์หากอัลกอริทึมการข้ามผ่านต้องมีการแยกการประมวลผลรายการโดยใช้คิวที่แตกต่างกัน เป็นต้น
ในกรณีนี้ คุณมีตัวเลือกในการกำหนดพารามิเตอร์แบบสำรวจหลายชุด เริ่มต้นด้วยการระบุชื่อของชุดพารามิเตอร์โดยใช้ repository.traversers
สำหรับชื่อตัวข้ามผ่านที่กำหนดแต่ละรายการ ให้ส่งไฟล์การกำหนดค่าด้วยพารามิเตอร์ในตารางด้านบน โดยแทนที่ t1
ด้วยชื่อตัวข้ามผ่าน การดำเนินการนี้จะสร้างชุดพารามิเตอร์การสำรวจสำหรับตัวข้ามผ่านที่กำหนดแต่ละรายการ
จุดตรวจสอบ
จุดตรวจสอบมีประโยชน์สำหรับการติดตามสถานะของการข้ามผ่านที่เพิ่มขึ้น
การเกริ่นนำ | พารามิเตอร์ |
---|---|
ไดเรกทอรีจุดตรวจสอบ | connector.checkpointDirectory=/path/to/checkpoint
ระบุเส้นทางไปยังไดเรกทอรีภายในเพื่อใช้เป็นจุดตรวจสอบการข้ามผ่านส่วนเพิ่มและเต็มรูปแบบ |
การอัปโหลดเนื้อหา
ระบบจะอัปโหลดเนื้อหารายการไปยัง Cloud Search พร้อมกับรายการดังกล่าวเมื่อเนื้อหามีขนาดไม่เกินเกณฑ์ที่ระบุ หากเนื้อหามีขนาดเกินเกณฑ์ ระบบจะอัปโหลดเนื้อหาแยกจากข้อมูลเมตาและข้อมูลที่มีโครงสร้างของรายการ
การเกริ่นนำ | พารามิเตอร์ |
---|---|
เกณฑ์ของเนื้อหา | api.contentUploadThresholdBytes=bytes
เกณฑ์สำหรับเนื้อหาที่ระบุว่ามีการอัปโหลดแบบ "แทรก" พร้อมกับสินค้าหรือไม่โดยใช้การอัปโหลดแยกต่างหาก ค่าเริ่มต้นคือ |
คอนเทนเนอร์
เทมเพลตเครื่องมือเชื่อมต่อเต็มรูปแบบใช้อัลกอริทึมที่เกี่ยวข้องกับแนวคิดของการสลับคิวแหล่งข้อมูลชั่วคราวเพื่อตรวจหาระเบียนที่ถูกลบในฐานข้อมูล ซึ่งหมายความว่าในการข้ามผ่านทั้งหมดแต่ละครั้ง ระเบียนที่ดึงข้อมูลซึ่งอยู่ในคิวใหม่จะแทนที่ระเบียน Cloud Search ที่มีอยู่ทั้งหมดที่จัดทำดัชนีจากการข้ามผ่านก่อนหน้านี้ซึ่งอยู่ในคิวเก่า
การเกริ่นนำ | พารามิเตอร์ |
---|---|
แท็กชื่อคอนเทนเนอร์ | traverse.queueTag=instance
หากต้องการเรียกใช้เครื่องมือเชื่อมต่อหลายอินสแตนซ์พร้อมกันเพื่อจัดทำดัชนีที่เก็บข้อมูลทั่วไป (ไม่ว่าจะอยู่ในที่เก็บข้อมูลที่แตกต่างกันหรือแยกส่วนต่างๆ ของที่เก็บข้อมูลทั่วไป) โดยไม่รบกวนกันและกัน ให้กำหนดแท็กชื่อคอนเทนเนอร์ที่ไม่ซ้ำกันให้กับการเรียกใช้เครื่องมือเชื่อมต่อแต่ละรายการ แท็กชื่อที่ไม่ซ้ำกันจะป้องกันไม่ให้อินสแตนซ์ เครื่องมือเชื่อมต่อลบระเบียนของผู้อื่น แท็กชื่อจะต่อท้ายรหัสคิวการเปิด/ปิดของตัวเชื่อมต่อการข้ามผ่านเต็มรูปแบบ |
ปิดใช้การตรวจหาการลบ | traverse.useQueues=true|false
ระบุว่าเครื่องมือเชื่อมต่อใช้ตรรกะการสลับคิวสำหรับการตรวจหาการลบหรือไม่ ค่าเริ่มต้นคือ หมายเหตุ: พารามิเตอร์การกำหนดค่านี้ใช้ได้กับเครื่องมือเชื่อมต่อที่ใช้เทมเพลต |
นโยบายแบบกลุ่ม
SDK รองรับนโยบายแบบกลุ่มที่ช่วยให้คุณดำเนินการต่อไปนี้ได้
- คำขอแบบกลุ่ม
- ระบุจำนวนคำขอในคิวแบบกลุ่ม
- จัดการการทำงานเป็นกลุ่มพร้อมกัน
- ล้างคำขอแบบกลุ่ม
SDK จะจัดกลุ่มคำขอของเครื่องมือเชื่อมต่อเข้าด้วยกันเพื่อเร่งอัตราการส่งข้อมูลระหว่างการอัปโหลด ทริกเกอร์ SDK สำหรับการอัปโหลดกลุ่มคำขอจะขึ้นอยู่กับจำนวนคำขอหรือระยะหมดเวลา ขึ้นอยู่กับว่ากรณีใดจะเกิดขึ้นก่อน เช่น หากเวลาล่าช้าของกลุ่มหมดอายุแล้วโดยที่ไม่ถึงขนาดกลุ่ม หรือหากถึงจำนวนรายการในขนาดกลุ่มก่อนหมดเวลาหน่วงเวลาดังกล่าว ระบบจะทริกเกอร์การอัปโหลดเป็นกลุ่ม
การเกริ่นนำ | พารามิเตอร์ |
---|---|
คำขอแบบกลุ่ม | batch.batchSize
คำขอแบบกลุ่ม ค่าเริ่มต้นคือ |
จำนวนคำขอในคิวแบบกลุ่ม | batch.maxQueueLength=maxQueueLength
จำนวนคำขอสูงสุดในคิวแบบกลุ่มสำหรับการดำเนินการ
ค่าเริ่มต้นคือ |
กำลังดำเนินการเป็นกลุ่ม | batch.maxActiveBatches=maxActiveBatches
จำนวนกลุ่มดำเนินการพร้อมกันที่อนุญาต
ค่าเริ่มต้นคือ |
ล้างคำขอแบบกลุ่มโดยอัตโนมัติ | batch.maxBatchDelaySeconds=maxBatchDelay
จำนวนวินาทีที่ต้องรอก่อนที่คำขอเป็นกลุ่มจะถูกล้างโดยอัตโนมัติ ค่าเริ่มต้นคือ |
ล้างคำขอเป็นกลุ่มเมื่อปิดเครื่อง | batch.flushOnShutdown=true|false
ล้างคำขอแบบกลุ่มระหว่างปิดบริการ
ค่าเริ่มต้นคือ |
เครื่องจัดการข้อยกเว้น
พารามิเตอร์ของตัวแฮนเดิลข้อยกเว้นจะกำหนดการดำเนินการของตัวข้ามผ่านหลังจากที่พบข้อยกเว้น
การเกริ่นนำ | พารามิเตอร์ |
---|---|
คำสั่ง Traverser ในกรณีที่เกิดข้อผิดพลาด | traverse.exceptionHandler=exceptions
ตัวข้ามผ่านควรดำเนินการอย่างไรหลังจากมีข้อยกเว้น ค่าที่ใช้ได้มีดังนี้
|
เวลารอระหว่างข้อยกเว้น | abortExceptionHander.backoffMilliSeconds=backoff
เวลาแบ็คออฟเป็นมิลลิวินาทีเพื่อรอระหว่างข้อยกเว้นของตัวแฮนเดิลที่ตรวจพบ (โดยปกติจะใช้เมื่อข้ามผ่านที่เก็บ) ค่าเริ่มต้นคือ |