Wednesday, September 23, 2009

เรื่องของเครื่องครัวใน data integration

ถ้าหากเคยใช้ Pentaho Data Integration แล้ว ก็จะพบว่าหลัก ๆ แล้วประกอบด้วย 3 ด้วยกันคือ

1. Spoon
2. Kitchen
3. Pan

ตัว Data Integration เองถูกเรียกว่า Kettle ก็เกี่ยวกับครัว ๆ นั่นเอง แต่หลาย ๆ คนพอได้ลองใช้งาน แล้วก็มีคำศัพท์ 3 อันคือ

1. Developing
2. Transformation
3. Job

ใน ##pentaho มีคนบอกความสัมพันธ์ไว้ว่า

Spoon is GUI for developing. Kitchen runs transformations non-interactively, pan runs jobs non-interactively

ปัญหาการ Save Analysis บน Pentaho

วันก่อนพอทำการ Drill ไปจนถึงข้อมูลที่มีภาษาไทย แล้วต้องการ Save เก็บไว้
หลังจาก Save แล้วทำให้ไม่สามารถเรียกใช้ Analysis ที่ได้บันทึกไว้ได้

สุดท้ายก็ต้องไปพึ่ง irc.freenode.net ##pentaho

แล้วก็มีผู้ช่วยเหลือจาก Protuguese บอกไว้ว่า

rGoncalves: I've had a problem with protuguese chars and solved it starting the JVM adding -Dfile.encoding=UTF-8 to the catalina start up options. Maybe you can find an encoding that works for you


จากนั้นเราก็มาทำการ Start JVM ใหม่

มันได้ผล....

ที่น่าดีใจคือ มันมีครช่วยเหลือ

export CATALINA_OPTS="-Dfile.encoding=UTF-8 -Xms256m -Xmx768m -XX:MaxPermSize=256m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000"

Sunday, September 20, 2009

การใช้งาน Combination lookup/update เพื่อสร้าง Cube

หลังจากนั่งรอสร้าง Cube จากจำนวน Record 540,000 โดยที่มีจำนวนสินค้า และจำนวนลูกค้าที่หลังจากทำ Unique แล้ว จะมีจำนวน Record จำนวนมาก โดยเฉพาะที่ ตารางที่เป็น Dimension ของ Customer ซึ่งในรอบแรกใช้เวลาในการสร้าง Dimension มากกว่า 2 ชั่วโมง

แต่พอทำการย้ายตำแหน่งของการสร้าง dimension ก็พบว่าเร็วขึ้นกว่าเดิมเยอะ

สรุปได้ดังนี้ครับ

1. สร้าง Dimension ที่มีจำนวน มาก ๆ ก่อนเสมอ เช่น Customer, Product
2. สร้าง Primary key ไว้สำหรับทำ Aggregate ได้เลย จะได้ไม่เสียเวลาทีหลัง

แก้ไข

จากที่ให้ทำการสร้าง Dimension ของจำนวนข้อมูลที่มีขนาดใหญ่นั้น เท่าที่ลองดูแล้ว แนะนำให้สร้างเองโดยไม่ใช้เครื่องมือดีกว่า

Friday, September 18, 2009

เมื่อ MightMouse ของ Mac เลื่อนแล้วไม่ค่อยทำงาน

วันนี้ลำคาญการใช้ Wheel ของเจ้า Mighty Mouse ไปเจอในหลาย ๆ เวป เค้าให้ถอด แกะ ออกมา แต่ว่าเท่าที่ดูแล้ว Mouse นี่มันไม่มีที่ให้แงะ นะสิ

สุดท้ายก็อ่านเจอว่า เค้าโทรไปถามที่ Support ของ Apple แล้วเค้าบอกว่าทำดังนี้

1. หงาย Mouse ขึ้น
2. แล้วใช้ ผ้าชุบน้ำอุ่น ๆ หรือ แอลกอฮอล์ ให้ชุ่ม
3. แล้วก็คลึงที่ Wheel ประมาณซัก 30 วินาที จะสังเกตได้ว่า จะมีขยะติดมาออกมาติดกับผ้าครับ
4. แล้วใช้ผ้าแห้ง ๆ คลึงที่ Wheel ซัก 30 วินาที จนมั่นใจได้ว่า Wheel นั้นแห้งแล้ว
5. ทดลองใช้งานดูครับ


ของผมกลับมาใช้งานได้แล้วคับ

Monday, September 14, 2009

How to load FoodMart Database into Postgresql

You have to read the installation manual first (http://mondrian.pentaho.org/documentation/installation.php#PostgreSQL_on_Windows_example) then you need a little change to load FoodMart into Postgres

The easy way to import FoodMart data use the pentaho

1. Create Database
server# createdb -U -Eutf8 foodmart
2. Locate biserver-ce folder.
3. Go to library folder.
server# cd biserver-ce/tomcat/webapps/pentaho/WEB-INF/
3. Then locate the Data FoodMartCreateData.sql. (in my case is /mondrian/demo/FoodMartCreateData.sql)


server:biserver-ce/tomcat/webapps/pentaho/WEB-INF/$ java -cp \
"mondrian-3.1.1.jar:lib/log4j-1.2.8.jar:lib/eigenbase-resgen-1.3.0.11873.jar:lib/eigenbase-properties-1.1.0.10924.jar:lib/eigenbase-xom-1.3.0.11999.jar:lib/commons-logging-1.1.jar:lib/postgresql-8.2-504.jdbc3.jar" \
mondrian.test.loader.MondrianFoodMartLoader \
-verbose -tables -data -indexes \
-jdbcDrivers="org.postgresql.Driver,sun.jdbc.odbc.JdbcOdbcDriver" \
-inputFile=/mondrian/demo/FoodMartCreateData.sql \
-outputJdbcURL="jdbc:postgresql://localhost/foodmart" \
-outputJdbcUser=postgres \
-outputJdbcPassword=password


You need to locate your classes for run this.
Good Luck!
Ask me if you need this postgres dump file!

Wednesday, August 19, 2009

กรอบการเรียนรู้ของเด็ก ๆ ที่ฟินแลนด์

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

"ที่ฟินแลนด์ เค้าให้ความสำคัญกับเด็กมาก ๆ และยังกล้าบอกว่าการเรียนที่ฟินแลนด์นั้นถือได้ว่าเป็นอันดับหนึ่งของโลก" รู้ไหมว่าทำไม?

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

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

ขั้นเทพ...

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

หรือพ่อแม่เป็นอาจารย์ ลูก ๆ ก็เห็นพ่อแม่ทำงานอย่างนี้ทุกวัน ลูก ๆ ก็เลยไม่รู้จักวิชาชีพอื่น สุดท้ายก็เป็นอาจารย์เหมือนกัน ครอบครัวอาจารย์ซะงั้น

ดังนั้นโอกาสที่จะมีอาชีพใหม่ ๆ ให้เด็กได้ฝันว่าอยากจะเป็น มันก็ดูแคบทุกที

แล้วคุณหละมีกรอบตั้งแต่เมื่อไหร่

Friday, August 14, 2009

knowledge management ภาค social network

วันนี้มาเรียนขบวนการของ knowledge management กับ ดร. วรา วราวิทย์ อาจารย์ได้กล่าวไว้ว่า ความรู้ และสิ่งที่ทำให้ได้มาซึ่งความรู้ในโลกปัจจุบันนี้ กำลังเปลี่ยนไป เรามีอาจารย์หน้า ใหม่ ๆ ดังนี้

  1. อาจารย์ Google
  2. อาจารย์ Wiki pedia
  3. อาจารย์ Messenger
สิ่งที่ควรจะรู้สำหรับวันนี้มี 2 อย่างคือ
  1. คุณรู้อะไรลึก ๆ เข้าใจ และเป็นเทพ
  2. เพื่อนคุณรู้อะไรที่ลึก ๆ เข้าใจ และเป็นเทพ
แน่นอน คุณต้องสร้างเครือข่ายของเพื่อน ที่ต้องรู้ให้ได้ว่าควรถามสิ่งที่ต้องการรู้จากเพื่อนคนไหน มากกว่าตั้งหน้าตั้งตา ศึกษาทุกเรื่องเอง