วันพุธที่ 27 พฤศจิกายน พ.ศ. 2556

ระบบ Cloud Computing


Cloud Computing

(ระบบประมวลผลแบบกลุ่มเมฆ)

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

            Cloud Computing คือ บริการทางอินเตอร์เน็ตที่เป็นแบบการรวบรวมทรัพยากรต่างๆที่จำเป็นมาเชื่อมโยงไว้ด้วยกัน โดยมีการทำงานสอดประสานกันแบบรวมศูนย์ โดยผู้จัดสรรทรัพยากรนั้นเรียกว่า third-party Provider หรือผู้ให้บริการบุคคลที่ 3 มีหน้าที่รวบรวมพื้นฐานต่างๆที่จำเป็นเข้าไว้ด้วยกันการใช้ทรัพยาการคอมพิวเตอร์บนเครือข่ายอินเตอร์เน็ต และระบบสารสนเทศแบบเสมือนจริง Cloud Computing จะทำงานโดยเมื่อผู้ขอใช้บริการต้องการใช้สิ่งใดก็ส่งร้องขอไปยังซอฟแวร์ระบบ แล้วซอฟแวร์ระบบก็จะร้องขอไประบบเพื่อจัดสรรทรัพยากรและบริการให้ตรงกับความต้องการของผู้ขอใช้บริการต่อไป โดยผู้ขอใช้บริการมีหน้าที่เสียค่าใช้บริการเพื่อความสามารถในการทำงานตามต้องการโดยไม่ต้องทราบหรือเข้าใจหลักการทำงานเบื้องหลัง


นิยามความหมายของคำหลักๆ 3 คำที่เกี่ยวข้องกับ Cloud Computing

            ความต้องการ (Requirement) ปัญหาที่ผู้ใช้ต้องการให้ระบบคอมพิวเตอร์แก้ไขปัญหาหรือตอบปัญหาตาม ที่ผู้ใช้กำหนดได้ ยกตัวอย่างเช่น ความต้องการพื้นที่จัดเก็บข้อมูลขนาด 1,000,000 GB, ความต้องการประมวลผลโปรแกรมแบบขนานเพื่อค้นหายารักษาโรคไข้หวัดนกให้ได้สูตรยาภายใน 90 วัน, ความต้องการโปรแกรมและพลังการประมวลผลสำหรับสร้างภาพยนต์แอนนิเมชันความยาว 2 ชั่วโมงให้แล้วเสร็จภายใน 4 เดือน, และความต้องการค้นหาข้อมูลท่องเที่ยวและโปรแกรมทัวร์ในประเทศอิตาลีในราคาที่ถูกที่สุดในโลกแต่ปลอดภัยในการเดินทางด้วย เป็นต้น
ทรัพยากร (Resource) หมายถึง ปัจจัยหรือสรรพสิ่งที่เกี่ยวข้องกับการประมวลผลหรือเกี่ยวข้องกับการแก้ไขปัญหาตามโจทย์ที่ความต้องการของผู้ใช้ได้ระบุไว้ อาทิเช่น CPU, Memory (เช่น RAM), Storage (เช่น harddisk), Database, Information, Data, Network, Application Software, Remote Sensor เป็นต้น
บริการ (Service) ถือว่าเป็นทรัพยากร และในทางกลับกันก็สามารถบอกได้ว่าทรัพยากรก็คือบริการ โดยเฉพาะอย่างยิ่งในด้าน Cloud Computing แล้ว เราจะใช้คำว่าบริการแทนคำว่าทรัพยากร คำว่าบริการหมายถึงการกระทำ (operation) เพื่อให้เกิดผลลัพธ์ที่สนองต่อความต้องการ (requirement) แต่การกระทำของบริการจะเกิดขึ้นได้จำเป็นต้องพึ่งพาทรัพยากร โดยการใช้ทรัพยากรที่เกี่ยวข้องเพื่อแก้ปัญหาให้เกิดผลลัพธ์สนองต่อความต้องการ




จุดเด่นของ Cloud Computing

1) Agility : มีความรวดเร็วในการใช้งาน

2) Cost : ค่าใช้จ่ายน้อย หรืออาจไม่เสียค่าใช้จ่ายสำหรับ Client

3) Device and Location Independence : ใช้ได้ทุกที่แค่มีคอมพิวเตอร์และอินเตอร์เน็ต

4) Multi-Tenancy : แบ่งการใช้ทรัพยากรให้ผู้ใช้จำนวนมากได้

5) Reliability : มีความน่าเชื่อถือ

6) Scalability : มีความยืดหยุ่น

7) Security : มีความปลอดภัย

8) Sustainability : มีความมั่นคง



ข้อดีของ Cloud Computing

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

2) ลดความเสี่ยงการเริ่มต้น หรือการทดลองโครงการ

3) สามารถลดหรือขยายได้ตามความต้องการ

4)ได้เครื่องแม่ข่ายที่มีประสิทธิภาพ มีระบบสำรองข้อมูลที่ดี มีเครือข่ายความเร็วสูง

5) อยู่ภายใต้การดูแลของผู้เชี่ยวชาญ


ข้อเสียของ Cloud Computing

1) จากการที่มีทรัพยากรที่มาจากหลายแห่ง จึงอาจเกิดปัญหาด้านความต่อเนื่องและความรวดเร็ว

2) ยังไม่มีการรับประกันในการทำงานอย่างต่อเนื่องของระบบและความปลอดภัยของข้อมูล

3) แพลทฟอร์มยังไม่ได้มาตรฐาน  ทำให้ลูกค้ามีข้อจำกัดสำหรับตัวเลือกในการพัฒนาหรือติดตั้งระบบ site

4) เนื่อง จากเป็นการใช้ทรัพยากรที่มาจากหลายที่หลายแห่งทำให้อาจมีปัญหาในเรื่องของ ความต่อเนื่องและความเร็วในการเข้าทรัพยากรมากกว่าการใช้บริการHost ที่ Local หรืออยู่ภายในองค์การของเราเอง

ระบบ Cloud Computing

                                              
                              Cloud Computing
Cloud Computing คือวิธีการประมวลผลที่อิงกับความต้องการของผู้ใช้ โดยผู้ใช้สามารถระบุความต้องการไปยังซอฟต์แวร์ของระบบCloud Computing จากนั้นซอฟต์แวร์จะร้องขอให้ระบบจัดสรรทรัพยากรและบริการให้ตรงกับความต้อง การผู้ใช้ ทั้งนี้ระบบสามารถเพิ่มและลดจำนวนของทรัพยากร รวมถึงเสนอบริการให้พอเหมาะกับความต้องการของผู้ใช้ได้ตลอดเวลา โดยที่ผู้ใช้ไม่จำเป็นต้องทราบเลยว่าการทำงานหรือเหตุการณ์เบื้องหลังเป็น เช่นไร
ผมได้นิยามคำว่า Cloud Computing ในรูปแบบที่ (น่าจะ) เข้าใจง่ายขึ้นที่ นิยามคำว่า Cloud Computing ภาค 2 สำหรับท่านที่กำลังค้นหาหัวข้อวิจัยและพัฒนาเกี่ยวกับ Cloud Computing สามารถไปอ่านบทความของผมได้ในหัวข้อชื่อ หมวดงานวิจัยเกี่ยวกับ Cloud Computing
รายละเอียดของนิยามมีอีกครับ เข้ามาติดตามได้เลย
ผมขอนิยามความหมายของคำหลักๆ 3 คำที่เกี่ยวข้องกับ Cloud Computing ต่อไปนี้
ความต้องการ (Requirement) คือโจทย์ปัญหาที่ผู้ใช้ต้องการให้ระบบคอมพิวเตอร์แก้ไขปัญหาหรือตอบปัญหาตาม ที่ผู้ใช้กำหนดได้ ยกตัวอย่างเช่น ความต้องการพื้นที่จัดเก็บข้อมูลขนาด 1,000,000 GB, ความต้องการประมวลผลโปรแกรมแบบขนานเพื่อค้นหายารักษาโรคไข้หวัดนกให้ได้สูตร ยาภายใน 90 วัน, ความต้องการโปรแกรมและพลังการประมวลผลสำหรับสร้างภาพยนต์แอนนิเมชันความยาว 2 ชั่วโมงให้แล้วเสร็จภายใน 4 เดือน, และความต้องการค้นหาข้อมูลท่องเที่ยวและโปรแกรมทัวร์ในประเทศอิตาลีในราคา ที่ถูกที่สุดในโลกแต่ปลอดภัยในการเดินทางด้วย เป็นต้น
ทรัพยากร (Resource) หมายถึง ปัจจัยหรือสรรพสิ่งที่เกี่ยวข้องกับการประมวลผลหรือเกี่ยวข้องกับการแก้ไข ปัญหาตามโจทย์ที่ความต้องการของผู้ใช้ได้ระบุไว้ อาทิเช่น CPU, Memory (เช่น RAM), Storage (เช่น harddisk), Database, Information, Data, Network, Application Software, Remote Sensor เป็นต้น
บริการ (Service) ถือว่าเป็นทรัพยากร และในทางกลับกันก็สามารถบอกได้ว่าทรัพยากรก็คือบริการ โดยเฉพาะอย่างยิ่งในด้านCloud Computingแล้ว เราจะใช้คำว่าบริการแทนคำว่าทรัพยากร คำว่าบริการหมายถึงการกระทำ (operation) เพื่อให้เกิดผลลัพธ์ที่สนองต่อความต้องการ (requirement) แต่การกระทำของบริการจะเกิดขึ้นได้จำเป็นต้องพึ่งพาทรัพยากร โดยการใช้ทรัพยากรที่เกี่ยวข้องเพื่อแก้ปัญหาให้เกิดผลลัพธ์สนองต่อความต้องการ


จุดเด่นของ Cloud Computing

1) Agility : มีความรวดเร็วในการใช้งาน

2) Cost : ค่าใช้จ่ายน้อย หรืออาจไม่เสียค่าใช้จ่ายสำหรับ Client

3) Device and Location Independence : ใช้ได้ทุกที่แค่มีคอมพิวเตอร์และอินเตอร์เน็ต

4) Multi-Tenancy : แบ่งการใช้ทรัพยากรให้ผู้ใช้จำนวนมากได้

5) Reliability : มีความน่าเชื่อถือ

6) Scalability : มีความยืดหยุ่น

7) Security : มีความปลอดภัย

8) Sustainability : มีความมั่นคง




ประโยชน์ :: cloud computing 
  • มีความคล่องตัว ผู้ใช้สามารถดึงข้อมูลจาก Server ได้ตามต้องการ มีความยืดหยุ่น สามารถขยายหรือลดโครงสร้างพื้นฐานได้สะดวกและง่ายต่อการพัฒนาและเปลี่ยนแปลง
  • Reduction in costs: มีต้นทุนที่ลดลงเนื่องจากผู้ใช้ไม่จำเป็นต้องติดตั้ง Server ขนาดใหญ่ด้วยตนเอง  ลดภาระต้นทุนเกี่ยวกับการติดตั้งและบำรุงรักษาอุปกรณ์คอมพิวเตอร์และซอฟท์แวร์ประมวลผลขนาดใหญ่
  • Freedom of Location :  มีอิสระจากอุปกรณ์ และสถานที่  เพราะผู้ใช้สามารถเรียกดูข้อมูลได้จากทุกแห่งทั่วโลกที่สามารถเข้าถึงอินเทอร์เน็ตได้
  • Scalability and speed :  การขยายตัวเป็นแบบ (Scalability)  สูง สามารถเข้าถึงแพลทฟอร์มที่หลากหลายและความสามารถในการทำงานร่วมกับแพลทฟอร์มที่ยึดหยุ่นและมีศักยภาพด้วยโครงสร้างที่หลากหลาย
  • มีความไว้วางใจ (Reliability)  สูงขึ้น
  • มีความปลอดภัย (Security) สูง เนื่องจากทุกๆ โปรแกรมและไฟล์ทั้งหมดจะถูกเก็บอยู่ใน Supercomputer ส่วนกลางที่มีขนาดใหญ่หรือจัดเก็บอยู่ใน Network ความเร็วสูง
  • มีความยั่งยืน (Sustainability)  ซึ่งได้จากการใช้ทรัพยากรที่ประหยัดและมีประสิทธิภาพ
  • Reduce run time and response time : เพิ่มประสิทธิภาพในการประมวลผลของโปรแกรมประยุกต์  ทำให้โปรแกรมที่มีการคำนวณและประมวลผลที่ยุ่งยากและซับซ้อนสามารถทำงานได้รวดเร็วขึ้น
  • Enabling Innovation: ได้รับบริการที่เป็นนวัตกรรมใหม่เสมอ
  • Ease of Use:  ใช้งานง่าย โดยเปรียบเหมือนเครื่องใช้ในชีวิตประจำวัน



ข้อดีของ Cloud Computing

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

2) ลดความเสี่ยงการเริ่มต้น หรือการทดลองโครงการ

3) สามารถลดหรือขยายได้ตามความต้องการ

4)ได้เครื่องแม่ข่ายที่มีประสิทธิภาพ มีระบบสำรองข้อมูลที่ดี มีเครือข่ายความเร็วสูง

5) อยู่ภายใต้การดูแลของผู้เชี่ยวชาญ


ข้อเสียของ Cloud Computing

1) จากการที่มีทรัพยากรที่มาจากหลายแห่ง จึงอาจเกิดปัญหาด้านความต่อเนื่องและความรวดเร็ว

2) ยังไม่มีการรับประกันในการทำงานอย่างต่อเนื่องของระบบและความปลอดภัยของข้อมูล

3) แพลทฟอร์มยังไม่ได้มาตรฐาน  ทำให้ลูกค้ามีข้อจำกัดสำหรับตัวเลือกในการพัฒนาหรือติดตั้งระบบ site

4) เนื่อง จากเป็นการใช้ทรัพยากรที่มาจากหลายที่หลายแห่งทำให้อาจมีปัญหาในเรื่องของ ความต่อเนื่องและความเร็วในการเข้าทรัพยากรมากกว่าการใช้บริการHost ที่ Local หรืออยู่ภายในองค์การของเราเอง


วันเสาร์ที่ 16 พฤศจิกายน พ.ศ. 2556

เทคโนโลยี DLNA


   DLNA มาจากคำว่า Digital Living Network Alliance ซึ่งเแปลเป็นไทยแบบที่เข้าใจง่ายๆก็คือ "พันธมิตรเครื่อข่ายระบบดิจิตอลภายในที่พักอาศัย" จะใช้งานได้นั้นต้องใช้อุปกรณ์ เครื่องหมาย DLNA ติดอยู่เพื่อระบุว่าสามารถใข้งานเทคโนโลยีนี้ได้จริงๆ



         เทคโนโลยี DLNA  นี้ เกิดขึ้นเมื่อปี 2003 ก่อตั้งโดยค่าย SONY   ปัจจุบันนี้มี
สมาชิก  245 ราย รวมทั้งแบรนด์ดังหลายแบรนด์ เช่น  ACCESS, AT&T Labs, Awox, 
Broadcom, Cisco Systems, Comcast, DIRECTV, Dolby Laboratories, Ericsson, 
Hewlett-Packard, Huawei, Intel, LG Electronics, Microsoft, Motorola, Nokia, Panasonic, 
Promise Technology, Qualcomm, Samsung Electronics, Sharp Corporation, Sony 
Electronics, Technicolor, and Verizon.และอีกหลายราย ซึ่งทีวีสมัยใหม่และอุปกรณ์อื่นๆ
เช่น คอมพิวเตอร์ โทรศัพท์มือถือ กล้องดิจิตอล กล้องวีดีโอ ในสเปคกลางถึงสูง ก็จะมี
เทคโนโลยีนี้ติดตัวมาด้วยทั้งนั้น ซึ่งก็รวมถึง Samsung  ที่ใช้ชื่อว่า  Allshare  และ LG ก็ใช้อีก
ชื่อคือ Smart Share ซึ่งเป็นเทคโนโลยีเดียวกันกับมาตรฐานกลางคือ DLNA แม้จะคนละ
แบรนด์ แต่ก็ยังสามารถส่งถึงกันได้


         ประโยชน์ของ DLNA นี้คือสามารถส่งภาพ ส่งวีดีโอขึ้นทีวีสำหรับการนำเสนอได้ง่ายๆผ่าน
ทาง
Wi-Fi ได้เลย ไม่ต้องต่อสายพวก VGA ติดกับคอม หรือสาย Analogเชื่อมกับตัวเครื่องเล่นให้
วุ่นวาย และทำให้รกรุงรัง แน่นอนว่าทำให้การสร้าง home network ทำได้ง่ายดาย หลายๆคน
ก็นำมาทำเป็น media center โดยใข้คอมพิวเตอร์ส่งภาพ วีดีโอ หรือดูหนังได้บนจอทีวีใหญ่ๆ 
ผ่านทาง DLNA นี้ แต่ถ้าเราจะได้ใช้เทคโนโลยี DLNA …smart TV และ มือถือ หรืออุปกรณ์ที่
ต้องการจะส่งภาพ ส่งวีดีโอขึ้นทีวี แบบไร้สายนี้ จะต้องรองรับเทคโนโลยี DLNA ด้วยกัน โดย
วิธีสังเกตอย่างง่ายๆ  คือดูที่กล่องหรือตัวเครื่องว่ามีสัญลักษณ์ DLNA หรือไม่ และ ทั้ง smart 
TV และมือถือ หรือ Tablet  หรือ คอมพิวเตอร์นั้นๆ จะต้องเชื่อมต่ออยู่ในวง  Wi-Fi เดียวกันกับ
ทีวีด้วย





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