n a shared-memory architecture, the processors and disks have access to a common memory, typically via a bus or through an interconnection network. The benefit of shared memory is extremely
processors data in shared memory can be accessed by any processor without being moved with software. A processor can send messages to other processors
writes
memory
using
by
faster
much
microsecond) than by sending a message through a communication mechanism. The downside of shared-memory machines is that the architecture is not scalable beyond 32 or 64 processors because the bus or the interconnection network becomes a bottleneck (since it is shared by all processors). Adding more processors does not help after a point, since the processors will spend most of their time waiting for their turn on the bus to access memory.
usually
architectures
Shared-memory
processor, so that referencing of the shared memory is avoided whenever possible.
In the shared-disk model, all processors can access all disks directly via an interconnection network, but the processors have private memories. There are two advantages of this architecture over a shared-memory architecture. First, since each processor has its own memory, the memory bus is not a bottleneck. Second, it offers a cheap way to provide a degree of fault tolerance: If a processor (or its memory) fails, the other processors can take over its tasks, since the database is resident on disks that are accessible from all processors.The shared-disk architecture has found acceptance in many applications.
The main problem with a shared-disk system is again scalability. Although the memory bus is no longer a bottleneck, the interconnection to the disk subsystem is now a bottleneck; it is particularly so in a situation where the database makes a large number of accesses to disks. Compared to shared-memory systems, shared-disk systems can scale to a somewhat larger number of processors, but communication across processors is slower (up to a fewmilliseconds in the absence of special-purpose hardware for communication), since it has to go through a communication network.
In a shared-nothing system, each node of the machine consists of a processor, memory, and one or more disks. The processors at one node may communicate with another processor at another node by a high-speed interconnection network. A node functions as the server for the data on the disk or disks that the node owns. Since local disk references are serviced by local disks at each processor, the shared-nothing model overcomes the disadvantage of requiring all I/O to go through a single interconnection network; only queries, accesses to nonlocal disks, and result relations pass through the network.
The hierarchical architecture combines the characteristics of shared-memory, shareddisk, and shared-nothing architectures. At the top
consists of nodes connected by an interconnection network, and do not share disks or memory with one another. Thus, the top level is a shared-nothing architecture. Each node of the system could actually be a shared-memory system with a few processors. Alternatively, each node could be a shared-disk system, and each of the systems sharing a set of disks could be a shared-memory system. Thus, a system could be built as a hierarchy, with shared-memory architecture with a few processors at the base, and a sharednothing architecture at the top, with possibly a shared-disk architecture in the middle. Figure 18.8d illustrates a hierarchical architecture with shared-memory nodes connected together in a shared-nothing architecture.
ที่อยู่ในหน่วยความจำที่ใช้ร่วมกันสถาปัตยกรรมโปรเซสเซอร์สามารถเข้าถึงหน่วยความจำและดิสก์ทั่วไป โดยผ่านทางรถบัสหรือผ่านการเชื่อมต่อเครือข่าย ประโยชน์ของหน่วยความจำที่ใช้ร่วมกันเป็นสิ่ง
) ข้อมูลในหน่วยความจำที่ใช้ร่วมกันสามารถเข้าถึงได้โดยตัวประมวลผลใด ๆโดยไม่มีการย้ายกับซอฟต์แวร์ ตัวประมวลผลที่สามารถส่งข้อความไปอีกแบบ
เขียน
ใช้หน่วยความจำด้วย
เร็วมากวินาที ) มากกว่า โดยส่งข้อความผ่านกลไกการสื่อสาร ข้อเสียของการใช้หน่วยความจำเครื่องที่เป็นสถาปัตยกรรมที่ยืดหยุ่นไม่เกิน 32 หรือ 64 โปรเซสเซอร์ เพราะรถเมล์หรือการเชื่อมต่อเครือข่ายจะกลายเป็นคอขวด ( เพราะมันใช้ร่วมกันโดยทุกตัว ) การเพิ่มหน่วยประมวลผลมากขึ้นไม่ช่วยหลังจุดเนื่องจากโปรเซสเซอร์จะใช้เวลาส่วนใหญ่ของเวลาของพวกเขา พวกเขากำลังรอคอยอยู่บนรถเพื่อการเข้าถึงหน่วยความจำ .
ปกติ
(
หน่วยประมวลผลกลางหน่วยความจำที่ใช้ร่วมกัน ดังนั้นการอ้างอิงของหน่วยความจำที่ใช้ร่วมกัน คือหลีกเลี่ยงเมื่อใดก็ตามที่เป็นไปได้ .
ในดิสก์แบบที่ใช้ร่วมกัน , โปรเซสเซอร์สามารถเข้าถึงดิสก์ทั้งหมดโดยตรงผ่านทาง เป็นการเชื่อมต่อเครือข่าย แต่หน่วยประมวลผลมีความทรงจำส่วนตัวมีสองข้อได้เปรียบของสถาปัตยกรรมนี้เป็นหน่วยความจำที่ใช้ร่วมกันสถาปัตยกรรม อย่างแรก เนื่องจากโปรเซสเซอร์แต่ละตัวต้องมีหน่วยความจำ , หน่วยความจำบัสไม่ใช่คอขวด . ประการที่สอง มันมีวิธีที่ถูกเพื่อให้ระดับของความอดทนความผิด : ถ้าตัวประมวลผล ( หรือหน่วยความจำล้มเหลว โปรเซสเซอร์อื่น ๆสามารถใช้งานของมันเนื่องจากฐานข้อมูลมีถิ่นที่อยู่บนดิสก์ที่ใช้ร่วมกันสามารถเข้าถึงได้จากทุกโปรเซสเซอร์ ดิสก์สถาปัตยกรรม พบการยอมรับในการใช้งานมาก
ปัญหาหลักกับระบบดิสก์ร่วมกันอีกครั้งกล่าว แม้ว่าหน่วยความจำบัสไม่มีคอขวด , การเชื่อมต่อไปยังดิสก์ข้อมูลที่เป็นคอขวดมันเป็นโดยเฉพาะอย่างยิ่งในสถานการณ์ที่ฐานข้อมูลทำให้จำนวนมากเข้าถึงดิสก์ เมื่อเทียบกับระบบดิสก์ระบบหน่วยความจำที่ใช้ร่วมกันใช้ร่วมกัน ) เป็นจำนวนที่ค่อนข้างใหญ่ของโปรเซสเซอร์ แต่สื่อสารข้ามประมวลผลช้า ( ถึง fewmilliseconds ในกรณีที่ไม่มีของฮาร์ดแวร์สำหรับการสื่อสาร ) , เนื่องจากมันมีที่จะไปผ่านทางเครือข่ายการสื่อสาร .
ใช้อะไรในระบบ แต่ละโหนดของเครื่อง ประกอบด้วย หน่วยประมวลผล , หน่วยความจำ , และหนึ่งหรือมากกว่าหนึ่งดิสก์ โปรเซสเซอร์ในหนึ่งโหนดอาจสื่อสารกับอีกตัวที่โหนดอื่น โดยเครือข่ายการเชื่อมต่อความเร็วสูง โหนดการทำงานเป็นเซิร์ฟเวอร์สำหรับข้อมูลบนดิสก์หรือดิสก์ที่ใส่เจ้าของ เนื่องจากการอ้างอิงดิสก์ท้องถิ่นจะให้บริการโดยดิสก์แต่ละตัวประมวลผลใช้อะไรแบบเอาชนะข้อเสียของที่ต้องการทั้งหมด I / O ผ่านเครือข่ายเชื่อมต่อโครงข่ายเดียวเท่านั้นสอบถามเข้าถึงดิสก์ต่างถิ่น และประชาสัมพันธ์ ผลผ่านเครือข่าย สถาปัตยกรรมแบบ
รวมคุณลักษณะของหน่วยความจำที่ใช้ร่วมกัน shareddisk และใช้สถาปัตยกรรมอะไรเลย ที่ด้านบน
ประกอบด้วยโหนดเชื่อมต่อกันด้วยการเชื่อมต่อเครือข่าย และไม่ใช้ดิสก์หรือหน่วยความจำกับอีกคนหนึ่ง ดังนั้นระดับบนสุดคือการแบ่งปันอะไรสถาปัตยกรรม แต่ละโหนดในระบบจะเป็นหน่วยความจำที่ใช้ร่วมกันกับระบบหลายโปรเซสเซอร์ อีกวิธีหนึ่งคือ แต่ละโหนดสามารถใช้ระบบดิสก์ และแต่ละระบบใช้ชุดของดิสก์เป็นหน่วยความจำที่ใช้ร่วมกันของระบบ ดังนั้นระบบจะถูกสร้างขึ้นเป็นลำดับ ด้วยสถาปัตยกรรมหน่วยความจำที่ใช้ร่วมกันไม่กี่ตัวที่ฐาน และ sharednothing สถาปัตยกรรมด้านบน ด้วยอาจจะใช้ดิสก์สถาปัตยกรรมในกลาง รูป 18.8d แสดงให้เห็นถึงสถาปัตยกรรมลำดับชั้นกับหน่วยความจำที่ใช้ร่วมกันในโหนดเชื่อมต่อกันที่ไม่มีอะไรสถาปัตยกรรม
การแปล กรุณารอสักครู่..
