การเปรียบเทียบ Big Data Solution ต่างๆทั้ง On-Premise และ Public Cloud

Screenshot 2019-03-24 10.21.51.png

วันก่อนเขียนเรื่องการทำ Big Data Platform บน Hybrid/Multi Cloud หลายๆท่านก็อาจสนใจต่อว่า แล้วเราควรเลือกโซลูชั่นของรายไหน จริงๆผมเองก็ไม่มีคำตอบที่ชัดเจน แต่หากเราแบ่งกลุ่มกันก็จะเห็นว่า มีรายที่ทำ On-Premise คือ  Oracle, IBM, SAP, Cloudera, Hortonworks, MapR, Huawei เป็นหลัก แต่กลุ่มเหล่านี้ก็มุ่งที่จะพัฒนาโซลูชั่น On-Cloud เสริมมา เพื่อสร้างเป็น Hybrid/Multi Cloud  ส่วนรายที่เป็นระบบ On-Cloud อย่าง AWS, Google, Azure หรือ Alibaba ก็พยายามทำให้โซลูชั่นของตัวเองทำงานร่วมกับระบบ On-Premise หรือ Cloud Provider รายอื่นได้

Screenshot 2019-03-24 10.40.44

รูปที่ 1 Magic Quadrant for Data Management Solutions for Analytics ของ Gartner

หากจะเปรียบเทียบ Big Data Solution ต่างๆ ผมแนะนำให้ไปดูรายงาน Gartner เรื่อง Magic Quadrant for Data Management Solutions for Analytics ที่ออกมาเมื่อเดือนมกราคม 2519 ซึ่งได้ทำการเปรียบเทียบโซลูชั่นต่างๆจำนวนมาก และสรุปเป็น Magic Quadrant ดังรูปที่ 1 ทั้งนี้ผมได้ทำตารางสรุปข้อมูลที่ Gartner รายงานไว้ว่าแต่ละรายมีโซลูชั่นใดบ้าง และมีจุดแข็งและข้อพึงระวังอย่างไร ดังตารางข้างล่างนี้

ธนชาติ นุ่มนนท์

IMC Institute

Screenshot 2019-03-24 10.43.09Screenshot 2019-03-24 10.42.52Screenshot 2019-03-24 10.42.26

Big Data Platform บน Hybrid/Multi Cloud แนวทางในการวางระบบ Big Data ขององค์กร

Screenshot 2019-03-14 09.57.10

วันก่อนไปบรรยายมีคนถามผมว่าจะติดตั้งระบบ Big Data ในองค์กร ใช้โซลูชั่นของใครดี จะทำเป็นระบบ On-Premise หรือควรใช้ Public Cloud

คงต้องอธิบายว่าระบบ  Big Data จะประกอบไปด้วยเทคโนโลยีอยู่ 4 ด้านคือ  Data Ingestion/Collection, Data Storage, Data Processing และ Data Visualisation และหลักการทำ  Big Data คือเน้นการสร้าง Data Lake ที่เราจะต้องนำข้อมูลดิบที่มีปริมาณมหาศาลมาเก็บไว้ในระยะยาว ซึ่งอาจเป็นข้อมูลธุรกรรมต่างๆ ข้อมูล IoT ซึ่งข้อมูลเหล่านี้มีปริมาณเห็นหลายสิบล้าน หรือจำนวนหลาย TeraByte ทั้งนี้ขึ้นอยู่กับประเภทธุรกิจ บางธุรกิจเช่น Telecom อาจมีบริมาณเป็นหลาย TB ต่อวัน หรือธนาคารก็อาจเป็นจำนวนพันล้านเรคอร์ดต่อปี

การที่ต้องเก็บข้อมูลจำนวนมากและการเก็บข้อมูลต้องพร้อมที่จะประมวลผลในเวลารวดเร็ว จึงเป็นความท้าทายที่ต้องหา Storage ขนาดใหญ่ ซึ่งต้องขยายได้อย่างรวดเร็ว มีราคาถูก และมีความเสถียร ก็เลยเป็นไปได้ยากที่เราจะพัฒนาระบบ Hadoop แบบ On-Premise แล้วในอนาคตต้องขยายระบบไปเรื่อยๆเพื่อจะเก็บข้อมูลทั้งหมด ดังนั้นแนวทางที่ดีคือการเก็บข้อมูลขนาดใหญ่ไว้บน  Public Cloud Storage ที่จะตอบโจทย์เหลือราคาความเสถียรและขนาดการเก็บได้ดีกว่า เช่นการใช้ Amazon S3, Azure Data Lake Storage (ADLS) และ Google Cloud Storage เป็นต้น  แล้วก็นำข้อมูลที่จะเป็นที่อาจมีความสำคัญอย่างมากที่ไม่อยากนำไปเก็บออกนอกองค์กรมาใส่ไว้ใน Storage ของ Hadoop HDFS ที่เราอาจติดตั้งระบบ Cluster ขนาดเหมาะสมไว้ในองค์กร (On-Premise) แต่ไม่จำเป็นต้องเป็นระบบที่ใหญ่มากนัก

ในแง่ของการประมวลผลข้อมูล (Data Processing) เราสามารถที่จะใช้ Hadoop On-Premise มาทำการประมวลโดยผ่านเทคโนโลยีอย่าง Spark, Hive หรือเครื่องมืออื่นๆ แต่ความท้าทายก็อาจจะอยู่ที่เมื่อต้องการประมวลผลข้อมูลที่ใหญ่มากๆเช่น การทำ Machine Learning กับข้อมูลเป็นสิบหรือร้อยล้านเรคอร์ด กรณีนี้เราจำเป็นต้องการระบบ Cluster ที่มี CPU จำนวนมากซึ่งระบบ On-Premise ไม่สามารถจะรองรับได้ จึงอาจต้องใช้ Services ของ Public Cloud เช่น  AWS EMR, Google DataProc, Azure HDinsight ที่เราสามารถกำหนด CPU จำนวนมากได้ หรือบางครั้งก็อาจใช้บริการประมวลผลอื่นๆที่มีอยู่บน Public cloud ซึ่งสามารถช่วยในการประมวลผลอย่างรวดเร็วได้อย่างเช่น Google BigQuery, Azure ML, AWS Athena ก็จะยิ่งทำให้ได้ประสิทธิภาพดีขึ้น ข้อสำคัญการประมวลผลแบบนี้ราคาขึ้นอยู่กับการเวลาในการใช้งานซึ่งถูกกว่าติดตั้งระบบ On-Premise ขนาดใหญ่มากๆ

ในด้านการดึงข้อมูลเข้า Storage  (Data Ingestion) ก็คงจะต้องพิจารณาว่าต้นทางของข้อมูลอยู่ที่ใดและ Storage อยู่ที่ใด ถ้าข้อมูลที่จะดึงเข้าจำนวนมากอยู่ในองค์กรก็ควรที่จะตั้งระบบแบบ On-Premise หรือ ถ้าอยู่ภายนอกก็อาจใช้ Public cloud service ส่วนการเลือกใช้เครื่องมือด้าน Visualisation ที่อาจต้องมีทั้งสองระบบ โดยระบบ On-Premise ใช้กับการแสดงข้อมูลภายในองค์กรผ่าน Desktop ส่วนกรณีแสดงผลผ่านเว็บหรืออินเตอร์เน็ตอาจพิจารณาใช้ Public cloud โดยรูปที่ 1 ได้สรุปแนวทางการทำ Big Data Platform โดยทาง Hybrid/Multi Cloud ตามที่อธิบายไว้ข้างต้น

Screenshot 2019-03-23 13.25.45

รูปที่ 1 ตัวอย่างระบบ Big Data  บน Hybrid/Multi Cloud

แนวทางการติดตั้งระบบ  Big Data ที่ดีควรเริ่มจากการทำบน Public Cloud เพื่อความรวดเร็วในการดำเนินงานและลดค่าใช้จ่าย เมื่อเริ่มเห็นผลก็อาจมีการติดตั้งระบบ On-Premise ที่มีขนาดเหมาะสม แล้วมีการ Transfer ข้อมูลไปมากันทั้งสองระบบ โดยเน้นให้ Public cloud เก็บข้อมูลขนาดใหญ่และประมวลผลขนาดใหญ่ ส่วน Hadoop On-Premise เน้นข้อมูลที่สำคัญและต้องการประมวลผลในองค์กร ซึ่งแนวโน้มของผู้ผลิตในระบบ On-Premise ต่างๆเช่น Cloudera หรือ Hortonworks ก็เน้นไปสู่ Hybrid/Multi Cloud ดังแสดงตัวอย่างดังรูปที่ 2

Screenshot 2019-03-23 13.26.19

รูปที่ 2 ตัวอย่างโซลูชั่นของ Hortonworks ทีเน้น Multi-Cloud

สุดท้ายผมได้ทำตารางข้างล่างมาเปรียบเทียบระหว่างระบบ On-Premise กับ Public Cloud Service ต่างๆมาให้เพื่อพิจารณาเลือกใช้บริการต่อไป

ธนชาติ นุ่มนนท์

IMC Institute

Screenshot 2019-03-23 13.26.37Screenshot 2019-03-23 13.26.49

 

ผลการสำรวจการใช้ Cloud Computing ทั่วโลกปี 2019

Screenshot 2019-03-14 09.57.10

ผมตามผลการสำรวจ Cloud Computing ของบริษัท RightScale ทุกปี เพื่อจะได้ทราบแนวโน้มการใช้ Cloud Computing ในด้านต่างๆของผู้ใช้ในองค์กรรูปแบบต่างๆทั่วโลก สำหรับในปีนี้ทาง RightScale ได้ออกรายงาน State of the cloud 2019 from Flexera™ มาเมื่อปลายเดือนกุมภาพันธ์ โดยมีการสำรวจข้อมูลจากกลุ่มตัวอย่าง 786 ราย โดยเป็นองค์กรขนาดใหญ่ 456 รายและ SME 330 ราย โดย 59% มาจากทวีปอเมริกาเหนือ ยุโรป 16% และเป็นเอเซียแปซิฟิก 19% โดยกลุ่มตัวอย่างมาจากอุตสาหกรรมต่างๆดังรูปที่ 1

Screenshot 2019-03-14 10.04.45

รูปที่ 1 กลุ่มตัวอย่างแบ่งตามประเภทอุตสาหกรรม

ผลการสำรวจมีข้อมูลที่น่าสนใจหลายๆด้านที่ผมอยากสรุปมาสั้นๆดังนี้

  • 94% ของผู้ตอบแบบสอบถาม กำลังใช้ Cloud โดย 69% ใช้  Hybrid Cloud, 22% ใช้ Public cloud อย่างเดียว และ 3% ใช้ Private cloud อย่างเดียว
  • 84% ใช้ Cloud อยู่หลายราย  (Multi-cloud)
  • ค่าใช้จ่าย Public Cloud ขององค์กรต่างๆขนาดใหญ่จะสูงกว่า 2.4 ล้านเหรียญสหรัฐต่อปี หรือประมาณเดือนละ 200,000 เหรียญ แต่ถ้าเป็น SME มากกว่า 50% จะมีรายจ่ายต่ำกว่า 120,000 ล้านเหรียญสหรัฐต่อปี หรือประมาณเดือนละ 10,000 เหรียญ ดังแสดงในรูปที่ 2
  • การใช้ Public cloud  โตขึ้นอย่างมากถึง 24%  ขนาดที่ Private cloud โตเพียง 8%
  • ความท้าทายของการ Cloud ที่องค์กรให้ความสำคัญสามเรื่องคือ Governance, ขาดความเชี่ยวชาญและ การควบคุมค่าใช้จ่าย ทั้งนี้ขึ้นอยู่กับประสบการณ์การใช้ ดังแสดงในรูปที่ 3
  • AWS ยังเป็น Public cloud ที่มีผู้ใช้มากที่สุด และ Azure มีการเติบโตขึ้นอย่างมาก (โดยปีที่แล้วมีผู้ใช้ 45% แต่โตขึ้นเป็น 52% ส่วน AWS ลดลงจาก 64% เหลือ 61%) ดังแสดงในรูปที่ 4
  • ผู้ใช้บริการ PaaS ส่วนใหญ่จะเลือกใช้ Relational Database as a Service และ Push notification ขนาดที่การใช้บริการ Serverless , Stream processing และ Machine learning  เติบโตขึ้นมากกว่า 45% ดังแสดงในรูปที่ 5
  • VMware sphere ยังเป็น Private Cloud ที่นิยมมากที่สุดตามด้วย OpenStack ดังแสดงในรูปที่ 6
  • Docker ยังเป็น Container ที่คนใช้มากที่สุด แต่ Kubernate โตขึ้นอย่างมาก ดังแสดงในรูปที่ 7

ผู้สนใจสามารถอ่านรายงานฉบับเต็มได้ที่เว็บไซต์ของ RightScale >> https://www.rightscale.com/blog/cloud-industry-insights/cloud-computing-trends-2019-state-cloud-survey

ธนชาติ นุ่มนนท์

IMC Institute

 

Screenshot 2019-03-14 10.16.42

รูปที่ 2 ค่าใช้จ่าย Public Cloud ต่อปีขององค์กรต่างๆ

Screenshot 2019-03-14 10.22.11

รูปที่ 3 ความท้าทายของการใช้ Cloud แบ่งแยกตามระดับประสบการณ์การใช้

Screenshot 2019-03-14 10.27.33

รูปที่ 4 ส้ดส่วนการใช้ Public Cloud ของผู้ให้บริการต่างๆ

Screenshot 2019-03-14 10.30.58

รูปที่ 5  PaaS Public Cloud แบ่งตามประเภทการให้บริการ

Screenshot 2019-03-14 10.36.41

รูปที่ 6 สัดส่วนการใช้ Private Cloud

Screenshot 2019-03-14 10.39.29

รูปที่ 7 สัดส่วนการใช้ Container