ย้ายแอปพลิเคชันหลายลูกค้าไปยังแบบจําลองโปรไฟล์บริการหลัก
บทความนี้อธิบายวิธีที่คุณสามารถปรับขนาดได้ดีขึ้นโดยการโยกย้ายแอปลูกค้าหลายรายของการวิเคราะห์แบบฝังตัว Power BI ของคุณไปยังแบบจําลองโปรไฟล์บริการหลัก
โปรไฟล์ บริการหลักทําให้ง่ายต่อการจัดการเนื้อหาองค์กรใน Power BI และใช้ความจุของคุณอย่างมีประสิทธิภาพมากขึ้น
หมายเหตุ
บทความนี้มีจุดมุ่งหมายที่องค์กรที่มีแอปที่สนับสนุนลูกค้าหลายรายจากผู้เช่า Power BI รายเดียว
แอปทั้งหมดไม่ได้รับประโยชน์จากแบบจําลองโครงร่างสําคัญของบริการ ตัวอย่างเช่น แอปต่อไปนี้ไม่ควรโยกย้าย:
- แอปขนาดเล็กที่รักษาโครงร่างสําคัญของบริการหนึ่งด้วยวัตถุจํานวนน้อย
- แอปที่ใช้โครงร่างสําคัญของบริการหนึ่งรายการต่อลูกค้า
ข้อกำหนดเบื้องต้น
สิ่งสําคัญคือต้องอ่านเกี่ยวกับ โปรไฟล์ บริการหลักก่อนที่คุณจะเริ่มการโยกย้าย
คุณยังจําเป็นต้องทําตามขั้นตอนต่อไปนี้:
- ตั้งค่าบริการหลักโดยทําตามสามขั้นตอนแรกของการฝังเนื้อหา Power BI ด้วยองค์ประกอบหลักของบริการ
- จากบัญชีผู้ดูแลระบบผู้เช่า Power BI ให้เปิดใช้งานการสร้างโปรไฟล์ในผู้เช่า
โยกย้ายไปยังโปรไฟล์บริการหลัก
การโยกย้ายไปยังโปรไฟล์บริการหลักเกี่ยวข้องกับขั้นตอนต่อไปนี้:
- สร้างโปรไฟล์ หนึ่งโปรไฟล์ต่อลูกค้า
- จัดระเบียบพื้นที่ทํางานของคุณ
- เปลี่ยนรหัสแอปพลิเคชันเพื่อใช้โปรไฟล์
- ทดสอบแอปพลิเคชันของคุณด้วยแบบจําลองโปรไฟล์
- ล้างสิทธิ์ที่ซ้ําซ้อน
สร้างโปรไฟล์ (จําเป็น)
ใช้ REST API โปรไฟล์กับบริการหลักที่คุณสร้างขึ้นเพื่อสร้างโปรไฟล์หนึ่งรายการสําหรับลูกค้าแต่ละราย
เป็นความคิดที่ดีที่จะบันทึกการแมปของแต่ละ ID ลูกค้าที่มี ID โปรไฟล์ที่สอดคล้องกันในฐานข้อมูลของคุณ คุณจะต้องแมปนี้ในภายหลังเพื่อเรียกใช้ API ด้วยโปรไฟล์ผู้เช่า
จัดระเบียบพื้นที่ทํางานของคุณ
วิธีที่ง่ายที่สุดในการจัดการข้อมูลของคุณคือการบํารุงรักษาพื้นที่ทํางานหนึ่งรายการต่อลูกค้า ถ้าแอปของคุณใช้แบบจําลองนี้แล้ว คุณไม่จําเป็นต้องสร้างพื้นที่ทํางานใหม่ อย่างไรก็ตาม คุณยังคงต้องให้แต่ละโปรไฟล์ที่มีสิทธิ์ เข้าถึงของผู้ดูแลระบบ ในพื้นที่ทํางานที่สอดคล้องกันโดยใช้ API เพิ่มผู้ใช้กลุ่ม
ถ้าคุณไม่มีพื้นที่ทํางานหนึ่งรายการต่อลูกค้า ให้ใช้โปรไฟล์ที่สอดคล้องกันเพื่อเรียกใช้ API สร้างผู้ใช้กลุ่มเพื่อสร้างพื้นที่ทํางานใหม่สําหรับลูกค้าแต่ละราย
จัดระเบียบรายการในพื้นที่ทํางาน
ตอนนี้คุณควรมีโปรไฟล์และพื้นที่ทํางานสําหรับลูกค้าแต่ละราย ถ้าคุณสร้างพื้นที่ทํางานใหม่ในขั้นตอนก่อนหน้า คุณจําเป็นต้องนําเข้ารายการ (เช่น รายงานและแบบจําลองความหมาย) ลงในพื้นที่ทํางานเหล่านี้ แบบจําลองความหมายที่คุณนําเข้าจะขึ้นอยู่กับโซลูชันปัจจุบันของคุณ:
ถ้าแอปของคุณใช้แบบจําลองความหมายที่แยกต่างหากสําหรับลูกค้าแต่ละราย การออกแบบแบบจําลองความหมายสามารถทํางานได้ตามปกติ
ถ้าแอปของคุณใช้แบบจําลองความหมายหนึ่งแบบจําลองกับการรักษาความปลอดภัยระดับแถว (RLS) เพื่อให้ข้อมูลที่แตกต่างกันกับลูกค้าที่แตกต่างกัน คุณสามารถปรับขนาดได้ดีขึ้นโดยการสร้าง แบบจําลองความหมายแยกต่างหากสําหรับลูกค้า แต่ละรายและใช้โปรไฟล์ตามที่อธิบายไว้ในบทความนี้
หลังจากเอาชนะข้อจํากัดความสามารถในการปรับขนาดโดยใช้โปรไฟล์และแหล่งข้อมูลที่แยกต่างหากคุณจะได้รับการแยกข้อมูลมากขึ้นโดยใช้ RLS กับโปรไฟล์
- ถ้าคุณพึ่งพา RLS แบบไดนามิก ชื่อของโปรไฟล์จะถูกส่งกลับในฟังก์ชัน
UserName()
DAX - ถ้าคุณใช้ RLS แบบคงที่และแทนที่บทบาทเมื่อสร้างโทเค็นแบบฝังตัว คุณสามารถดําเนินการนี้ได้ต่อไป
- ถ้าคุณพึ่งพา RLS แบบไดนามิก ชื่อของโปรไฟล์จะถูกส่งกลับในฟังก์ชัน
เมื่อรายการพร้อมแล้ว ให้นําเข้ารายการเหล่านั้นลงในพื้นที่ทํางานที่เกี่ยวข้อง หากต้องการทําให้กระบวนการเป็นอัตโนมัติ ให้พิจารณาใช้นําเข้า API
เปลี่ยนรหัสแอพลิเคชันเพื่อใช้โพรไฟล์
เมื่อคุณมีโปรไฟล์ที่มีสิทธิ์ เข้าถึงของผู้ดูแลระบบ ในพื้นที่ทํางานที่เกี่ยวข้อง และฐานข้อมูลที่มีการแมปที่แสดงโปรไฟล์ที่แสดงว่าลูกค้ารายใดคุณสามารถทําการเปลี่ยนแปลงรหัสที่จําเป็นได้ เราขอแนะนําให้คุณเก็บโฟลว์รหัส 2 ลําดับเคียงข้างกัน และค่อยๆ แสดงโฟลว์รหัสโปรไฟล์ให้กับลูกค้าของคุณ
ทําการเปลี่ยนแปลงโค้ดต่อไปนี้:
การเปลี่ยนแปลงรหัสการตรวจสอบ
- หากคุณกําลังใช้ผู้ใช้หลักในแอป Microsoft Entra ID ให้เปลี่ยนรหัสโทเค็นที่ได้รับ อ่าน การฝังด้วยบริการหลัก เพื่อเรียนรู้เกี่ยวกับการสร้างโทเค็น Microsoft Entra เฉพาะแอป
- หากคุณกําลังใช้ โครงร่างสําคัญ ของบริการและคุณได้สร้างใหม่สําหรับโปรไฟล์ ให้ปรับรหัสเพื่อใช้ ID โครงร่างสําคัญของบริการและข้อมูลลับที่ถูกต้อง
การจัดการการเปลี่ยนแปลงรหัส
แอปบางตัวมีรหัสการจัดการที่ทําให้ลูกค้าใหม่ทํางานโดยอัตโนมัติเมื่อลงทะเบียน บ่อยครั้งที่รหัสการจัดการใช้ Power BI REST API เพื่อสร้างพื้นที่ทํางานและนําเข้าเนื้อหา โค้ดส่วนใหญ่ควรเหมือนกัน แต่คุณอาจจําเป็นต้องปรับรายละเอียดต่อไปนี้:
- แต่ละครั้งที่คุณสร้างผู้เช่าลูกค้าใหม่ ให้สร้างโปรไฟล์บริการใหม่เป็นผู้สร้างและผู้ดูแลระบบของพื้นที่ทํางานสําหรับผู้เช่านั้น
- หากคุณตัดสินใจที่จะจัดระเบียบเนื้อหา Power BI ของคุณใหม่ แก้ไขรหัสเพื่อแสดงการเปลี่ยนแปลง
การเปลี่ยนแปลงรหัสโทเค็นแบบฝังตัว
แทนที่ตัวเรียก API ตรวจสอบให้แน่ใจว่าโปรไฟล์เรียกใช้ GenerateToken API เนื่องจากในแบบจําลองโปรไฟล์ เฉพาะโปรไฟล์เฉพาะเท่านั้นที่สามารถเข้าถึงเนื้อหาของลูกค้าได้
ตรวจสอบความถูกต้อง
วิธีปฏิบัติที่ดีที่สุดคือการทดสอบแอปของคุณอย่างละเอียดก่อนที่จะย้ายไปยังแบบจําลองโปรไฟล์ รายงานอาจโหลดแม้ว่าจะมีบักในรหัสแอปพลิเคชัน SaaS เนื่องจากคุณไม่ได้ลบสิทธิ์ที่เก่ากว่าในพื้นที่ทํางาน
ล้างข้อมูลหลังจากการโยกย้าย
หลังจากที่คุณทําการโยกย้ายและตรวจสอบความถูกต้องของผลลัพธ์แล้ว ให้ลบสิ่งที่คุณไม่ต้องการอีกต่อไป
- ล้างรหัส: คุณอาจต้องการปิดใช้งานเส้นทางโค้ดเก่าเพื่อให้แน่ใจว่าคุณเรียกใช้โค้ดใหม่ที่อาศัยโปรไฟล์เท่านั้น
- ล้างพื้นที่ทํางานและสิทธิ์อนุญาตใน Power BI: ถ้าคุณสร้างพื้นที่ทํางานใหม่ คุณสามารถลบพื้นที่ทํางานเก่าที่ไม่ได้ใช้งานอีกต่อไป หากคุณนําพื้นที่ทํางานเดียวกันมาใช้ใหม่ คุณอาจต้องการลบสิทธิ์ที่เก่ากว่า (เช่น สิทธิ์ของผู้ใช้ หลัก) บนพื้นที่ทํางาน
เนื้อหาที่เกี่ยวข้อง
มีคำถามเพิ่มเติมหรือไม่? ลองถามชุมชน Power BI