โครงสร้างฐานข้อมูลสำหรับจัดการหลายบัญชี (Multi-Tenant Data Architecture)


1

เป็นเรื่องง่ายเสมอที่จะเขียนซอฟต์แวร์ที่จัดการเอนทิตี้เดียว อย่างไรก็ตามการออกแบบซอฟต์แวร์ให้รองรับหลายบัญชี / บริษัท ต้องใช้ความขยันเนื่องจาก

ฉันกำลังทำการวิจัยเริ่มต้นในสกีมาฐานข้อมูลที่จัดการหลายบัญชี / บริษัท และฉันกำลังถามว่าคุณสามารถแบ่งปันหน้าเว็บหรือซอฟต์แวร์โอเพนซอร์ซที่แสดงสคีมาที่เหมาะสมได้หรือไม่

แก้ไข:ฉันสามารถค้นหาคำศัพท์ที่เหมาะสมสำหรับสิ่งนี้ซึ่งเป็นสถาปัตยกรรมข้อมูลผู้เช่าหลายคน บทความ Microsoft ที่เป็นประโยชน์อธิบายวิธีการ: http://msdn.microsoft.com/en-us/library/aa479086.aspx

ขอบคุณ

คำตอบ:


2

สิ่งนี้มีความซับซ้อนกว่า "เอนทิตีเดี่ยว" เพียงเล็กน้อยเท่านั้น สมมติว่าเป็นกรณีที่เลวร้ายที่สุด - หลาย บริษัท ที่แต่ละคนมีหลายบัญชี ตารางหนึ่งสำหรับ บริษัท ตารางหนึ่งสำหรับบัญชีที่มีรหัสต่างประเทศของรหัส บริษัท จากนั้นแต่ละธุรกรรมจะมีรหัสต่างประเทศของรหัสบัญชี สำหรับข้อมูลอื่น ๆ ทั้งหมดคุณต้องตัดสินใจว่ามันเป็นของ บริษัท หนึ่งแห่งหนึ่งบัญชีหรืออื่น ๆ พนักงานของ Ie สามารถทำงานได้กับ บริษัท หนึ่งแห่ง (พูดโดยทั่วไป) ดังนั้นพนักงานจึงมีรหัส บริษัท เป็นรหัสต่างประเทศ แผนกจะอยู่ใน บริษัท เดียวความสัมพันธ์เดียวกัน

มันคือทั้งหมดที่เกี่ยวกับการทำความเข้าใจสิ่งที่เป็นของใครและสร้างความสัมพันธ์ นั่นอาจฟังดูง่ายมาก แต่นั่นเป็นเรื่องจริง

การใช้สคีมาที่สร้างไว้อาจช่วยให้คุณประหยัดได้มาก แต่ความพยายามนั้นเป็นสิ่งที่รับประกันผลลัพธ์ที่ดี การออกแบบฐานข้อมูลที่ดีมาจากการถามคำถามทั้งหมด - "พนักงานสามารถทำงานได้มากกว่าหนึ่งแผนกหรือไม่" "การซื้อจะถูกเรียกเก็บจากแผนกหนึ่งเสมอหรือสามารถกระจายต้นทุนได้หรือไม่" "เราจำเป็นต้องติดตามการอนุมัติมากกว่าหนึ่งครั้งสำหรับการประเมินใหม่ของพนักงานหรือไม่" มันจะดำเนินต่อไปตลอดกาล แต่ถ้าคุณไม่ทำมันระบบของคุณจะผิดหวังผู้ใช้อย่างต่อเนื่อง


+1: "การจัดการกับผู้ชายหลายคนเป็นเหมือนการจัดการของผู้ชายสองสามคนมันเป็นเรื่องขององค์กร"
surfasb

ดูเหมือนว่าจะแนะนำความพยายามของ Google ที่ลงทุนใน Google Apps ฉันจำการเปลี่ยนแปลงโครงสร้างผู้ใช้จำนวนมากโครงสร้างบัญชีที่เชื่อมโยงบัญชี ฯลฯ ฉันเห็นด้วยแรงบันดาลใจที่จะขุดลึกลงไป
crockpotveggies
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.