1 / 26

บทที่ 15

บทที่ 15. ในบทนี้เราจะอธิบายวิธีการที่ DFS สามารถดำเนินการออกแบบและทำให้สำเร็จ ขั้นแรกเราจะอภิปรายแนวคิดโดยทั่วไปที่เป็นพื้นฐานของ DFS จากนั้นเราจะอธิบายด้วยตัวอย่างของแนวคิดของเรา โดยทำการทดสอบหนึ่งที่มีผลกระทบต่อ DFS คือ ระบบไฟล์ของแอนดูรว์ ( Andrew File System : AFS).

elkan
Download Presentation

บทที่ 15

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. บทที่ 15 ในบทนี้เราจะอธิบายวิธีการที่ DFS สามารถดำเนินการออกแบบและทำให้สำเร็จ ขั้นแรกเราจะอภิปรายแนวคิดโดยทั่วไปที่เป็นพื้นฐานของ DFS จากนั้นเราจะอธิบายด้วยตัวอย่างของแนวคิดของเรา โดยทำการทดสอบหนึ่งที่มีผลกระทบต่อ DFS คือ ระบบไฟล์ของแอนดูรว์ (Andrew File System : AFS) Distributed File System (ระบบไฟล์แบบกระจาย)

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

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

  4. 15.2 การตั้งชื่อและความโปร่งใส การตั้งชื่อเป็นการวางแผนระหว่างโลคอลและวัตถุทางกายภาพ เนื่องจากระบบจัดการ ฟิสิคอลบล็อก ของข้อมูลที่เก็บอยู่ในดิสก์แทร็ค โดยปกติแล้วผู้ใช้อ้างถึงไฟล์โดยชื่อที่เป็นข้อความ ต่อมาคือที่แมปไปยังตัวเลขที่ระดับต่ำเป็นตัวระบุที่แมปไปยังดิสก์บล็อก ใน DFS ที่โปร่งใส มิติใหม่จะถูกเพิ่มในทำให้เป็นนามธรรม คือ การซ่อนในเครือข่ายที่ไฟล์อยู่ ในการระบบไฟล์ที่มีแบบแผน, ช่วงของการวางแผนการตั้งชื่อเป็นที่อยู่ภายในดิสก์ ใน DFS ช่วงนี้จะถูกขยายเพื่อรวมเฉพาะเครื่องที่ดิสก์ที่มีไฟล์ที่เก็บไว้

  5. 15.2.1 โครงสร้างการตั้งชื่อ เราจำเป็นต้องแยกความแตกต่าง 2 ประการของนิยามที่เกี่ยวข้องกับการวางแผนชื่อใน DFS 1. สถานที่ตั้งโปร่งใส ชื่อของไฟล์ใดๆ ต้องไม่เปิดเผยคำบอกใบ้สถานที่จัดเก็บทางกายภาพของไฟล์ 2. สถานที่ตั้งอิสระ ชื่อของไฟล์ต้องไม่เปลี่ยนไปเมื่อสถานที่จัดเก็บทางกายภาพเปลี่ยนแปลง ในทางปฏิบัติส่วนใหญ่ในปัจจุบัน DFSs ยังคงที่ การวางแผนสถานที่ตั้งที่โปร่งใสสำหรับระดับชื่อของผู้ใช้ อย่างไรก็ตามระบบไม่ได้สนับสนุนการย้ายไฟล์ ที่มีการเปลี่ยนตำแหน่งของไฟล์โดยอัตโนมัติซึ่งไม่น่าเกิดขึ้น

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

  7. 15.2.2 แผนการตั้งชื่อ แผนการตั้งชื่อใน DFS มีสามวิธีหลัก วิธีการที่ง่ายที่สุดไฟล์จะถูกระบุโดยบางการผสมของโฮสต์เนมและโลคอลเนม ซึ่งรับประกันได้ว่าไม่ซ้ำกันของชื่อทั้งระบบ ในอิบิส(Ibis) อย่างไรก็ตามการดำเนินการไฟล์เช่นเดียวกันสามารถใช้ทั้งโลคอลและรีโมทไฟล์ DFS เป็นโครงสร้างเช่นเดียวกับการรวบรวมคอมโพเนนต์ยูนิตเดี่ยว แต่ละยูนิตเป็นการระบบไฟล์ที่มีแบบแผนทั้งหมด วิธีที่สองต่อต้านการทำให้เป็นที่นิยมแพ็คเกจของเครือข่ายสนับสนุน โลคอลไดเรกทอรี ด้วยเหตุนี้การให้ลักษณะของไดเรกทอรีต้นไม้ที่ต่อเนื่องกัน เวอร์ชันแรกของ NFS อนุญาตให้เฉพาะการติดตั้งจากรโมทไดเรกทอรีเมื่อก่อนที่จะใช้งานอย่างโปร่งใส

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

  9. 15.2.3 เทคนิค เพื่อปรับปรุงการได้มาของข้อมูลการวางแผนที่สำคัญที่ เทคนิคในการเอาชนะอุปสรรคนี้คือการเพิ่มที่ตั้งอิสระของไฟล์ที่ระบุในระดับต่ำ ชื่อไฟล์ที่เป็นข้อความที่แมปกับไฟล์ระดับต่ำที่ระบุ ซึ่งแสดงให้เห็นว่าไฟล์ยังคงอยู่ในคอมโพเนนต์บูนิต ผลที่หลีกเลี่ยงไม่ได้คือต้องการการวางแผนระดับที่สองที่จะแมฟ คอมโพเนนต์ยูนิตไปยังตำแหน่งที่ตั้งและต้องการอัพเดทวิธีการที่สัมพันธ์กันอย่างง่าย ๆ และเพิ่มระดับของการเอาออกเพื่อสร้างแผนการตั้งชื่อสถานที่ตั้งอิสระ เราสามารถทำให้เกิดความจำเพาะได้ตลอดเวลาโดยการดูแลไม่ให้ชื่อที่ใช้งานแล้วนำมาใช้อีก โดยการเพิ่มบิตอย่างเพียงพอ หรือโดยใช้ไทม์สแตมป์กับส่วนของชื่อ อีกวิธีหนึ่งในการดูแลขั้นตอนนี้ก็คือเราสละตำแหน่งที่ตั้งในระบบที่โปร่งใส วิธีการโดยทั่วไปที่จะกำหนดในระดับต่ำได้สำเร็จคือการใช้โครงสร้างชื่อ ชื่อนี้จะเป็นบิตสตริงที่มักจะมีสองส่วน ส่วนแรกระบุคอมโพเนนต์บูนิตที่มีแฟ้มอยู่ ส่วนที่สองระบุเฉพาะไฟล์ภายในยูนิต

  10. 15.3 ไฟล์เข้าถึงระยะไกล วิธีหนึ่งที่จะทำการโอนถ่ายได้สำเร็จคือ ด้วยวิธีรีโมทเซอร์วิส หนึ่งในทางเลือกส่วนใหญ่ของการใช้รีโมทเซิร์ฟเวอร์คือแบบจำลองการเรียกกระบวนบวนการของการรีโมท (RPC) การตรวจสอบประสิทธิภาพที่สมควรของวิธีการรีโมทเซอร์วิส เราสามารถใช้รูปแบบของการแคช ในข้อตกลงของระบบไฟล์การแคชที่สมเหตุสมผลเพื่อลด disk I/O ให้น้อยลง ในขณะที่เป้าหมายของ DFS คือลดทั้งการจราจรของเครือข่ายและ disk I/O เราจะอธิบายการดำเนินการแคชใน DFS และในทางตรงกันข้ามกับพื้นฐานการรีโมท-การสาธิตการรีโมท

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

  12. 15.3.2 แคชที่ตั้ง ดิสก์แคชนั้นมีประโยชน์เหนือหลักหน่วยความจำแคชหลัก หน่วยความจำแคชนั้นมีข้อดีอยู่หลายอย่าง 1.หน่วยความจำแคชสำคัญที่จะอนุญาติการทำงาน (จะเป็น) diskless 2.ข้อมูลเพิ่มเติมสามารถเข้าถึงได้อย่างรวดเร็วจากแคชในหน่วยความจำหลักมากกว่ากว่าจากในดิสก์ 3.เทคโนโลยีนั้นเป็นการย้ายและเป็นหน่วยความจำที่ไม่แพงที่ทำให้เกิดประสิทธิภาพที่รวดเร็วขึ้น ซึ่งมันเป็นเกินตามที่คาดการณ์ไว้เพื่อประโยชน์ของดิสก์แคช เซิร์ฟเวอร์แคช จะอยู่ในหน่วยความจำโดยไม่คำนึงถึงหลักที่ผู้ใช้แคชอยู่ ถ้าเราใช้หลักหน่วยความจำแคชกับผู้ใช้เครื่องเกินไปเราสามารถสร้างเพียงแคชเดียวตามกลไกสำหรับใช้ทั้งเครื่องเซิฟเวอร์และผู้ใช้

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

  14. รูปที่ 15.1 Caches และการใช้แคช

  15. 15.3.4 คงเส้นคงวา จะมีอยู่สองวิธีที่จะตรวจสอบความถูกต้องของข้อมูลแคช 1.ทางด้านฝั่งของผู้ใช้ คือ ผู้ใช้จะเริ่มต้นการตรวจสอบความถูกของรายชื่อของเซิร์ฟเวอร์และตรวจสอบ ว่ามีข้อมูลท้องถิ่นสอดคล้องกับมาสเตอร์สำเนาหรือไม่ 2.ของแคช เมื่อเซิร์ฟเวอร์ตรวจหาที่อาจเกิดขึ้นไม่มีความคงเส้นคงวาที่ถูกต้อง มีแนวโน้มที่จะเป็นสำหรับความไม่ลงรอยกันเกิดขึ้นเมื่อสองที่แตกต่างกัน ทางผู้ใช้จะเกิดในขัดแย้งโหมดแคชไฟล์ ทางด้านฝั่งของเซิร์ฟเวอร์ คือ เซิร์ฟเวอร์จะบันทึกสำหรับแต่ละผู้ที่ใช้แฟ้ม

  16. 15.3.5 เปรียบเทียบการใช้แคชและบริการระยะไกล สิ่งที่มีความจำเป็นเพื่อเพิ่มประสิทธิภาพการทำงานนี้โดยการดูที่ข้อดีและข้อเสียของทั้งสองวิธีการนี้คือ 1.ส่วนมากการเข้าถึงระยะไกลจะรวดเร็ว สำหรับแต่ละเซิร์ฟเวอร์นอกจากจะมีการติดต่อครั้งคราวเท่านั้นแทนที่จะเข้าถึงเซิร์ฟเวอร์โดยตรง 2. การรวมเครือข่ายจะมีประสิทธิภาพข้อมูลต่ำ การส่งชุดเพื่อตอบสนองคำขอเฉพาะ 3. แคช-กับความคงเส้นคงวา ปัญหาคือข้อเสียเปรียบหลักของแคช เมื่อเข้าสู่รูปแบบการแสดงการเขียนแคชคือดีกว่า 4. การใช้แคชที่มีประโยชน์ ควรจะดําเนินการในเครื่องที่มีทั้งดิสก์หรือหน่วยความจำหลักขนาดใหญ่ การเข้าถึงระยะไกลในหน่วยความจำขนาดเล็ก 5. เนื่องจากข้อมูลจะถูกโยกย้ายระหว่างเซิร์ฟเวอร์และไคลเอนต์ไฟล์การดำเนินงานที่ระดับต่ำ อินเตอร์เฟสจะแตกต่างจากที่ระดับบนอินเตอร์เฟซผู้ใช้

  17. 15.4 Stateful Versus Stateless Service ตามปกติผู้ใช้ต้องดำเนินการ open() การดำเนินงานในแฟ้มก่อนที่เข้าถึงแฟ้ม เซิร์ฟเวอร์จะจัดการข้อมูลเกี่ยวกับแฟ้มจากดิสก์เก็บไว้ในหน่วยความจำเป็นบริการลักษณะเป็นเชื่อมต่อระหว่างผู้ใช้และเซิร์ฟเวอร์ในระหว่างการเซสชัน ซึ่งเป็นบริการที่ช่วยให้เซิร์ฟเวอร์เป็นหน่วยความจำหลักที่จะเก็บข้อมูลเกี่ยวกับลูกค้า ซึ่ง AFS เป็นระบบไฟล์แบบการบริการ สเตทฟูล การหลีกเลี่ยงบริการข้อมูลสถานะเซิร์ฟเวอร์ไม่จำเป็นต้องเก็บตารางเปิดแฟ้มในหน่วยความจำหลักผู้ใช้จะต้องมีระบวนการจะเปิดแฟ้มและเปิดที่จะไม่ส่งผลในระยะไกลการส่งข้อความ การอ่านและเขียนจะเป็นงานที่รีโมทข้อความ ซึ่ง NFS เป็นไฟล์บริการชนิดนี้

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

  19. 15.5AFS ระบบไฟล์แอนดรูว์หรือ AFS ถูกพัฒนาขึ้นโดยยึดกลไกการใช้ข้อมูลร่วมกันระหว่างไคลเอ็นต์ต่างสถาปัตยกรรมเป็นพื้นฐาน AFS ถูกคิดค้นขึ้นเพื่อแก้หลายๆ ปัญหาของ DFSs อย่างง่าย การดำเนินการดังกล่าวเป็นการดำเนินการโดยอัตโนมัติ หนึ่งในคุณสมบัติที่เยี่ยมยอดมากที่สุดของ AFS คือความสามารถในการขยายขนาด 15.5.1 ภาพรวม ไคลเอ็นต์จะมีพื้นที่ซึ่งถูกแบ่งไว้สำหรับไฟล์ชื่อ ส่วนเซิร์ฟเวอร์เฉพาะจะถูกเรียกรวม ๆ ว่าไวซ์ โดยพื้นที่ของชื่อที่ถูกใช้ร่วมกันมีลักษณะคุณสมบัติเหมือนกันและมีลำดับชั้นไฟล์ที่มีความโปร่งใสของที่ตั้งโดยมีพื้นที่ของชื่อที่ถูกใช้ร่วมกันเป็นตัวที่เกิดตามมาเซิร์ฟเวอร์จะรับผิดชอบในส่วนการจัดเก็บและจัดการพื้นที่ของชื่อที่ถูกใช้ร่วมกันและมีโปรแกรมระบบที่จำเป็นเพื่อการดำเนินการอย่างอัตโนมัติและเพื่อประสิทธิภาพที่ดีขึ้น

  20. 15.5.2 พื้นที่ของชื่อที่ถูกใช้ร่วมกัน พื้นที่ของชื่อที่ถูกใช้ร่วมกันถูกสร้างขึ้นจากกลุ่มหน่วยองค์ประกอบ (component) ที่เรียกว่าวอลุ่ม (volumes) วอลุ่มถูกจับอยู่รวมกันโดยกลไกที่คล้ายกับกลไกหนึ่งในยูนิกซ์ วอลุ่มจึงเป็นหน่วยการจัดการสำคัญและมีบทบาทหลักในการระบุตัวตนและหาที่ตั้งของแต่ละไฟล์ เพื่อความสมดุลของดิสก์สเปซที่สามารถใช้งานได้วอลุ่มจำเป็นต้องย้ายระหว่างดิสก์พาร์ติชันและเซิร์ฟเวอร์ เพื่อที่ว่าฐานข้อมูลสถานที่ตั้งจะได้ไม่จำเป็นต้องอัพเดทอย่างตรงจังหวะกัน ในบางจุดวอลุ่มจะปิดการใช้งานชั่วคราวเพื่อที่การปรับปรุงครั้งล่าสุดวอลุ่มใหม่จึงสามารถใช้งานได้อีกครั้งที่ที่ตั้งใหม่ การดำเนินการเคลื่อนย้ายหรือเคลื่อนไหววอลุ่มเป็นส่วนที่เล็กและละเอียดมาก คือถ้าเซิร์ฟเวอร์ไม่เกิดความผิดพลาด การดำเนินการก็จะถูกยกเลิก

  21. 15.5.3 การดำเนินการของไฟล์และซีแมนทิคที่สอดคล้อง ระบบปฏิบัติการในแต่ละเวิร์คสเตชันได้ขัดขวางการดำเนินการของไฟล์ซิสเต็มคอลและจะส่งไฟล์ซิสเต็มคอลมาที่กระบวนการระดับไคลเอ็นต์เวิร์คสเตชัน กระบวนการนี้เรียกว่าวีนัส วีนัสอาจติดต่อกับไวซ์เฉพาะเมื่อไฟล์ถูกเปิดหรือปิดเท่านั้น ผลลัพธ์ที่ตามมาคือการเขียนที่ตั้งหรือบางไซต์จะไม่สามารถมองเห็นได้โดยทันทีที่ไซต์อื่น ๆ นอกจากนี้วีนัสยังแคชเนื้อหาของไดเร็กทอรี่และซิมโบลิคลิ้งค์ด้วยแต่ละองค์ประกอบในพาธชื่อจะถูกเฟ็ทช์ (fetch) วีนัสทำการตรวจสอบไดเร็กทอรี่ที่ถูกเฟ็ทช์เฉพาะที่โดยใช้ฟิดเข้ามาช่วย การเรียกเพื่อจะเปิดไฟล์ดังกล่าวในภายภาคหน้าจะไม่เกี่ยวพันกับการสี่อสารผ่านเครือข่ายใด ๆ ทั้งสิ้น กรณียกเว้นเพียงกรณีเดียวของหลักการแคชคือการปรับปรุงไดเร็กทอรี่ซึ่งถ้าเกิดขึ้นโดยตรงบนเซิร์ฟเวอร์ที่เชื่อถือได้แล้วจะส่งผลให้ไดเร็กทอรี่นั้นมีความสมบูรณ์

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

  23. กระบวนการระดับไคลเอ็นต์เดี่ยวบนแต่ละไฟล์เซิร์ฟเวอร์ ทุกไฟล์บริการถูกร้องขอจากไคลเอ็นต์ กระบวนการนี้ใช้แพ็กเกจ lightweight-process package แพ็กเกจ RPCจะถูกรวมเข้ากับแพ็กเกจlightweight-process package และเนื่องจากกระบวนการดังกล่าว การยินยอมให้ไฟล์เซิร์ฟเวอร์เกิดขึ้นพร้อมกันได้จึงเป็นการดำเนินการระหว่างหนึ่ง RPC ต่อหนึ่ง lightweight-process package การถ่ายโอนไฟล์ทั้งหมดคือการดำเนินการที่เป็นผลข้างเคียงมาจาก RPC calls หนึ่งการเชื่อมต่อ RPC จะมีต่อหนึ่งไคลเอ็นต์ กลุ่มของlightweight-process package ได้ให้บริการคำร้องขอของไคลเอ็นต์บนทุก ๆ การเชื่อมต่อ

  24. สรุป DFS คือระบบไฟล์บริการที่ ไคลเอ็นต์ เซิร์ฟเวอร์ และเครื่องจัดเก็บข้อมูลกระจายอยู่ท่ามกลางที่ตั้งของระบบกระจาย เพราะฉะนั้น กิจกรรมการบริการจึงมีการดำเนินการข้ามเครือข่ายได้ แทนที่จะมีตะกร้าข้อมูล (repository) อยู่ที่ศูนย์กลางเพียงที่เดียว แต่กลับมีเครื่องจัดเก็บข้อมูลที่เป็นอิสระอยู่มากมาย ในเชิงอุดมคติ DFS ควรมองไคลเอ็นต์ของมันเป็นเหมือนระบบไฟล์ตามแบบแผน ความหลากหลายรวมถึงการกระจายของเซิร์ฟเวอร์และเครื่องจัดเก็บข้อมูลของมันควรทำให้มีความโปร่งใส นั่นหมายถึงว่าอินเตอร์เฟสไคลเอ็นต์ของ DFS ไม่ควรที่จะจำแนกออกเป็นโลคอลและไฟล์ระยะไกล ซึ่งก็ขึ้นอยู่กับ DFS ในการกำหนดตำแหน่งของไฟล์และจัดเรียงการขนส่งข้อมูล DFS ที่โปร่งใสจะอำนวยความสะดวกให้ไคลเอ็นต์ในเรื่องความยืดหยุ่น โดยการนำเอาสถาปัตยกรรมของไคลเอ็นต์มาที่ไซต์ที่ตั้งด้วยเมื่อไคลเอ็นต์ทำการเข้าสู่ระบบ (log in)

  25. มีหลักการมากมายที่ใช้ในสำหรับโครงสร้างการให้ชื่อใน DFS หลักการอย่างง่ายคือไฟล์จะถูกให้ชื่อโดยการรวมกันของชื่อโฮสต์และชื่อท้องถิ่นบางส่วน ซึ่งยืนยันได้ว่าเป็นชื่อที่เป็นเอกภาพและกว้างขวาง อีกหลักการคือการเผยแพร่โดย NFS ซึ่ง NFS จะเตรียมวิธีการที่จะแนบไดเร็กทอรี่ระยะไกลไปยังไดเร็กทอรี่ท้องถิ่น เป็นคุณลักษณะของต้นไม้ไดเร็กทอรี่ที่เชื่อมโยงกัน โดยปกติแล้ว การร้องขอเพื่อเข้าถึงไฟล์ระยะไกลนั้นจะดำเนินการโดยสองวิธีการ วิธีของการบริการระยะไกลจะกระทำโดยคำร้องจะถูกส่งไปที่เซิร์ฟเวอร์ เครื่องเซิร์ฟเวอร์จะสร้างการเข้าถึง จากนั้นจะส่งผลลัพธ์กลับมายังไคลเอ็นต์ ส่วนวิธีของการแคช หากข้อมูลจำเป็นต้องตอบสนองคำร้องขอการเข้าถึงที่ยังไม่ได้ดำเนินการแคช จะต้องทำสำเนาข้อมูลที่นำมาจากเซิร์ฟเวอร์และส่งไปที่ไคลเอ็นต์ ซึ่งการเข้าถึงจะถูกสร้างขึ้นบนสำเนาแคช แก่นหลักอยู่ที่การรักษาสภาพดิสก์บล็อกที่ถูกเข้าถึงในแคช เพื่อที่ว่าการเข้าถึงข้อมูลเดียวกันซ้ำ ๆ จะได้ดำเนินการเฉพาะที่โดยไม่เกิดปัญหาเครือข่ายขึ้น นโยบายการแทนที่ถูกนำมาใช้เพื่อจัดเก็บขนาดของขอบเขต ปัญหาของการเก็บสำเนาแคชให้สอดคล้องกับไฟล์มาสเตอร์คือปัญหาความสอดคล้องของแคช

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

More Related