ดีบักเกอร์ใน Informatica: เซสชัน, เบรกพอยต์, ข้อมูลแบบละเอียด & การทำแผนที่
ดังที่เราได้พูดคุยไปแล้วในหัวข้อก่อนหน้านี้ การแมปคือชุดของออบเจ็กต์ต้นทางและเป้าหมายที่เชื่อมโยงเข้าด้วยกันด้วยชุดของการแปลง การแปลงเหล่านี้ประกอบด้วยชุดกฎซึ่งกำหนดกระแสข้อมูลและวิธีการโหลดข้อมูลเข้าสู่เป้าหมาย
ดีบักเกอร์คืออะไร?
Debugger เป็นยูทิลิตี้ที่มีประโยชน์มากใน Informatica เมื่อเราดำเนินการแมป Informatica จะดำเนินการแมปตามตรรกะการเปลี่ยนแปลงที่กำหนดไว้
การดำเนินการคล้ายกับการดำเนินการในโหมดแบตช์โดยที่เราไม่สามารถเห็นผลขั้นกลางได้ หรือวิธีที่ข้อมูลได้รับการแก้ไขจากการแปลงเป็นการแปลง
หลายครั้งที่เราได้รับข้อมูลในเป้าหมายที่ไม่เป็นไปตามที่เราคาดไว้ ด้วยความช่วยเหลือของดีบักเกอร์เรา สามารถวิเคราะห์ได้ว่าข้อมูลมีการเคลื่อนย้ายภายในแผนที่อย่างไร เราสามารถวิเคราะห์ข้อมูลทีละแถวในดีบักเกอร์
การใช้ดีบักเกอร์จำเป็นต้องมีอินสแตนซ์เซสชัน เราสามารถใช้เซสชันที่มีอยู่ซึ่งสร้างขึ้นก่อนหน้านี้ซ้ำเพื่อเรียกใช้การแมป หรือเราสามารถสร้างอินสแตนซ์เซสชันการแก้ไขข้อบกพร่องใหม่ก็ได้ เนื่องจากในระหว่างการดีบักข้อมูลจะถูกดึงมาจากแหล่งที่มา ดังนั้นเราจึงมีตัวเลือกว่าจะทำอย่างไรกับข้อมูลนั้น
- ไม่ว่าเราจะสามารถละทิ้งข้อมูลหรือ
- สามารถโหลดข้อมูลเข้าสู่เป้าหมายได้
ตัวเลือกเหล่านี้สามารถตั้งค่าได้ในระหว่างการกำหนดค่าของดีบักเกอร์
ในการตรวจสอบดีบักเกอร์ มีหน้าต่างสองหน้าต่างใน Informatica Designer
- Target หน้าต่าง
- หน้าต่างอินสแตนซ์
ในหน้าต่างเป้าหมาย จะแสดงบันทึกเป้าหมายซึ่งจะถูกแทรกลงในตารางเป้าหมาย ในหน้าต่างอินสแตนซ์ คุณสามารถเลือกอินสแตนซ์การเปลี่ยนแปลงของการแมปใดก็ได้ หลังจากนั้น พอร์ตทั้งหมดของการแปลงนั้นจะมองเห็นได้ในหน้าต่างนี้ และคุณสามารถวิเคราะห์ข้อมูลได้ว่ามันถูกแปลงอย่างไร
ขั้นตอนในการใช้ดีบักเกอร์ในการแมป
ผู้ออกแบบ Informatica มอบคุณสมบัติในการใช้ดีบักเกอร์เพื่อดีบักการแมป หมายความว่าเราสามารถแก้ไขจุดบกพร่องและวิเคราะห์การแมปที่มีอยู่ได้ ข้อกำหนดสำหรับดีบักเกอร์คือ การแมปควรเป็นการแมปที่ถูกต้อง
ในแบบฝึกหัดนี้ เราจะดีบักการแมป “m_emp_emp_target” ที่มีอยู่ซึ่งเราสร้างไว้ก่อนหน้านี้ ในแหล่งข้อมูลของเรา เราจะตรวจสอบบันทึกเฉพาะของ Employee_name ='SCOTT' สำหรับ Scott เราจะตรวจสอบว่าค่าถูกดึงมาใน Informatica และบันทึกถูกพุชไปยังเป้าหมายอย่างถูกต้องหรือไม่
แหล่งข้อมูลของเราสำหรับตาราง "emp" มีลักษณะเช่นนี้
สำหรับชื่อ “SCOTT” การใช้ดีบักเกอร์เราจะตรวจสอบว่าค่าใดสำหรับคอลัมน์ “sal” (เงินเดือน) ที่ถูกดึงเข้ามาใน Informatica
ขั้นตอน 1) เปิด Informatica Designer และเปิดแมปปิ้ง “m_emp_emp_target” ในโปรแกรม Designer โดยดับเบิลคลิกที่แมปปิ้งนั้น โปรแกรมจะเปิดตารางคุณสมบัติและคำจำกัดความของเป้าหมายที่แสดงแมปปิ้งภายในโปรแกรม Mapping Designer
ขั้นตอน 2) ตอนนี้เริ่มดีบักเกอร์
- คลิกที่ การแมป ตัวเลือกเมนู
- เลือกดีบักเกอร์จากตัวเลือก
- เลือกตัวเลือก "เริ่มดีบักเกอร์"
ขั้นตอน 3) เลือกถัดไปในหน้าต่างการแมปการดีบัก
ขั้นตอน 4) ในหน้าต่างถัดไป คุณจะได้รับตัวเลือกให้เลือกประเภทเซสชัน คุณสามารถใช้เซสชันที่มีอยู่ เซสชันที่ใช้ซ้ำได้ที่มีอยู่ หรือคุณสามารถสร้างอินสแตนซ์เซสชันการแก้ไขข้อบกพร่องได้
เมื่อคุณใช้เซสชันที่มีอยู่ Informatica จะใช้เซสชันก่อนหน้าที่คุณสร้างขึ้นสำหรับการแมปนี้ เมื่อคุณเลือกสร้างอินสแตนซ์เซสชันการตรวจแก้จุดบกพร่อง อินสแตนซ์เซสชันใหม่จะถูกสร้างขึ้นสำหรับการดีบัก
ในตัวอย่างนี้ เราจะเลือกอินสแตนซ์เซสชันที่ใช้ซ้ำได้ที่มีอยู่ บริการการรวมระบบจะเป็นค่าเริ่มต้น
- เลือกตัวเลือก “ใช้อินสแตนซ์เซสชันที่มีอยู่”
- คลิกถัดไป
ขั้นตอน 5) ในหน้าต่างใหม่ Informatica จะแจ้งให้คุณเลือกเซสชันที่มีอยู่สำหรับการดีบัก
เลือกเซสชัน “s_m_emp_emp_target” แล้วคลิกปุ่มถัดไป
ขั้นตอน 6) ในหน้าต่างถัดไปจะมีตัวเลือก “ทิ้งข้อมูลเป้าหมาย” เราเลือกตัวเลือกนี้ เนื่องจากในระหว่างการดีบั๊ก เราไม่ต้องการโหลดข้อมูลใดๆ ในตารางเป้าหมายของเรา
- เลือกตัวเลือก “ทิ้งข้อมูลเป้าหมาย”
- เลือกตารางเป้าหมาย “emp_target”
- คลิกปุ่มเสร็จสิ้น
ด้วยขั้นตอนข้างต้น เราได้กำหนดค่าและเริ่มดีบักเกอร์แล้ว ตอนนี้เราสามารถดีบักการแมปได้แล้ว
ขั้นตอน 7) โปรแกรมดีบักเกอร์เริ่มต้นแล้ว แต่ยังไม่ได้ดึงข้อมูลแถวใดๆ จากแหล่งที่มา ในระหว่างการแก้ไขข้อบกพร่อง ระบบจะดึงข้อมูลจากแหล่งที่มาทีละแถว เพื่อเริ่มดึงข้อมูลแถวแรกจากแหล่งที่มา
- เลือกตัวเลือกการแมปจากเมนู
- เลือกตัวเลือกดีบักเกอร์
- เลือกตัวเลือกอินสแตนซ์ถัดไป
ขั้นตอน 8) ในหน้าต่างอินสแตนซ์ คุณจะเห็นบันทึกแรกที่ดึงมาจากตัวระบุแหล่งที่มา
หากคุณวิเคราะห์หน้าต่างอินสแตนซ์ จะแสดงระเบียนแรกในแถวชื่อ “SMITH” นี่ไม่ใช่ระเบียนที่เรากำลังมองหา ดังนั้นเราจึงสามารถไปที่อินสแตนซ์ถัดไปได้
ขั้นตอน 9) เพื่อไปที่อินสแตนซ์ถัดไป (เพื่อย้ายไปยังแถวถัดไป)
- กดปุ่ม F10 (ทางลัดสำหรับไปที่อินสแตนซ์ถัดไป แทนที่จะไปที่ตัวเลือกการแมปแล้วเลือกตัวเลือกดีบักเกอร์)
หลังจากย้ายไปยังอินสแตนซ์ถัดไป ข้อมูลในหน้าต่างอินสแตนซ์จะเปลี่ยนเป็นบันทึกถัดไป
ขั้นตอน 10) กดปุ่ม F10 ต่อไปจนกระทั่งถึงบันทึกที่ต้องการของพนักงาน “SCOTT” เมื่อถึงจุดนั้นแล้ว หน้าต่างอินสแตนซ์จะเป็นดังรูปด้านล่าง
นี่คือตัวอย่างที่เรากำลังมองหา ดังนั้นในหน้าต่างอินสแตนซ์ เราสามารถวิเคราะห์ข้อมูลได้ ไม่ว่าจะมาอย่างถูกต้องหรือค่าใดหายไป
ในข้อมูลต้นฉบับ รายละเอียดของพนักงาน “SCOTT” มีดังนี้ job = “ANALYST”, manager id = “7566”, sal “3000”
และในดีบักเกอร์สำหรับพนักงาน “SCOTT” นั้น เราได้วิเคราะห์รายละเอียดทั้งหมดเหล่านี้แล้ว และรายละเอียดเหล่านั้นจะตรงกับข้อมูลต้นทาง ดังนั้นเราจึงมั่นใจได้ว่าระเบียนถูกดึงมาอย่างถูกต้องโดยตัวระบุแหล่งที่มา
การใช้เบรกพอยต์ในดีบักเกอร์
เมื่อเรากำลังมองหาแถวข้อมูลเฉพาะเหมือนในตัวอย่างก่อนหน้านี้ แทนที่จะไปที่ทุกอินสแตนซ์ของแหล่งข้อมูล เราสามารถกำหนดเบรกพอยท์ได้
เบรกพอยต์คือเงื่อนไขหรือชุดของเงื่อนไขที่กำหนดไว้ในระหว่างการกำหนดค่าการดีบัก โดยที่เมื่อเงื่อนไขนั้นกลายเป็นจริง ดีบักเกอร์จะหยุดที่อินสแตนซ์นั้น
ตัวอย่างเช่น หากเรากำหนด deptno=20 ในเบรกพอยต์ เมื่อใดก็ตามที่สำหรับเร็กคอร์ดหากเงื่อนไขนี้เป็นจริง ดีบักเกอร์จะหยุดที่อินสแตนซ์ของข้อมูลนั้น
ขั้นตอน 1) เพื่อกำหนดค่าเบรกพอยต์
- ไปที่เมนูแผนที่
- เลือกตัวเลือกดีบักเกอร์
- เลือกตัวเลือก "แก้ไขเบรกพอยต์"
ขั้นตอน 2) คุณจะเห็นหน้าต่าง "แก้ไขเบรกพอยต์" ดังที่แสดงด้านล่าง
ขั้นตอน 3) ในหน้าต่างเบรกพอยต์ คลิกที่ปุ่มเพิ่ม
ขั้นตอน 4) ในหน้าต่างใหม่
- เลือก SQ_EMP เป็นอินสแตนซ์
- เลือกปุ่มตกลง
ขั้นตอน 5) หน้าต่างก่อนหน้าจะมีลักษณะดังภาพด้านล่าง
ขั้นตอน 6) คุณมีเบรกพอยต์แล้ว ตอนนี้คุณต้องกำหนดเงื่อนไขของเบรกพอยต์ เพื่อกำหนดเงื่อนไขเบรกพอยต์
- คลิกที่ไอคอน “เพิ่มเงื่อนไขใหม่”
แถวใหม่ภายใต้แท็บเงื่อนไขจะปรากฏขึ้น ที่นี่เราสามารถกำหนดเงื่อนไขได้
ขั้นตอน 7) ในตารางเงื่อนไข
- ในพอร์ตแบบเลื่อนลง ให้เลือกตัวเลือก "ENAME" (เนื่องจากเรากำลังแก้ไขจุดบกพร่องสำหรับบันทึก ename='SCOTT')
- ในช่องค่า ให้ป้อนค่า “SCOTT”
- เลือกปุ่มตกลง
ขั้นตอน 8) ตอนนี้ให้เริ่มดีบักเกอร์ตามที่กล่าวไว้ในหัวข้อก่อนหน้านี้
ไปที่เมนูแผนที่ -> เลือกตัวเลือกดีบักเกอร์ -> เลือกเริ่มดีบักเกอร์ -> เลือกอินสแตนซ์เซสชัน
ขั้นตอน 9) เมื่อดีบักเกอร์เริ่มต้นขึ้น
- เลือกเมนูการแมป
- เลือกตัวเลือกดีบักเกอร์
- เลือกตัวเลือกดำเนินการต่อ
ดีบักเกอร์จะไปที่แต่ละอินสแตนซ์ของแถวและจะตรวจสอบเงื่อนไข “ename=SCOTT” เรกคอร์ดที่เงื่อนไขนี้เป็นจริง ดีบักเกอร์จะหยุดการทำงานบนอินสแตนซ์นั้น ดังนั้นเมื่อปริมาณข้อมูลสูง แทนที่จะไปที่แต่ละอินสแตนซ์ของเรกคอร์ดต้นทาง คุณสามารถกำหนดค่าเบรกพอยต์ได้ และคุณสามารถข้ามไปยังเรกคอร์ดนั้นได้โดยตรง
เมื่อ Informatica เสร็จสิ้นโดยผ่านอินสแตนซ์ทั้งหมดแล้ว ดีบักเกอร์จะหยุดทำงานโดยอัตโนมัติ หากคุณต้องการวิเคราะห์ข้อมูลอีกครั้ง คุณต้องรีสตาร์ทดีบักเกอร์อีกครั้ง
ติดตามใน Informatica
เมื่อใดก็ตามที่คุณดำเนินการเซสชันสำหรับการแมป บันทึกเซสชันจะถูกสร้างขึ้น ซึ่งประกอบด้วยรายละเอียดของการดำเนินการ เช่น
- ระยะเวลาของเหตุการณ์
- รายละเอียดผิดพลาด
- สถิติการเปลี่ยนแปลงส่วนบุคคล ฯลฯ
ภายในกระบวนการแปลงของการแมป คุณสามารถกำหนดค่าและกำหนดปริมาณรายละเอียดที่ Informatica จะเขียนลงในบันทึกเซสชันได้
มีสี่ระดับที่สามารถตั้งค่าสำหรับการติดตามภายในการเปลี่ยนแปลง
โหมดบันทึกที่แตกต่างกัน | กิจกรรมในโหมดบันทึกต่างๆ |
---|---|
ปกติ | ในโหมดปกติ Informatica จะเขียนเกี่ยวกับข้อมูลการเริ่มต้นการแปลงและสถานะ ข้อผิดพลาดที่พบ และสรุปผลลัพธ์ของเซสชัน |
สั้น | ในโหมด Terse Informatica จะเขียนเฉพาะข้อมูลการเริ่มต้นระบบและรายละเอียดข้อผิดพลาดเท่านั้น โหมด Terse จะเขียนรายละเอียดขั้นต่ำลงในบันทึกเซสชัน |
การเริ่มต้นแบบละเอียด | ในโหมดการเริ่มต้นแบบละเอียด Informatica จะเขียนรายละเอียดบันทึกในลักษณะเดียวกับโหมดปกติ และนอกจากนี้ยังเขียนเกี่ยวกับข้อมูลและไฟล์ดัชนีที่ใช้ รวมถึงสถิติการแปลงอีกด้วย |
ข้อมูลโดยละเอียด | ในข้อมูลแบบละเอียด Informatica เขียนบันทึกคล้ายกับการเริ่มต้นแบบละเอียด แต่ยังเขียนทุกข้อมูลที่ผ่านการแปลงอีกด้วย |
หมายเหตุ:โดยค่าเริ่มต้น ระดับการติดตามจะถูกตั้งค่าเป็นปกติ ขอแนะนำให้ใช้โหมดข้อมูลแบบละเอียดเฉพาะเมื่อคุณกำลังดีบั๊กการแมป โหมดแบบสั้นสามารถใช้เพื่อปรับปรุงประสิทธิภาพได้ เนื่องจากจะเขียนรายละเอียดขั้นต่ำ ดังนั้นค่าใช้จ่ายในการเขียนบันทึกจะน้อยที่สุด
วิธีการตั้งค่าระดับการติดตามในการเปลี่ยนแปลง
ขั้นตอน 1) เปิดการแมปในตัวออกแบบ Informatica ที่คุณต้องการตั้งค่าระดับการติดตาม
ขั้นตอน 2) Double คลิกที่การเปลี่ยนแปลง (การแปลงตัวระบุแหล่งที่มา “SQ_EMP”)
มันจะเปิดหน้าต่างแก้ไขการเปลี่ยนแปลง
ขั้นตอน 3) ในหน้าต่างแก้ไขการเปลี่ยนแปลง
- คลิกแท็บคุณสมบัติ
- เลือกตัวเลือกระดับการติดตาม
- จากเมนูแบบเลื่อนลง ให้เลือกข้อมูลแบบละเอียด
- เลือกปุ่มตกลง
ขั้นตอน 4) บันทึกการแมปและดำเนินการแมป (ใช้แป้นพิมพ์ลัด Ctrl+s เพื่อบันทึกการแมป)
ขั้นตอน 5) เพื่อดูบันทึก
- จุดเปิด การตรวจสอบเวิร์กโฟลว์ และเลือกเซสชันที่ดำเนินการในขั้นตอนสุดท้าย
- คลิกที่ตัวเลือก "บันทึกเซสชัน" เพื่อเปิดบันทึกเซสชันสำหรับการแมป
นี่จะเป็นการเปิดหน้าต่างบันทึกเซสชันสำหรับการแมป
บันทึกเซสชันจะให้รายละเอียดเกี่ยวกับวิธีการดำเนินการเซสชันของคุณ รวมถึงรายละเอียดเวลาที่เริ่มและหยุดการดำเนินการ รวมถึงข้อมูลพื้นฐานเกี่ยวกับประสิทธิภาพการทำงาน โดยจะระบุการเชื่อมต่อฐานข้อมูลที่คุณใช้ ไฟล์พารามิเตอร์ที่คุณใช้ และสรุปเกี่ยวกับแหล่งที่มาและเป้าหมายโดยระบุว่ามีการดึงข้อมูลต้นฉบับจำนวนเท่าใด มีการโหลดข้อมูลลงในเป้าหมายจำนวนเท่าใด เป็นต้น
ขั้นตอน 6) เลื่อนลงในบันทึก และคุณสามารถดูรายละเอียดบันทึกเพิ่มเติมที่บันทึกไว้ รวมถึงข้อมูลบันทึกด้วย
ด้วยวิธีการนี้ คุณสามารถตั้งค่าระดับการติดตามในการแมปเพื่อจับรายละเอียดเพิ่มเติมสำหรับการดีบัก
ในบทช่วยสอนนี้ คุณได้เรียนรู้วิธีการตั้งค่า กำหนดค่า และดำเนินการดีบักเกอร์ รวมถึงวิธีตั้งค่าระดับการติดตามในการแม็ป ตัวเลือกเหล่านี้ช่วยให้คุณสามารถดีบักการแม็ปได้