GotoKnow
  • เข้าระบบ
  • สมัครสมาชิก
  • แผงจัดการ
  • ออกจากระบบ
GotoKnow

การฝึกงานวันที่ 28 เมษายน 2549

~เทคโนโลยีกริด~

 

  • เข้าอบรมเรื่องเทคโนโลยีกริด ความรู้พื้นฐานทางเทคโนโลยี สถาปัตยกรรมของกริด และการนำเทคโนโลยีกริดไปประยุกต์ใช้

-ความหมายของกริด

  • Grid หมายถึง Infrastructure ซึ่งสนับสนุนการรวมและร่วมใช้งานของ High-end computers เครือข่าย ฐานข้อมูล และเครื่องมือทางวิทยาศาสตร์ ซึ่งเป็นจัดการโดยองค์กรต่าง ๆ ที่หลากหลาย
  • Application ของกริด ส่วนใหญ่ มักจะเกี่ยวข้องกับการคำนวณหรือข้อมูลปริมาณมหาศาล และมักต้องการการรักษาความปลอดภัย ของทรัพยากรซึ่งใช้ร่วมกันระหว่างองค์กร
  • เทคโนโลยีกริด (GRID Technology) เป็นเทคโนโลยีที่สามารถเชื่อมต่อทรัพยากรคอมพิวเตอร์หลายๆหน่วยเข้าด้วยกัน
  • ทรัพยากรคอมพิวเตอร์เหล่านี้อาจจะเป็นหน่วยประมวลผล เนื้อที่สำหรับจัดเก็บข้อมูล ระบบประมวลผลคลัสเตอร์ หรือฐานข้อมูล เป็นต้น
  • ทรัพยากรเหล่านี้อาจจะตั้งอยู่ในสถานที่ที่ใกล้กันหรือ อาจจะไกลกันมาก อยู่คนละทวีปก็ได้
  • การเชื่อมต่อทรัพยากรทั้งหลายเข้าเป็นหน่วยเดียวกันนี้ นำไปสู่การแชร์ ทรัพยากรขนาดใหญ่
  • การร่วมมือกันระหว่างผู้ใช้และโปรแกรมที่อยู่คนละสถานที่คนละองค์กร หรือคน ละทวีป  ทำให้บางองค์กรเรียกเทคโนโลยีนี้ว่า การประมวลผลตามต้องการ (On-demand computing) อีก ด้วย
  • เทคโนโลยีการประมวลผลแบบ Grid แตกต่างไปจากหลักการประมวลผลแบบกระจาย (Distributed Computing) โดยที่จะเน้นไปที่การ แบ่งปันทรัพยากรในการประมวลผลในระดับใหญ่ (Large scale resource sharing) เพื่อที่จะรองรับการ ประมวลผลที่ต้องการประสิทธิภาพในการคำนวณสูง หรือที่รู้จักกันในชื่อ High Performance Computing; HPC

-ความหมายของ Grid Computing

  • Grid Computing คือการ นำทรัพยากรจากเครื่องคอมพิวเตอร์หลาย ๆ เครื่องมาช่วยกันแก้ปัญหาร่วมกันในช่วงเวลาเดียวกัน โดยเฉพาะ กับการประมวลผลงานทางวิทยาศาสตร์ที่ต้องการความสามารถในการประมวลผลมาก หรือเป็นงานที่ทำกับ ข้อมูลเป็นจำนวนมาก
  • ในสมัยก่อน การประมวลผลที่มีความซับซ้อนมาก  ต้องทำด้วยเครื่องที่เรียกว่าซุปเปอร์คอมพิวเตอร์ ที่มีพลังมหาศาลในการประมวลผล แต่ก็มีข้อเสียคือ มีราคาแพงทั้งในการจัดหาและการดูแลบำรุงรักษา แต่ด้วยเทคโนโลยีของการผลิตไมโครชิปทำให้เครื่องไมโครคอมพิวเตอร์ที่มีราคาถูกลง ๆ และมีความสามารถในการประมวลผลที่มากขึ้น ประกอบกับเทคโนโลยี ด้านเน็ตเวิร์กที่สามารถให้เครื่องเหล่านี้สามารถสื่อสารกันได้ทั้งกับเครื่องที่อยู่ใกล้กันและอยู่ห่างไกลกัน แนวคิดของการนำเครื่องเหล่านี้มาทำงานร่วมกันจึงเริ่มมีให้เห็นเป็นรูปธรรมขึ้น และกลายเป็นที่มาของ Grid Computing
  • เวลาที่พูดถึงกริดไม่ได้จำเพาะอยู่ที่การนำ CPU มาช่วยกันประมวลผลเท่านั้น แต่รวมถึงการใช้ทรัพยากรอื่น ๆ ร่วมกันด้วย ไม่ว่าจะเป็นเนื้อที่สำหรับการจัดเก็บไฟล์และข้อมูล แบนวิตของเน็ตเวิร์กฐานข้อมูลและคลังข้อมูล รวมถึงโปรแกรมต่าง ๆ
  • โครงสร้างของ Grid Computing จะรวมถึงวิธีการในการจัดให้ การจัดหา การตรวจสอบสิทธิ์ของการใช้ การจัดแบ่งและจัดลำดับการทำงาน การรวบรวมผล และการติดตามต่าง ๆ ซึ่งทั้งหมดนี้จะถูกจัดการด้วยมิดเดิลแวร์ (Middleware)
  • เทคโนโลยี Grid Computing และ Cluster Computing เป็นเทคโนโลยีที่มีแนวโน้มที่จะมีบทบาท สำคัญต่อการพัฒนาประเทศในอนาคต เนื่องจากเป็นการเพิ่มสมรรถนะการประมวลที่สูงโดยลดต้นทุนที่ต่ำกว่า เพราะสามารถนำเทคโนโลยี Cluster มาใช้ทดแทน การลงทุนจัดหาเครื่องคอมพิวเตอร์ขนาดใหญ่ที่ราคาสูง สำหรับทุกหน่วยงานที่ทำงานวิจัย และการใช้ประมวลผลในลักษณะ Grid Computing เพื่อเชื่อมโยง ทรัพยากรคอมพิวเตอร์ที่กระจายตัวกันอยู่ให้ทำงานร่วมกันเพื่อประหยัดค่าใช้จ่าย
  • นอกจากนั้นระบบกริดยังทำ ให้เกิดโครงสร้างการติดต่อระหว่างระบบโปรแกรมที่เป็นมาตรฐานและมีความปลอดภัยสูง
  • สำหรับประเทศ ไทย การนำระบบ Grid Computing ไปใช้ยังไม่กว้างขวาง เนื่องจากประสบปัญหาขาดความเข้าใจในระบบ Grid Computing อย่างถ่องแท้

-ประโยชน์ของเทคโนโลยีกริด

  • ความสามารถในการทำงานวิจัยยาก ๆ ที่ต้องอาศัยการประมวลผลสูง
  • งานที่ต้องทำด้วยคอมพิวเตอร์ ซึ่งถ้าทำเครื่องเดียวอาจจะต้องใช้เวลาเป็นปีจึงจะคำนวณเสร็จ ให้เหลือเวลาในการคำนวณในระดับเป็นวัน เป็นชั่วโมง เท่านั้น
    ตัวอย่างที่เห็นเป็นรูปธรรม คือ โครงการไทยกริดพอทัลเพื่อการคิดค้นสูตรยา หรือ Thai Grid Drug Design เป็นส่วนหนึ่งของโครงการคัดสรรสารออกฤทธิ์ทางชีวภาพด้วยระบบกริด อธิบายง่ายๆ คือการที่เรา เอาเทคโนโลยีกริดกริดคอมพิวติ้งมาคำนวณหาสารที่สามารถออกฤทธิ์เป็นยาได้จากฐานข้อมูลสารจำนวน 3,000 ชนิด
  • Grid Computing ได้เปิดช่องให้ระบบมีความยืดหยุ่นได้มากขึ้น นับจากการสร้าง โครงข่ายการประมวลผลจากคอมพิวเตอร์ที่แตกต่างกันได้และยังสามารถปรับแต่งค่าต่างๆ ในการใช้งานให้ เหมาะกับสภาพแวดล้อมได้มากขึ้น ผลที่ได้นอกจากประสิทธิภาพในการประมวลผลแล้วยังได้การบริหาร แบนด์วิดธ์ที่ดีขึ้นมาด้วยพร้อม ๆ กัน

-จุดมุ่งหมายในการนำเทคโนโลยีกริดมาใช้งาน

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

-สถาปัตยกรรมระบบกริด

  • ยุคแรกของกริดจะเน้นการใช้งานด้านวิทยาศาสตร์ โดยมุ่งสร้างโครงสร้างของระบบที่รวมพลังการประมวลผลเข้าหากัน เรียกว่า Computational Grid และ ระบบ ที่ช่วยในการขนส่งข้อมูลจำนวนมากเรียกว่า Data Grid
  • ในปัจจุบันกริดเริ่มวิวัฒนาการเข้าสู่ยุคที่สอง คือ Service oriented grid ซึ่งมุ่งเน้นในการสร้างบริการ (Services) และการพัฒนาโปรแกรมประยุกต์ในลักษณะ สถาปัตยกรรมเน้นบริการ (Service Oriented Architecture หรือ SOA)

-สถาปัตยกรรมระบบกริดยุคที่ 1

  • โครงสร้างของระบบกริดยุคที่ 1
    • Grid Fabric Layer ในระดับนี้จะประกอบไปด้วย ทรัพยากรต่างๆ เช่น คอมพิวเตอร์สมรรถนะ สูง ระบบเก็บข้อมูลขนาดใหญ่ เครือข่าย ฐานข้อมูล ซึ่งทรัพยากรเหล่านี้จะกระจายตัวอยู่บนเครือข่าย
    • Connectivity Layer กำหนดมาตรฐานของการสื่อสารแบบปลอดภัยและการตรวจสอบผู้ใช้ และสิทธิต่างๆ ในเลเยอร์นี้จะช่วยให้มีการติดต่อระหว่างซอฟต์แวร์ใน Fabric Layer อย่างปลอดภัยและเป็น รูปแบบเดียวกัน เทคโนโลยี อย่างเช่น Secure shell (SSL), Public key encryption จะเป็นแกนหลัก
    • Resource Layer ซอฟต์แวร์ใน Layer นี้ จะกำหนดชุดของ protocol ที่ทำให้มีการจอง การใช้ การเจรจา การควบคุมและติดตาม รวมทั้งการคิดราคาการใช้งานบนทรัพยากรต่างๆ ในเลเยอร์นี้จะต้อง สนับสนุนการสอบถามและการควบคุมสถานะของทรัพยากรแต่ละอย่าง ซึ่งระบบความปลอดภัยทั้งหมดจะ พึ่งพา connectivity layer เป็นหลัก
    • Collective layer ในเลเยอร์นี้จะเป็นการประสานงานของการใช้งานทรัพยากรจำนวนมากให้ เป็นไปตามความต้องการของ application บริการเหล่านี้บางส่วนได้แก่ Directory Services, Scheduling Services, Data Replication Services, Collaboratory Services
    • Application Layer ในเลเยอร์นี้คือ โปรแกรมประยุกต์แบบกระจายที่จะใช้บริการของทุกเล เยอร์ในการบริการผู้ใช้และทำงานตามที่ผู้ใช้ต้องการ
  • ในการพัฒนาซอฟแวร์นั้นโครงสร้างทั้งหมดจะถูกรวมไว้ในซอฟต์แวร์ที่เรียกว่า Grid Middleware
  • ปัจจุบันมิดเดิลแวร์ที่ใช้กันอย่างกว้างขวางและเป็นมาตรฐานที่สุดคือ โกลบัส (Globus)
  • โกลบัสที่ใช้งานกันมากคือ รุ่น 3.2 ผู้ใช้งานระบบกริดจะเรียกใช้ API ของมิดเดิลแวร์หรือเรียกใช้ บริการบางอย่างผ่าน Command line utility ที่ระบบให้มา

-สถาปัตยกรรมของระบบกริดยุคที่สอง

  • โกลบัสจึงได้เสนอสถาปัตยกรรม Open Grid Services Architecture (OGSA) ซึ่งเป็นแนวคิดหลักและกำลัง ถูกสร้างเป็นมาตรฐานโดย Global Grid Forum 
  • ในสถาปัตยกรรมแบบ SOA นั้นจะถือว่าระบบประกอบด้วยบริการ (Service) จำนวนมากกระจายตัวกันอยู่บนเครือข่าย โดยมีผู้ให้บริการ (Service Provider) ทำหน้าที่ให้บริการจากนั้นโปรแกรมประยุกต์จะเป็นผู้เรียกใช้บริการ (Service requestor) มาทำงานตามคำสั่งของผู้ใช้ การหากว่ามีผู้ให้บริการใดและอยู่ที่ไหนจะทำผ่านผู้ลงทะเบียน (Service registry) ซึ่งผู้ให้บริการต้องมาลงทะเบียนเอาไว้ ในระบบกริดนั้นกลไกเหล่านี้จะถูกสร้างไว้เป็นพื้นฐานและมีขีดความสามารถบางอย่างเพิ่มขึ้นมา ทำให้สามารถพัฒนาโปรแกรมประยุกต์ขนาดใหญ่ที่กระจายตัวผ่านเครือข่ายได้ง่าย
  • ตัวอย่างได้แก่ Factory ส่วนที่ดูแล Service provider ทำให้สร้างและเรียกใช้บริการต่างๆ ได้ง่าย
  • การทำงานของกริดหรือซูเปอร์คอมพิวเตอร์ มีลักษณะเหมือนกับการกระจายแหล่งประมวลผล โดยมี แม่ข่ายกลางเป็นตัวควบคุม และตรวจสอบการจราจร ซึ่งจะแบ่งงานออกเป็นส่วนๆ และสั่งการให้คอมพิวเตอร์ทำงาน เมื่องานแต่ละส่วนประมวล ผลเรียบร้อยแล้ว ก็จะนำผลที่ได้มารวมกัน และสั่งงานต่อไปจนกว่างานชิ้นใหญ่จะเสร็จ

-การนำระบบกริดไปประยุกต์ใช้งาน

  • การนำเทคโนโลยี Grid สู่การใช้งานเชิงพาณิชย์
    • การนำเทคโนโลยี Grid มาใช้กับระบบเว็บเซอร์วิส หรือใช้ในการให้บริการลูกค้าด้านต่างๆ ผ่านเครือข่ายอินเทอร์เน็ต เว็บเซอร์วิสเป็นระบบอัตโนมัติที่พัฒนาขึ้นมาเพื่อให้ความสะดวกกับทั้งบริษัทและผู้ใช้ ที่เป็นลูกค้าของบริษัทโดยใช้ซอฟต์แวร์พิเศษเป็นตัวทำงาน
    • ตัวอย่างเช่น เว็บเซอร์วิสอาจช่วยให้ระบบ ฐานข้อมูลสินค้าของบริษัทสามารถติดต่อกับผู้จัดจำหน่ายได้โดยตรง เพื่อสั่งซื้อสินค้าอัตโนมัติ  เมื่อสินค้าในคลังใกล้จะหมด หรือในการนัดตรวจรักษาโรค ผู้ป่วยสามารถใช้เว็บเซอร์วิสสื่อสารกับฐานข้อมูลของแพทย์ ประจำตัว เพื่อจัดหาช่วงเวลาที่ว่างตรงกันโดยอัตโนมัติ
  • การรวมพลังการคำนวนแบบมหาศาลให้งานวิทยาศาสตร์และวิศวกรรม
    • ในปัจจุบันมีงานบางงานต้องการใช้คอมพิวเตอร์อย่างมหาศาล ตัวอย่างเช่น การ Render ภาพกราฟิก จำนวนมากเพื่อสร้างภาพยนตร์การ์ตูน การค้นหายา การออกแบบรถยนต์ งานเหล่านี้สามารถทำให้เร็วขึ้น โดย การกระจายงานไปบนระบบกริด
    • เครื่องคอมพิวเตอร์ต้องการทำงานคำนวนจะใช้คำสั่งส่งงานให้ซอฟต์แวร์พิเศษ ที่เรียกว่า Resource Broker หรือ grid scheduler ซึ่งมีหลายตัวเช่น Condor/G, Nimrod/G, SQMS/G เป็นต้น ซอฟต์แวร์ broker นี้จะใช้บริการของกริดตามหาเครื่องคอมพิวเตอร์ที่ว่างงาน จากนั้นจะส่งโปรแกรมไปให้โดยบริการ Remote execution ของกริดที่เรียกว่า GRAM (Grid Resources Access and Management) เมื่องานนั้นใช้เครื่องปลายทำงานเสร็จแล้ว ระบบกริดร่วมกับ broker ก็จะส่งผลที่ได้กลับมาให้ผู้ใช้ การทำงานในลักษณะนี้ ทำให้ผู้ใช้สามารถใช้งานเครื่องนับพันบนกริดให้เป็นระบบหนึ่งเดียวกันได้
  • การพัฒนาโปรแกรมประยุกต์แบบ SOA
    • กริดได้กำหนดมาตรฐานในการสื่อสารแบบ Web Service ที่มีความปลอดภัยสูงไว้ ดังนั้น ผู้พัฒนาสามารถนำระบบกริดมาใช้ในองค์กรเพื่อสร้างระบบโปรแกรมประยุกต์ที่มีความปลอดภัยสูงได้ แนวทางที่จำเป็นคือ
      • ออกแบบโปรแกรมประยุกต์โดยแยกส่วนโมดูลพื้นฐานมาสร้างเป็นบริการ หรือ Service
      • สร้าง Grid Services และติดตั้ง (Deploy) บนเครื่องต่างๆ
      • สร้างโปรแกรมประยุกต์เพื่อควบคุม workflow ของข้อมูลและการคำนวนให้ถูกต้องในขณะนี้ซอฟต์แวร์หลายตัวเช่น Oracle ได้เริ่มสนับสนุนการทำงานแบบกริดแล้ว ซึ่งทำให้การสร้าง โปรแกรมประยุกต์ที่ใช้งานฐานข้อมูลในรูปแบบนี้บนกริดจะแพร่หลายมากขึ้นในอนาคต
  • การส่งผ่านข้อมูลแบบปลอดภัย
    • ระบบกริดจะมีเทคโนโลยีในการทำ Replica catalog ทำให้สามารถติดตามการวางตำแหน่งของไฟล์ที่กระจายตัวกันอยู่บนเครือข่ายได้
    • การใช้งานอย่างหนึ่งของกริด คือการนำไปสร้างโครงสร้างที่มีความปลอดภัยสูงในการส่งรับข้อมูลขนาดใหญ่ กริดในลักษณะนี้จะเรียกว่า Data Grid
    • นอกจากนั้นในขณะนี้มีซอฟต์แวร์เรียกว่า OGSA DAI ซึ่งพัฒนามาจากยุโรป ซอฟต์แวร์นี้ช่วยสร้าง กริดเซอร์วิสครอบฐานข้อมูล เช่น My SQL, Oracle เพื่อให้โปรแกรมแบบกริด เรียกใช้ได้ ทำให้สามารถสร้างโปรแกรมเชื่อมโยงฐานข้อมูลเข้าหากันผ่านกริดได้

 

 

บันทึกนี้เขียนที่ GotoKnow โดย 

คำสำคัญ (keywords): uncategorized
หมายเลขบันทึก: 25998
เขียน:
แก้ไข:
อ่าน:
สัญญาอนุญาต: สงวนสิทธิ์ทุกประการ

ความเห็น (0)