เนื่องจากได้เรียนวิชา BigData มาระยะหนึ่งโดยใช้ MapReduce Function บน MongoDB และใช้งาน Hadoop ก็พบว่ากว่าจะได้ใช้งานต้องใช้เวลาในการติดตั้งพอสมควร และการใช้ Hadoop อย่างเดียว ชีวิตคุณจะพบกับความทรมานอย่างแสนสาหัส เอาเป็นว่าใช้เครื่องมือที่เป็น Ecosystem ของ Hadoop เข้ามาช่วยจะดีที่สุด สำหรับผู้ที่ต้องการเรียนรู้เบื้องต้นว่า BigData เป็นอย่างไร จะเล่นกับ Hadoop ได้อย่างไร ผมแนะนำเครื่องมือง่ายๆ ที่จะทำให้คุณเรียนรู้การใช้งาน Hadoop ได้อย่างรวดเร็ว คือ HortonWorks Sandbox ครับ HortonWorks Sandbox เป็นชุด Appliance ที่รวบรวมเอาเครื่องมือที่เกี่ยวข้องกับ Haddop มารวบรวมไว้พร้อมใช้งานเพื่อศึกษาการใช้งานและการทำงานร่วมกับ Hadoop สำหรับ Sandbox แบ่งเป็น VM Image สำหรับ VirtualBox, VMWare และ HyperV สามารถดาวน์โหลดเอาไปทดลองเล่นกันได้

ในชุดของ Sandbox ประกอบด้วย

  • Apache Hadoop
  • Apache Hive
  • Apache HBase
  • Apache Pig
  • Apache Storm
  • Apache Solr
  • Apache Falcon
  • Apache Sqoop
  • Apache Flume
  • Apache Oozie
  • Apache Ambari
  • Apache Mahout
  • Apache ZooKeeper
  • Apache Knox

เรียกได้ว่ามายกชุดกันเลยทีเดียว

มาลองเล่น MapReduce บน HortonWorks กันกับปัญหาพื้นฐานนับจำนวนคำ เราจะใช้หนังสือของคุณ James Joyce ชื่อ Ulysses กันครับ ให้ดาวน์โหลดมาแล้วแตกไฟล์ zip ให้เรียบร้อย แล้วใช้ File Browser เพื่อ upload ไฟล์หนังสือเข้าไป

จากนั้นใช้ Pig Script เขียน code ดังนี้

a = load '/user/hue/4300.txt';

b = foreach a generate flatten(TOKENIZE((chararray)$0)) as word;

c = group b by word;

d = foreach c generate COUNT(b), group;

store d into '/user/hue/pig_wordcount';

กำหนดชื่อ Script นี้ แล้วสั่ง Execute ครับ ผลลัพท์ที่ได้จะอยู่ในไดเรคทอรี /user/hue/pig_wordcount ผลลัพท์ที่ได้จะอยู่ในรูปแบบ key-value pair เรียกดูจาก File Manager ได้ครับ

จากนั้นเราก็เอาผลลัพท์ที่ได้ import เข้า HCatalog เพื่อสร้าง table เพื่อให้ใช้ SQL Query ได้ เพิ่มความสะดวกมากขึ้น จะได้ไม่ต้องเขียน script เรียกข้อมูลจาก key-value ให้ยุ่งยาก

ลองสั่ง Query ผ่าน Hive ดูครับ

เราก็จะได้ผลลัพท์ดังนี้

สำหรับ Word Count เป็นตัวอย่างง่ายๆ ของ MapReduce สำหรับท่านที่สนใจเรียนเพิ่มเติมก็สามารถดูรายละเอียดได้ที่หน้า Tutorial Gallery ครับ

Sandbox Game Maker เป็นโปรแกรมออกแบบเกมส์ 3D โดยใช้เอนจิ้นของ Cube 2 ซึ่งผู้ใช้สามารถสร้างแก้ไขฉากของเกมส์ได้ง่ายและรวดเร็วในขณะเดียวกันนี้ยังสามารถเล่นเกมส์ในฉากที่เราสร้างขึ้นได้อีกด้วย โปรแกรมนี้เน้นเด็กๆ ที่ชอบเล่นเกมส์และอยากสร้างเกมส์ด้วยตัวเอง ซึ่งโปรแกรมไม่ได้ยากมากนักเพียงแค่ใช้เมาส์คลิกๆ เท่านั้น ซึ่งเด็กๆ จะสามารถสร้างฉากของเกมส์ได้ง่ายๆ เลยทีเดียว คุณสามารถสร้างเกมส์ Sandbox Game Maker ไสตล์ FPS 3D แบบ Cube 2 หรือแม้กระทั่งเกมส์แนว RPG หรือเกมส์ผจญภัยในแบบ 2.5D ก็ยังได้ ดูวิดีโอข้างล่างครับ :)

ทีนี้มาดูวิธีการติดตั้งกันครับ สำหรับท่านที่ใช้ Ubuntu อยู่แล้ว สามารถใช้ repositpry ของ playdeb เพื่อติดตั้ง Sandbox Game Maker ได้เลย อันดับแรกติดตั้ง playdeb package กันก่อน

wget http://archive.getdeb.net/installdeb/playdeb0.3-1~getdeb1all.deb
sudo dpkg -i playdeb
0.3-1~getdeb1_all.deb

จากนั้น update ฐานข้อมูล package ดังนี้

sudo apt-get update

และติดตั้ง

sudo apt-get install sandboxgamemaker-all