วัตถุประสงค์
ในฐานะนักพัฒนาซอฟต์แวร์ คุณมักจะทำงานกับชุดข้อมูลที่มีที่อยู่ของลูกค้า จึงอาจมีคุณภาพไม่ดี คุณต้องตรวจสอบว่าที่อยู่ของ ใช้งานได้ตั้งแต่การยืนยันรหัสลูกค้า ไปจนถึงการนำส่ง และอื่นๆ
การตรวจสอบที่อยู่ API เป็นผลิตภัณฑ์จาก Google Maps Platform ที่ใช้ตรวจสอบที่อยู่ได้ อย่างไรก็ตาม ประมวลผลที่อยู่ทีละรายการ ในเอกสารนี้ เราจะมาดูวิธีใช้ การตรวจสอบที่อยู่ที่มีปริมาณสูงภายใต้สถานการณ์ต่างๆ ตั้งแต่การทดสอบ API เป็นการตรวจสอบที่อยู่แบบครั้งเดียวและแบบตามรอบ
กรณีการใช้งาน
คราวนี้เราจะมาทำความเข้าใจกรณีการใช้งานการตรวจสอบที่อยู่ปริมาณมาก มีประโยชน์
การทดสอบ
คุณมักต้องการทดสอบ Address Validation API ด้วยการเรียกใช้ ที่อยู่ คุณอาจมีที่อยู่ในไฟล์ค่าที่คั่นด้วยคอมมาและอยากได้ เพื่อตรวจสอบคุณภาพของที่อยู่
การตรวจสอบที่อยู่แบบครั้งเดียว
ขณะเริ่มต้นใช้งาน Address Validation API คุณต้องการตรวจสอบความถูกต้อง ฐานข้อมูลที่อยู่ที่มีอยู่เทียบกับฐานข้อมูลผู้ใช้
การตรวจสอบที่อยู่ที่เกิดซ้ำ
มีสถานการณ์มากมายที่ขอให้มีการตรวจสอบที่อยู่เป็นประจำ:
- คุณอาจมีงานที่กำหนดเวลาไว้เพื่อตรวจสอบความถูกต้องของรายละเอียดที่บันทึกไว้ ระหว่างวัน เช่น จากการสมัครของลูกค้า รายละเอียดคำสั่งซื้อ การจัดส่ง กำหนดการ
- คุณอาจได้รับดัมพ์ข้อมูลที่มีที่อยู่จากแผนกต่างๆ ตัวอย่างเช่น จากการขายไปสู่การตลาด แผนกใหม่ที่ได้รับ ที่อยู่เหล่านี้มักต้องการตรวจสอบก่อนใช้งาน
- คุณอาจรวบรวมที่อยู่ในระหว่างแบบสำรวจ หรือการโปรโมตต่างๆ และหลังจากนั้น ที่อัปเดตในระบบออนไลน์ คุณต้องการตรวจสอบว่าที่อยู่เหล่านี้ ที่ถูกต้องขณะป้อนข้อมูลลงในระบบ
ข้อมูลทางเทคนิคแบบเจาะลึก
สำหรับจุดประสงค์ของเอกสารนี้ เราสันนิษฐานว่า:
- คุณกำลังเรียกใช้ Address Validation API ด้วยที่อยู่จากลูกค้า ฐานข้อมูล (ซึ่งก็คือฐานข้อมูลที่มีรายละเอียดของลูกค้า)
- คุณสามารถแคชแฟล็กความถูกต้องไว้กับที่อยู่แต่ละรายการในฐานข้อมูลได้
- ระบบจะดึงข้อมูลการแจ้งความถูกต้องจาก Address Validation API เมื่อ ลูกค้าแต่ละรายเข้าสู่ระบบ
แคชสำหรับการใช้งานจริง
เมื่อใช้ Address Validation API คุณมักต้องการแคชข้อมูลบางส่วน การตอบกลับจากการเรียก API ขณะที่ข้อกำหนด ขีดจำกัดบริการ ข้อมูลที่สามารถแคชได้ ข้อมูลใดๆ ที่สามารถแคชจาก Address Validation API ต้องแคชกับบัญชีผู้ใช้ ซึ่งหมายความว่าในฐานข้อมูล ข้อมูลเมตาของที่อยู่ หรือข้อมูลเมตาของที่อยู่ต้องแคชกับที่อยู่อีเมลของผู้ใช้ หรือ รหัสหลักอื่นๆ
สำหรับ Use Case การตรวจสอบที่อยู่ปริมาณมาก การแคชข้อมูลต้องเป็นไปตาม Address Validation API เฉพาะบริการ ข้อกำหนด ตามที่ระบุไว้ในส่วนที่ 11.3 จากข้อมูลนี้ คุณจะทำสิ่งต่อไปนี้ได้ พิจารณาว่าที่อยู่ของผู้ใช้อาจไม่ถูกต้องหรือไม่ ซึ่งในกรณีนี้คุณจะต้องแจ้ง ผู้ใช้สำหรับที่อยู่ที่แก้ไขให้ถูกต้องในระหว่างการโต้ตอบกับ แอปพลิเคชัน
- ข้อมูลจาก AddressComponent
ออบเจ็กต์
confirmationLevel
inferred
spellCorrected
replaced
unexpected
ถ้าคุณต้องการแคชข้อมูลใดๆ เกี่ยวกับที่อยู่จริง ข้อมูลดังกล่าว ต้องแคชต่อเมื่อได้รับความยินยอมจากผู้ใช้เท่านั้น ซึ่งช่วยให้มั่นใจว่าผู้ใช้ ทราบเหตุผลที่บริการใดบริการหนึ่งต้องจัดเก็บที่อยู่ของตนและสามารถใช้ ข้อกำหนดในการแชร์ที่อยู่
ตัวอย่างความยินยอมของผู้ใช้คือการโต้ตอบโดยตรงกับที่อยู่อีคอมเมิร์ซ บนหน้าชำระเงิน เราเข้าใจว่าคุณจะแคชและ ประมวลผลที่อยู่เพื่อวัตถุประสงค์ในการจัดส่งพัสดุ
เมื่อได้รับความยินยอมจากผู้ใช้ คุณจะแคช formattedAddress
และคอมโพเนนต์หลักอื่นๆ ได้
จากคำตอบ แต่ในสถานการณ์ที่ไม่มีส่วนหัว ผู้ใช้ไม่สามารถ
ยินยอม เนื่องจากการตรวจสอบที่อยู่ดำเนินการจากแบ็กเอนด์ ดังนั้น
คุณสามารถแคชข้อมูลที่จำกัดมากในสถานการณ์ที่ไม่มีส่วนหัวนี้ได้
ทำความเข้าใจคำตอบ
ถ้าการตอบกลับ Address Validation API มีเครื่องหมายต่อไปนี้ มั่นใจได้ว่าที่อยู่ที่ป้อนมีคุณภาพสำหรับการนำส่ง
- เครื่องหมาย
addressComplete
ในคำตัดสิน ออบเจ็กต์คือtrue
validationGranularity
ในคำตัดสิน ออบเจ็กต์คือPREMISE
หรือSUB_PREMISE
- ไม่มี AddressComponent
ถูกทำเครื่องหมายว่า:
Inferred
(หมายเหตุ: inferred=true
อาจเกิดขึ้นได้เมื่อaddressComplete=true
)spellCorrected
replaced
unexpected
และ
confirmationLevel
: ระดับการยืนยันใน AddressComponent ตั้งค่าเป็นCONFIRMED
หรือUNCONFIRMED_BUT_PLAUSIBLE
หากการตอบกลับของ API ไม่มีเครื่องหมายด้านบน แสดงว่าที่อยู่ที่ป้อน มีคุณภาพไม่ดี และคุณสามารถแคชแฟล็กในฐานข้อมูลเพื่อแสดง ได้ การตั้งค่าสถานะในแคชจะระบุว่า ที่อยู่โดยรวมมีคุณภาพต่ำในขณะที่ ค่าสถานะที่ละเอียดขึ้น เช่น แก้ไขตัวสะกดแล้ว จะแสดงถึงประเภท จัดการปัญหาด้านคุณภาพ ในการโต้ตอบครั้งต่อไปของลูกค้ากับที่อยู่ที่มีการแจ้งว่าไม่เป็นต้นฉบับ คุณภาพต่ำ คุณสามารถเรียก API การตรวจสอบที่อยู่ด้วย ที่อยู่ Address Validation API จะแสดงที่อยู่ที่แก้ไขแล้ว ซึ่งคุณต้อง สามารถแสดงโดยใช้พรอมต์ UI เมื่อลูกค้ายอมรับที่อยู่ที่จัดรูปแบบแล้ว คุณจะแคชข้อมูลต่อไปนี้จากการตอบกลับได้
formattedAddress
postalAddress
addressComponent componentNames
หรือUspsData standardizedAddress
ใช้การตรวจสอบที่อยู่แบบไม่มีส่วนหัว
อ้างอิงจากการสนทนาข้างต้น
- คุณมักจำเป็นต้องแคชการตอบกลับบางส่วนจากที่อยู่ API การตรวจสอบความถูกต้องเพื่อเหตุผลทางธุรกิจ
- แต่ข้อกำหนดของ บริการใน Google Maps Platform จํากัดข้อมูลที่แคชได้
ในส่วนต่อไปนี้เราจะพูดถึงกระบวนการ 2 ขั้นตอนในการปฏิบัติตามข้อกำหนด ของข้อกำหนดในการให้บริการและใช้การตรวจสอบที่อยู่ปริมาณมาก
ขั้นตอนที่ 1:
ในขั้นตอนแรก เราจะดูที่วิธีใช้ที่อยู่ที่มีปริมาณสูง สคริปต์ตรวจสอบความถูกต้องจาก Data Pipeline ที่มีอยู่ ขั้นตอนนี้จะช่วยให้คุณทำสิ่งต่อไปนี้ จัดเก็บฟิลด์ที่เฉพาะเจาะจงจากการตอบกลับ Address Validation API ในข้อกำหนดของ เป็นไปตามข้อกำหนดของบริการ
แผนภาพ ก: แผนภาพต่อไปนี้แสดงวิธีปรับปรุงไปป์ไลน์ข้อมูล ด้วยตรรกะการตรวจสอบที่อยู่ปริมาณมาก
ตามข้อกำหนดในการให้บริการ คุณสามารถแคชข้อมูลต่อไปนี้จาก
addressComponent
:
confirmationLevel
inferred
spellCorrected
replaced
unexpected
ดังนั้นในระหว่างขั้นตอนการติดตั้งนี้ เราจะแคชข้อมูลข้างต้น มาเทียบกับ UserID
สำหรับข้อมูลเพิ่มเติม โปรดดูรายละเอียดเกี่ยวกับข้อมูลจริง
ขั้นตอนที่ 2:
ในขั้นตอนที่ 1 เราได้รวบรวมความคิดเห็นว่าบางที่อยู่ในชุดข้อมูลอินพุตอาจ ไม่มีคุณภาพสูง ในขั้นตอนถัดไป เราจะใช้ที่อยู่ที่มีการรายงานเหล่านี้ แล้วนำไปแสดงแก่ผู้ใช้ และขอความยินยอมเพื่อแก้ไข ที่อยู่
แผนภาพ ข: แผนภาพนี้แสดงวิธีการผสานรวมผู้ใช้จากต้นทางถึงปลายทาง กระบวนการขอความยินยอมอาจมีลักษณะดังนี้
- เมื่อผู้ใช้เข้าสู่ระบบ ก่อนอื่นให้ตรวจสอบว่าคุณแคชแฟล็กการตรวจสอบความถูกต้องไว้หรือไม่ ในระบบของคุณ
- หากมีแฟล็ก คุณควรแสดง UI แก่ผู้ใช้เพื่อแก้ไข อัปเดตที่อยู่
- คุณสามารถเรียกใช้ Address Validation API อีกครั้งได้ด้วยรหัสที่อัปเดตหรือแคช และแสดงที่อยู่ที่แก้ไขให้ถูกต้องแก่ผู้ใช้เพื่อยืนยัน
- หากที่อยู่มีคุณภาพดี Address Validation API จะแสดงผล
formattedAddress
- คุณสามารถแสดงที่อยู่นั้นให้กับผู้ใช้ได้หากการแก้ไขแล้ว ดำเนินการ หรือตอบรับแบบเงียบๆ หากไม่มีการแก้ไข
- เมื่อผู้ใช้ยอมรับแล้ว คุณจะแคช
formattedAddress
ในฐานข้อมูลได้
บทสรุป
การตรวจสอบที่อยู่ปริมาณมากเป็น Use Case ทั่วไปที่คุณอาจพบ ในแอปพลิเคชันจำนวนมาก เอกสารนี้พยายามที่จะแสดงสถานการณ์บางอย่างและ รูปแบบการออกแบบเกี่ยวกับวิธีนำโซลูชันดังกล่าวไปใช้โดยสอดคล้องกับ Google Maps ข้อกำหนดในการให้บริการของแพลตฟอร์ม
เราได้เขียนเนื้อหาอ้างอิงสำหรับที่อยู่ปริมาณมากเพิ่มเติมแล้ว การตรวจสอบความถูกต้องในฐานะไลบรารีโอเพนซอร์สบน GitHub ลองดูเพื่อเริ่มต้นใช้งาน อาคารที่มีการตรวจสอบที่อยู่ปริมาณมากได้อย่างรวดเร็ว และอ่านบทความเกี่ยวกับ รูปแบบการออกแบบของวิธีใช้ไลบรารีในสถานการณ์ต่างๆ
ขั้นตอนถัดไป
ดาวน์โหลดคู่มือปรับปรุงการชำระเงิน การนำส่ง และการดำเนินการด้วยที่อยู่ที่เชื่อถือได้ สมุดปกขาว และดูส่วนการปรับปรุงจุดชำระเงิน การนำส่ง และการดำเนินการด้วยที่อยู่ การตรวจสอบความถูกต้อง การสัมมนาผ่านเว็บ
แนะนำให้อ่านเพิ่มเติม
- การใช้การตรวจสอบที่อยู่ปริมาณมาก
- ไลบรารี Python ใน GitHub
- สำรวจdemoของ Address การตรวจสอบความถูกต้อง
ผู้ร่วมให้ข้อมูล
ซึ่ง Google เป็นผู้ดูแลจัดการบทความนี้ ผู้เขียนต่อไปนี้เขียนขึ้นเป็นคนแรก
ผู้เขียนหลัก:
วาล์ว Henrik | วิศวกรโซลูชัน
Thomas Anglaret | โซลูชัน
วิศวกร
Sarthak Ganguly | โซลูชัน
วิศวกร