Cloud Computing

CLOUD COMPUTING


 

โดย  วรลักษณ์  คงเด่นฟ้า

ภาควิชาวิศวกรรมไฟฟ้าและ คอมพิวเตอร์

คณะวิศวกรรมศาสตร์

มหาวิทยาลัยนเรศวร   จังหวัดพิษณุโลก

Homepage: http://www.ecpe.nu.ac.th/woralak/

Email: woralakk@gmail.com

Cloud computing เป็นเรื่องกำลังได้รับความสนใจเป็นอย่างมาก  ดังจะเห็นได้จากการที่รัฐบาลของประธานาธิบดี Barack Obama ได้เปิดตัว online portal ที่ชื่อว่า App.gov[i] เพื่อให้บริการแอปพลิเคชันทางด้าน Cloud computing แก่หน่วยงานของรัฐบาลสหรัฐเมื่อไม่นานมานี้  ซึ่งเหตุการณ์ในลักษณะนี้ไม่เกิดขึ้นบ่อยครั้งนักในการที่หน่วยงานราชการจะมีความเชื่อมั่นและใช้งานเทคโนโลยีใหม่  เพราะโดยปกติแล้วหน่วยงานราชการจะเลือกใช้งานเทคโนโลยีที่น่าเชื่อถือและได้รับการยอมรับมาพักหนึ่งแล้วเท่านั้น [4]  ดังนั้นบุคคลากรทางด้าน IT ควรที่จะศึกษาและทำความเข้าใจเกี่ยวกับเรื่องของ Cloud computing เพราะน่าจะเป็นเทคโนโลยีที่ถูกนำมาใช้อย่างแพร่หลายในอีกไม่ช้า

Cloud computing คืออะไร


Cloud computing เป็นหลักการที่อธิบายถึงการที่ทรัพยากรทางด้านคอมพิวเตอร์ (computational resources) อาทิ หน่วยความจำ หน่วยประมวลผล ข้อมูล และแอปพลิเคชันต่างๆ ถูกนำมาเสนอให้แก่ผู้ใช้ในลักษณะของบริการ (services) บนอินเตอร์เน็ต [6]  ซึ่งผู้ใช้สามารถเรียกใช้ บริการต่างๆเหล่านี้ได้ทั้งทางโทรศัพท์มือถือ เครื่องคอมพิวเตอร์แบบตั้งโต๊ะ เครื่อง laptop หรือแม้แต่ จากเครื่องเล่นเกมส์ต่างๆ ดังแสดงในรูปที่ 1 

ส่วนชื่อของ Cloud computing นั้นก็ได้รับแรงบันดาลใจมาจากสัญลักษณ์ก้อนเมฆ (หรือ cloud) ซึ่งถูกใช้เพื่อแสดงถึง คอมพิวเตอร์เน็ตเวิร์คหรืออินเตอร์เน็ตใน flow charts และ diagrams ต่างๆนั่น เอง 


รูปที่ 1: หลักการของ Cloud Computing [9]

 

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

 


รูปที่ 2: ตัวย่างของบริษัทที่ให้บริการทางด้าน Cloud Computing [8]

เพื่อที่จะทำความเข้าใจเกี่ยวกับเทคโนโลยีของ Cloud computing รวมทั้งบทบาทและผลกระทบที่มีต่อการดำเนินชีวิตของเราในปัจจุบัน เราลองมาทำความรู้จักกับตัวอย่างของแอปพลิเคชันใน Cloud computing กันก่อน  ซึ่งแอปพลิเคชันที่เราคุ้นเคยกันเป็นอย่างมากได้แก่ แอปพลิเคชันที่ใช้สำหรับอ่านและส่งอีเมล์อาทิ Gmail [ii], Yahoo!Mail [iii] หรือแอปพลิเคชันที่ใช้ในการจัดเก็บรูปภาพบนอินเตอร์เน็ตอาทิ Flickr [iv], Picasa [v] รวมทั้ง social networking เวปไซท์ที่ใช้เพื่อแลกเปลี่ยนข้อมูลข่าวสารกับเพื่อนๆ อาทิ Facebook [vi], Hi5 [vii]  ซี่งเราจะเห็นได้ว่าแอปพลิเคชันต่างๆเหล่านี้กำลังเข้ามามีบทบาทกับการดำเนินชีวิตประจำวันของเราเป็นอย่างมาก  และทำให้วิธีการที่เราใช้งานแอปพลิเคชันต่างๆเปลี่ยนแปลงไป แทนที่เราจะทำงานอาทิจัดเก็บรูปภาพ อ่านและส่งอีเมล์ หรือแลกเปลี่ยนข่าวสารผ่านทางแอปพลิเคชันที่ติดตั้งอยู่บน desktop ในปัจจุบันนี้เราทำงานดังกล่าวผ่านทาง web browsers (เช่น Firefox หรือ Internet Explorer) ที่เชื่อมต่อกับอินเตอร์เน็ต ซึ่งจากเหตุการณ์เหล่านี้เราจะเห็นได้ว่ารูปแบบของการใช้งานคอมพิวเตอร์ในปัจจุบันกำลังเปลี่ยนแปลงไปจากยุคของ Personal Computers (PCs) สู่ยุคของ Cloud computing  โดยการเปลี่ยนแปลงนี้ได้รับการสนับสนุนจากบริษัทใหญ่ๆจำนวนมากที่หันมาพัฒนาบริการทางด้าน Cloud computing อาทิ Google, Microsoft, Amazon, IBM, HP ดังแสดงในรูปที่ 2  ซึ่งจะเห็นได้ว่าแม้แต่บริษัทที่เป็นผู้นำในยุคของ Personal Computers อย่าง Microsoft - ซึ่งเราจะเห็นได้ว่าผู้ใช้ส่วนใหญ่ใช้โปรแกรมของบริษัท Microsoft ตั้งแต่ระบบปฎิบัติการ (Windows Operating system) โปรแกรมสำหรับสำนักงาน (Microsoft Office) และโปรแกรมในการจัดการเอกสารต่างๆ (Windows Explorer) - ก็กำลังผันตนเองเข้าสู่ยุคของ Cloud computing โดยการเปิดให้บริการโปรแกรมสำนักงาน (Microsoft Office) ผ่านทางอินเตอร์เน็ตในชื่อของ Microsoft Office Live [viii] 

Cloud Computing Models

ในเรื่องของ Cloud computing นั้นเราจะเห็นได้ว่าทุกสิ่งทุกอย่างที่อยู่ใน cloud จะถูกนำเสนอในรูปแบบของบริการ (หรือ services) ไม่ว่าจะเป็นทรัพยากรพื้นฐาน อาทิ แหล่งเก็บข้อมูล หน่วยความจำ หน่วยประมวลผล  รวมทั้งเครื่องมือที่ใช้ในการพัฒนาและจัดการแอปพลิเคชัน ตัวแอปพลิเคชันเอง  หรือแม้แต่ข้อมูลต่างๆ [5]   ซึ่งการที่ทุกสิ่งทุกอย่างใน Cloud computing นั้นมีรากฐานมาจาก services จะเห็นได้ว่ามีผู้เชี่ยวชาญจำนวนมากมองว่า Cloud computing เป็นเทคโนโลยีที่พัฒนามาจาก  Web services ซึ่งมุ่งเน้นในเรื่องของการให้บริการข้อมูลและแอปพลิเคชันในลักษณะของ services บนอินเตอร์เน็ตนั่นเอง [3] แต่เมื่อพัฒนามาเป็น Cloud computing บริการที่ถูกนำเสนอทางอินเตอร์เน็ตนั้นไม่ได้ถูกจำกัดอยู่ที่ข้อมูลและแอปพลิเคชันอีกต่อไป  แต่บริการที่ถูกนำเสนอใน Cloud computing สามารถแบ่งออกได้เป็นสามกลุ่มใหญ่ๆ ได้แก่ Software-as-a-Service (SaaS), Platform-as-a-Service (PaaS) และ Infrastructure-as-a-Service (IaaS) ดังแสดงในรูปที่ 3 

 


รูปที่ 3: Cloud Computing Reference Model

1.  Software-as-a-Service (SaaS)

ในรูปแบบของ SaaS นั้น ผู้ให้บริการ (service providers) จะนำ ข้อมูล และ แอปพลิเคชัน มาให้ผู้ใช้บริการ (service consumers) เรียกใช้ผ่านทาง web portals   บริการในรูปแบบนี้ที่เป็นที่รู้จักกันอย่างแพร่หลายได้แก่ Google Apps [ix] ซึ่งผู้อ่านหลายท่านอาจจะมี Google Accounts ที่สามารถใช้ในการเรียกใช้งานโปรแกรมอาทิ Gmail เพื่ออ่านและส่งอีเมล์, Google Docs เพื่อสร้างงานเอกสารหรือทำงานเอกสารร่วมกับผู้อื่น, Google Calendar เพื่อจัดการเกี่ยวกับการนัดหมายและตารางเวลาต่างๆ  หรือ Picasa เพื่อจัดการเกี่ยวกับไฟล์รูปภาพ  ซึ่งเราจะเห็นได้ว่าบริการในรูปแบบของ SaaS นั้นมีประโยชน์ต่อผู้ใช้เป็นอย่างมาก  ตัวอย่างเช่น

  •     เนื่องจากใน SaaS นั้นแอปพลิเคชันต่างๆสามารถเรียกใช้ได้ผ่านทาง web browsers ที่เชื่อมต่อกับอินเตอร์เน็ต  ดังนั้นผู้ใช้ไม่จำเป็นต้องติดตั้งแอปพลิเคชันต่างๆบนเครื่องคอมพิวเตอร์หลายๆเครื่องอาทิ ที่บ้าน ที่ทำงาน และเนื่องจากแอปพลิเคชันต่างๆถูกติดตั้งอยู่ทางฝั่งของผู้ให้บริการ ดังนั้นผู้ใช้บริการไม่จำเป็นต้องซื้อคอมพิวเตอร์ที่มีประสิทธิภาพสูงเพื่อใช้งานแอปพลิเคชันอีกต่อไป   และเราจะเห็นได้ว่าจำนวนผู้ใช้ที่เรียกใช้งานแอปพลิเคชันจากอุปกรณ์คอมพิวเตอร์ขนาดเล็กอาทิ smartphone, netbook หรือ Kindle นั้นก็กำลังเพิ่มจำนวนมากขึ้นเรื่อยๆ
  •     ใน SaaS นั้น ข้อมูลต่างๆที่ถูกสร้างขึ้นอาทิ เอกสาร รูปภาพ อีเมล์ ไม่จำเป็นต้องถูกเก็บอยู่ในเครื่องคอมพิวเตอร์ที่ใช้ในการสร้างมันขึ้นมาอีกต่อไป  เนื่องจากข้อมูลทุกอย่างจะถูกเก็บไว้ในอินเตอร์เน็ตซึ่งเราสามารถที่จะเรียกใช้ได้ทุกที่ทุกเวลา  ซึ่งสะดวกอย่างมากกับผู้ที่ต้องเดินทางไปตามที่ต่างๆ และใช้คอมพิวเตอร์หลายๆเครื่อง  เนื่องจากเราไม่จำเป็นต้อง backup ข้อมูลจากเครื่องหนึ่งไปอีกเครื่องหนึ่ง
  •     การที่แอปพลิเคชันต่างๆใน SaaS ถูกติดตั้งอยู่ทางฝั่งของผู้ให้บริการและผู้ใช้เรียกใช้งานผ่านทางอินเตอร์เน็ต  ช่วยให้เกิดการทำงานร่วมกันในรูปแบบใหม่  ดังจะเห็นได้จากการที่ผู้ใช้สามารถทำงานเอกสารร่วมกันแบบ real-time ได้โดยการใช้โปรแกรมของ Google Docs

บริการในรูปแบบของ SaaS นั้นถือได้ว่าเป็นที่รู้จักอย่างแพร่หลายมากกว่าในรูปแบบของ IaaS หรือ PaaS  และคาดว่าผู้อ่านส่วนใหญ่น่าจะรู้จักหรืออาจจะเคยได้ใช้บริการมาบ้างแล้ว อาทิ Social Networking เวปไซท์อย่าง Facebook, Hi5 หรือ บริการอย่าง Twitter [x]ส่วนผู้อ่านที่ทำงานในบริษัทก็อาจจะเคยได้ใช้โปรแกรมเกี่ยวกับการบริหารจัดการลูกค้า หรือ Customer Relationship Management (CRM) จาก SaleForce.com [xi] หรือ Microsoft Online CRM [xii] 

นอกจากการให้บริการข้อมูลและแอปพลิเคชันผ่านทาง web portals   แก่ผู้ใช้ทั่วไปแล้ว  ผู้ให้บริการในรูปแบบของ SaaS ยังให้บริการข้อมูลและแอปพลิเคชันผ่านทาง Application Programming Interfaces (APIs), functional libraries หรือ programming modules ที่เรียกว่า Widgets เช่น Google Gadgets [xiii]  ซึ่งการให้บริการข้อมูลและแอปพลิเคชั่นในลักษณะนี้จะทำให้โปรแกรมเมอร์สามารถเรียกใช้ข้อมูลและแอปพลิเคชันเพื่อสร้าง value-added แอปพลิเคชันต่อไปได้ ดังที่ผู้อ่านที่มีความสนใจทางด้านเทคโนโลยีอาจจะรู้จักเวปไซท์อาทิ HousingMap [xiv]หรือ Yelp.com[xv] ซึ่งเป็นเวปไซท์ที่เกิดจากการนำข้อมูลและฟังก์ชันของเวปไซท์อื่นมารวมเข้าด้วยกัน  หรือที่เรารู้จักกันในนามของเทคโนโลยีที่เรียกว่า Mashups [6] ตัวอย่างเช่น เวปไซท์ HousingMap นั้น เกิดจากความคิดที่ว่าถ้าผู้ใช้ต้องการที่จะหาอพาร์ทเมนท์ให้เช่าในเมืองที่ผู้ใช้อาจจะไม่คุ้นเคย  การนำข้อมูลเกี่ยวกับอพาร์ทเมนท์มาแสดงในแผนที่จะช่วยให้ผู้ใช้สามารถแยกแยะความแตกต่างเกี่ยวกับสถานที่ตั้งของแต่ละอพาร์ทเมนท์ได้ง่ายขึ้น  ซึ่งอาจทำให้ผู้ใช้สามารถวิเคราะห์ข้อมูลเพื่อทำการตัดสินใจได้ง่ายขึ้น  ดังนั้น เวปไซท์ HousingMap จึงนำข้อมูลเกี่ยวกับอพาร์ทเมนท์ให้เช่าจาก Craigslist.com [xvi] มาทำการ mashup  กับฟังก์ชันของ Google Map [xvii]ซึ่งช่วยให้ผู้ใช้ไม่จำเป็นต้องหาข้อมูลจาก Craigslist.com ทีหนึ่งแล้วนำไปแสดงใน Google Map อีกทีหนึ่ง  เนื่องจาก HousingMap ได้ทำการรวมข้อมูลเข้าด้วยกันให้แล้ว  ในปัจจุบันจะเห็นได้ว่าเทคโนโลยีของ mashups กำลังได้รับความสนใจเป็นอย่างมากเช่นกัน

2. Platform-as-a-Service (PaaS)

ในช่วงเริ่มต้นของการให้บริการในรูปแบบ PaaS นั้น  ผู้ให้บริการจะให้บริการในรูปแบบของ managed execution นั่นคือผู้ใช้จะพัฒนาแอปพลิเคชันขึ้นจากเครื่องมือที่ผู้ใช้มีความชำนาญก่อน  จากนั้นจึงนำมาติดตั้ง (deploy) ที่ระบบของผู้ให้บริการ  ตัวอย่างของบริการในลักษณะนี้จะเห็นได้จาก GoogleApp Engine [xviii] ซึ่งผู้ใช้สามารถที่จะพัฒนาแอปพลิเคชันขึ้นจากเครื่องมืออาทิ  NetBeans [xix] หรือ Oracle JDeveloepr [xx] จากนั้นจึงนำแอปพลิเคชันที่สร้างเสร็จแล้วมาติดตั้งใน GoogleApp Engine  ซึ่งจะทำหน้าที่เกี่ยวกับการเรียกใช้และการประมวลผลของแอปพลิเคชันต่อไป   ต่อมาผู้ให้บริการในรูปแบบของ PaaS ก็พัฒนาเป็นการให้บริการในลักษณะของเครื่องมือที่สนับสนุนการสร้างแอปพลิเคชันแบบครบวงจร (software development lifecycle) ในรูปแบบของ integrated solution ซึ่งเครื่องมือเหล่านี้จะครอบคลุมตั้งแต่การออกแบบและพัฒนาแอปพลิเคชัน  (design and development) การทดสอบแอปพลิเคชัน  (testing) และการติดตั้งแอปพลิเคชัน  (deployment)  ดังจะเห็นได้จากการที่ Google เปิดให้บริการการพัฒนาและทดสอบแอปพลิเคชันบนอินเตอร์เน็ตผ่านทาง web browsers ด้วย Google Web Toolkit (GWT) [xxi]  ซึ่งแอปพลิเคชันที่สร้างขึ้นก็สามารถนำไปติดตั้งได้ที่ GoogleApp Engine  ซึ่งนับว่าเป็นการให้บริการเครื่องมือในการสร้างแอปพลิเคชันแบบครบวงจร   ตัวอย่างของผู้ให้บริการในรูปแบบของ PaaS นอกจาก Google ก็ได้แก่ Microsoft ที่ให้บริการ Microsoft Azure [xxii]   หรือ SaleForce ที่ให้บริการ Force.com [xxiii]  รวมทั้งบริษัท Zoho ที่ให้บริการ Zoho Creator [xxiv]

 

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

นอกจากการให้บริการการพัฒนาแอปพลิเคชันแบบครบวงจรแล้ว  ผู้ให้บริการในรูปแบบของ PaaS บางรายยังให้บริการเครื่องมือที่ใช้สำหรับสร้าง value-added แอปพลิเคชันขึ้นโดยการทำการ mashup ของข้อมูลและแอปพลิเคชันที่เสนออยู่ในรูปแบบของ SaaS ดังที่กล่าวแล้วข้างต้น  บริการในรูปแบบนี้ได้แก่  Google Mashup Editor [xxv], Yahoo! Pipe [xxvi]และ IBM Mashup Hub [xxvii]  บริการเหล่านี้จะประกอบด้วยเครื่องมือสำหรับการพัฒนา mashups ในรูปแบบของ high-level programming languages เช่น การวาด diagrams ในลักษณะของ flow-charts  ซึ่งจะช่วยให้โปรแกรมเมอร์สามารถสร้าง mashups ได้ง่ายชึ้นและเร็วขึ้นเมื่อเทียบกับการใช้ scripting languages ในรูปแบบเดิม

3. Infrastructure-as-a-Service (IaaS)

ผู้ให้บริการในรูปแบบของ IaaS นั้น จะให้บริการ physical หรือ virtual computing resources ที่จำเป็นสำหรับผู้ใช้บริการ อาทิ CPU, หน่วยความจำ, operating systems หรือ storage servers   ตัวอย่างของบริการในลักษณะนี้ได้แก่ Amazon Simple Storage Service [xxviii] (S3) ซึ่งให้บริการทางด้าน storage  หรือ Amazon Elastic Compute Cloud [xxix] (EC2) ซึ่งให้บริการทางด้าน computing power หรือ Amazon Simple Queue Service [xxx] (SQS) ที่ให้บริการทางด้าน network communication แก่องค์กรขนาดเล็ก  รวมทั้ง HP Flexible Computing Services [xxxi] (FCS) ที่ให้บริการ IaaS สำหรับองค์กรขนาดใหญ่   ซึ่งประโยชน์ของบริการในรูปแบบของ IaaS สามารถเห็นได้จาก

  •     การที่ผู้ให้บริการจะคิดค่าใช้บริการในลักษณะเช่าซื้อ  โดยผู้ใช้บริการสามารถที่จะจ่ายค่าบริการตามปริมาณการใช้งานจริง  ดังนั้นแทนที่บริษัทและองค์กรจะต้องลงทุนในการซื้อเครื่องเซิร์ฟเวอร์ที่มีประสิทธิภาพสูงและราคาแพง  ก็สามารถเปลี่ยนมาเป็นการจ่ายค่าเช่าที่เหมาะสมกับความต้องการในการใช้งานจริง  
  •     บริการในรูปแบบของ IaaS นั้นยังช่วยลดภาระของการจัดการและบำรุงรักษาไปได้อีกด้วยเนื่องจากผู้ให้บริการจะเป็นผู้รับผิดชอบในส่วนนี้ไป 
  •     บริการในรูปแบบของ IaaS นั้นผู้ใช้บริการสามารถปรับเปลี่ยนขนาดและปริมาณของ computing resources ได้ตามความเหมาะสม  ดังนั้นจึงมีประโยชน์สำหรับองค์กรที่ต้องการใช้ computing resources เพื่อทำงานเฉพาะอย่างในช่วงระยะเวลาสั้นๆ  (occasionally large computation) หรือจำเป็นต้องรองรับการเรียกใช้งานจำนวนมากในช่วงเวลาหนึ่งๆเท่านั้น (peak demand)

นอกจากบริการในลักษณะของ computing resouces แล้ว  ผู้ให้บริการในรูปแบบของ IaaS ยังให้บริการระบบฐานข้อมูลบนอินเตอร์เน็ตอีกด้วย  ซึ่งตัวอย่างของบริการในรูปแบบนี้ได้แก่  Amazon Simple DB [xxxii] หรือ Google BigTable [10] หรือ Force.com database platform รวมทั้ง Microsoft SQL Azure [xxxiii] ซึ่งระบบฐานข้อมูลเหล่านี้ส่วนใหญ่จะไม่ได้เก็บข้อมูลในรูปแบบของความสัมพันธ์ (relational) แต่จะเก็บในรูปแบบเฉพาะของบริการนั้น (proprietary) อาทิ hierarchical data model หรือ key-value pairs ดังนั้นโปรแกรมเมอร์ทางด้านของผู้ใช้บริการจำเป็นต้องศึกษารูปแบบการจัดการข้อมูลเหล่านี้ รวมทั้งภาษาที่ใช้สำหรับเรียกใช้ข้อมูล หรือ แก้ไขฐานข้อมูลเหล่านั้นตามที่ผู้ให้บริการกำหนดอีกด้วย  นอกจากนั้นรูปแบบของ data models ที่แตกต่างกันยังก่อให้เกิดปัญหาเมื่อมีความต้องการในการเปลี่ยนแปลงผู้ให้บริการอีกด้วย

ข้อพึงพิจารณาของการใช้เทคโนโลยีแบบ Cloud Computing

ในเบื้องต้นของบทความนี้ผู้อ่านจะได้เห็นข้อดีหลายอย่างของเทคโนโลยีแบบ Cloud Computing  และอาจเกิดความสงสัยว่าแล้วข้อเสียมีอะไรบ้างนอกจากจะต้องเรียนรู้ระบบของผู้ให้บริการซึ่งก็ฟังดูสมเหตุสมผลเนื่องจากเราจำเป็นต้องเรียนรู้สิ่งที่เราใช้งานเสมอ  เราลองมาดูกันว่าเรามีข้อควรระวังอะไรบ้างในการเลือกใช้เทคโนโลยีแบบ Cloud Computing [2] 

  •     ข้อแรกที่เราควรพึงพิจารณาคือ ในการใช้เทคโนโลยีแบบ Cloud Computing นั้น  เราจำเป็นที่จะต้องมีการเชื่อมต่อกับอินเตอร์เน็ตอยู่ตลอดเวลา  ดังนั้นถ้าเราต้องเดินทางไปในที่ๆอาจไม่มีการเชื่อมต่อกับอินเตอร์เน็ตข้อมูลและแอปพลิเคชันของเราก็จะไม่สามารถเรียกใช้ได้อีกต่อไป  อีกทั้งเราต้องเตรียมพร้อมไว้ด้วยว่าถ้าระบบอินเตอร์เน็ตของเรามีความเร็วไม่เพียงพอ  การเรียกใช้งานบริการในรูปแบบของ Cloud computing ก็จะมีปัญหาได้เช่นกัน
  •     ในปัจจุบันแอปพลิเคชันในรูปแบบของ Cloud computing โดยส่วนใหญ่นั้นจะมีจำนวนฟังก์ชันให้เรียกใช้งานน้อยกว่าแอปพลิเคชันในรูปแบบของ desktop อาทิเช่น Google Docs นั้นจะมีจำนวนฟังก์ชันน้อยกว่า Microsoft Office
  •    เนื่องจากแอปพลิเคชันในรูปแบบของ Cloud computing ส่วนใหญ่จะต้องมีการแลกเปลี่ยนข้อมูลระหว่างแอปพลิเคชันที่ผู้ใช้เรียกใช้ผ่านทาง web browser และแอปพลิเคชันทางฝั่งของผู้ให้บริการที่อยู่บนเซิร์ฟเวอร์ผ่านทางอินเตอร์เน็ต  ซึ่งบ่อยครั้งผู้ใช้จะพบว่ามีความล่าช้าในการทำงานของแอปพลิเคช้น ดังจะเห็นได้จากตัวอย่างของ Google Docs ซึ่งบ่อยครั้งที่การตอบสนองของแอปพลิเคชันนั้นมีความล่าช้ามากในระดับที่ไม่สามารถยอมรับได้  ดังนั้นจะเห็นได้ว่าแอปพลิเคชันในรูปแบบของ Cloud computing ในปัจจุบันยังไม่สามารถแทนที่แอปพลิเคชันในรูปแบบของ desktopได้
  •     อีกสิ่งหนึ่งที่ต้องพิจารณาในการใช้เทคโนโลยีแบบ Cloud Computing คือการที่ข้อมูลและแอปพลิเคชันของเราติดตั้งอยู่ที่ระบบของผู้ให้บริการนั้น  ถ้าหากวันหนึ่งผู้ให้บริการหยุดให้บริการขึ้นมา  เราจะต้องเสี่ยงต่อการสูญเสียข้อมูลและแอปพลิเคชันเหล่านั้นไป  ถึงแม้ว่ากรณีนี้อาจจะเกิดขึ้นได้ยากแต่ก็มีความเป็นไปได้เช่นกัน  ดังที่จะเห็นได้จากการหยุดให้บริการของเครื่องมือการพัฒนา mashups ของบริษัท Microsoft ที่รู้จักกันในนามของ Microsoft PopFly ในกรณีนี้ถ้าผู้ใช้บริการไม่สามารถที่จะทำการ backup ข้อมูลและแอปพลิเคชันของตนได้ทันเวลาก็จะสูญเสียข้อมูลและแอปพลิเคชันเหล่านั้นไปเลย
  •     เนื่องจากในปัจจุบันบริการทางด้าน SaaS จำนวนมากเปิดให้บริการโดยไม่คิดค่าบริการ อาทิ Google Apps แต่เมื่อวันใดที่ผู้ใช้บริการเปลี่ยนมาใช้บริการเหล่านี้กันเป็นจำนวนมาก  แล้วผู้ให้บริการเปลี่ยนนโยบายและคิดค่าบริการขึ้นมา  ผู้ใช้บริการอาจจำเป็นต้องกลับมาพิจารณาว่าตนจะยังคงใช้บริการเหล่านั้นต่อหรือไม่  หรือว่าจะทำการ backup ข้อมูลต่างๆแล้วไปใช้บริการอื่นแทน
  •     ถ้าเรามาลองมองดูกันเราจะเห็นได้ว่าข้อมูลและแอปพลิเคชันที่เราติดตั้งไว้ที่ระบบของผู้ให้บริการนั้นค่อนข้างที่จะปลอดภัย (secured) เนื่องจากผู้ให้บริการได้ให้ความสำคัญพัฒนาระบบรักษาความปลอดภัยไว้เป็นอย่างดี  แต่เมื่อลองมองถึงเรื่องเกี่ยวกับความเป็นส่วนตัว (privacy) ของข้อมูลที่เราติดตั้งไว้ที่ระบบของผู้ให้บริการนั้น  จะเห็นได้ว่าข้อมูลเหล่านั้นอาจจะถูกเรียกใช้โดยผู้ให้บริการเมื่อใดก็ได้  ดังนั้นก่อนที่จะเลือกใช้บริการในรูปแบบของ Cloud computing นั้นเราจำเป็นต้องพิจารณาในเรื่องของ privacy policy กันเป็นอย่างมาก ซึ่งในปัจจุบันนี้จะเห็นได้ว่าเรื่องของ privacy นั้นดูเหมือนว่าจะเป็นสิ่งที่สำคัญที่สุด  และได้รับการกล่าวถึงมากที่สุด  ดังจะเห็นได้จากการที่องค์กรหลายองค์กรไม่อนุญาตให้บุคลากรของตนส่งอีเมล์ที่มีข้อมูลสำคัญๆผ่านทาง Gmail  ซึ่งก็ไม่ใช่เรื่องน่าแปลกใจเพราะผู้อ่านหลายท่านก็อาจจะสังเกตเห็นได้ว่าเมื่อท่านใช้บริการ Gmail ท่านจะเห็น links ของโฆษณาที่อยู่ทางด้านบนและทางด้านขวามือของโปรแกรมนั้นมีความเกี่ยวข้องกับเนื้อหาของอีเมล์ที่ท่านกำลังเปิดอ่านอยู่  นั่นอาจจะหมายความว่า Google กำลังทำการวิเคราะห์ข้อมูลของท่านอยู่นั่นเอง  ดังนั้นผู้อ่านจึงควรพึงพิจารณาในการเลือกใช้บริการในรูปแบบของ Cloud computing เหล่านี้ 

 

References

[1].   Carr, Nicola. The Big Switch: Rewiring the World, from Edison to Google. USA : Houghton Mifflin Company, 2008.

[2].   Pettey, Holly Stevens and Christy. Special Report Examines the Realities and Risks of Cloud Computing. [Online] Gartnerm, STAMFORD, Connecticut, June 26, 2008. [Cited: ] http://www.gartner.com/it/page.jsp?id=707508.

[3].   Cloud Computing: The Evolution of Software-as-a-Service. [Online] Knowledge@W.P. Carey , June 04, 2008. http://knowledge.wpcarey.asu.edu/article.cfm?articleid=1614.

[4].   Glotzbach, Matthew. Google Apps and Government. [Online] Google Enterprise , September 15, 2009. http://googleenterprise.blogspot.com/2009/09/google-apps-and-government.html.

[5].   Robison, S. The next wave: Everything as a service, Executive Viewpoint (2007). [Online] Hewlett Packard. http://www.hp.com/hpinfo/execteam/articles/robison/.

[6].   Benslimane D., Dustdar S. and Sheth A. Services Mashups: The New Generation of Web. IEEE Internet Computing. 2008, Vol. 12, 5.

[7].   A., Weiss. Computing in the clouds. ACM netWorker. 2007, Vol. 11, 4.

[8].   Marketplace issues study on cloud computing. [Online] March 20, 2009. http://www.boston.com/business/ticker/2009/03/marketspace_iss.html.

[9].   Open source web OS. [Online] EYE OS! www.iwebble.com

[10]. Fay Chang, Jeffrey Dean, Sanjay Ghemawat, Wilson C. Hsieh, Deborah A. Wallach, Mike Burrows, Tushar Chandra, Andrew Fikes, and Robert E. Gruber. Bigtable: A Distributed Storage System for Structured DataSeattle, WA : s.n., 2006. OSDI'06: Seventh Symposium on Operating System Design and Implementation.

 

About the author



วรลักษณ์  คงเด่นฟ้า  จบการศึกษาระดับปริญญาตรีจากสถาบันเทคโนโลยีพระจอมเกล้าเจ้าคุณทหารลาดกระบัง  ปริญญาโทจาก Asian Institute of Technology และปริญญาเอกจาก University of New South Wales, Sydney Australia  ปัจจุบันเป็นอาจารย์ประจำภาควิชาวิศวกรรมไฟฟ้าและคอมพิวเตอร์    คณะวิศวกรรมศาสตร์   มหาวิทยาลัยนเรศวร   จังหวัดพิษณุโลก   และทำงานวิจัยทางด้าน Service Oriented Architectures, Web Services, Business Process Management, Web and Data Mashups, Data Integrations , Cloud Computing (Saas and PaaS), Enterprise Architectures, Social Networking


 


 



 

Back to E-magazine List
 

ECTI Association
99 M.18 Paholyothin Rd., Klong Luang, Pathumthani 12120, THAILAND
E-mail: ecti.secretary@gmail.com
Find us on: