บทความ

กำลังแสดงโพสต์ที่มีป้ายกำกับ Performance Tuning

การใช้งาน Index ใน Oracle และเทคนิคการใช้ HINT

บทความเกี่ยวกับ : การใช้งาน Index ใน Oracle และเทคนิคการใช้ HINT วันนี้นั่งทำ Query อยู่พบข้อสังเกตุอะไรบางอย่าง กับการสร้าง index ใน Oracle ด้วยความที่เราไม่ได้มีความรู้มากมายเท่าทางสาย DBA แต่ก็ได้อาศัยลองผิดลองถูกเรื่อยๆมา วันนี้จะมาเล่ากรณีศึกษาให้ฟัง  ยกตัวอย่าง ผมสร้าง index  ให้กับ table ผมไว้ สอง Field คือ  field_a   index ชือ indx_a field_b   index ชื่อ indx_b ลอง Query data ดูพบว่า select * from my_table where field_a='xxx'; ผลที่ได้เร็วมากๆ select * from my_table where field_b='xxx'; ผลที่ได้เร็วมากๆ แต่พอลองแบบนี้ select * from my_table where field_a='xxx' and field_b='yyy'; ผลที่ได้ปรากฏว่าหน่วงขึ้นอย่างเห็นได้ชัดเจน ผมก็งงว่าทำไปเป็นอย่างงั้นในเมื่อเราก็ Query ด้วย index ทั้งสอง Field ลองถามเพื่อๆ ที่เก่งด้านนี้ดู เค้าบอกว่าให้สร้าง index สอง Field นี้ต่อกันเป็นแบบนี้ create index indx_ab on my_table (field_a,field_b) ลองสร้างและลอง Query แบบเดิมดูพบว่าเร็วจริงตามที่คาดไว้    แต่ผมเองก็ไม่เข...

SQL Tuning หรือ SQL Optimization Query Part Only

บทความเกี่ยวกับ : SQL Tuning หรือ SQL Optimization Query Part Only SQL  Tuning หรือ SQL Optimization Query Part Only เห่อ สร้างหัวข้อซะ อินเตอร์ วันนี้เด็ดครับ เอาของดีมาฝาก ผมว่าเพื่อนๆ Developer ทุกคนถ้าจับงานใหญ่ๆ เล่นกับ Data เยอะๆ ต้องเจอปัญหานี้แน่นอน Query ข้อมูลไม่ขึ้นว่ะ หรือ กำ Query แล้วค้าง แงๆๆ ทำไงดี วันนี้ห้ามพลาดครับกับไม้เด็ดในการ Tuning Query ให้เร็วขั้นเทพ เทคนิคง่ายๆ ผมเคยโพสไปแล้ว จะไม่กล่าวถึงนะครับ วันนี้เอาแบบมือโปร เท่านั้น หุหุ โม้ซะเยอะ เริ่มกันเลยดีกว่า 1. Query ด้วยการระบุ field ให้ชัดเจนเร็วกว่าแน่นอน      แม้จะไม่ค่อยเห็นผลใน 1 query     แต่คิดดูถ้าคุณ query ซัก สิบล้านรอบมันจะมีผลแค่ใหน หุหุ      select  f1,f2,f3  from my_table      เร็วกว่า      select * from my_table     ฟันธง 2. ใช้ Select ซ้อน Select ให้ฉลาด ๆ ในบางเคส ยกตัวอย่างเช่น           select f1,f2,f...

Oracle PLSQL Tuning ปรับแต่ง ตัวแปรใน PLSQL เพื่อการทำงานที่เร็วขึ้น

บทความเกี่ยวกับ : Oracle PLSQL Tuning ปรับแต่ง ตัวแปรใน PLSQL เพื่อการทำงานที่เร็วขึ้น Oracle PLSQL Tuning ปรับแต่ง ตัวแปรใน PLSQL เพื่อการทำงานที่เร็วขึ้น วันนี้จะเอาเทคนิคเิล็กๆ น้อยในการเขียน PL SQL  ให้ทำงานเร็วๆมาฝากครับ เริ่มต้นตั้งแต่สิ่งเล็กๆ น้อยๆ คือเรื่องการประกาศตัวแปร และการกำหนดค่า ตัวอย่าง DECLARE    n NUMBER;    c CHAR(5); BEGIN    n := n + 15;      -- ช้าครับเนื่องจากต้องแปลงค่า    n := n + 15.0;    -- เร็วครับ เพราะไม่ต้องแปลงค่า    c := 25;          -- ช้าครับ เพราะต้องแปลงค่า จาก 25 ให้เป็น char    c := TO_CHAR(25); -- เหมือนจะดีนะแต่ ช้าครับ ยังไงก็ต้องแปลงอยู่ดีใน function TO_CHAR    c := '25';        -- เร็วครับ ต้องแบบนี้ไม่ต้องแปลงอะไร END; จากตัวอย่างสรุปได้ว่า การกำหนดค่าให้กับตัวแปรต่างๆ ใน PLSQL ให้ระวังเรื่อง data type ด้วยนะครับเพรา...

การใช้งาน StringBuffer เพื่อเพิ่มความเร็วใน Java Program

บทความเกี่ยวกับ : การใช้งาน StringBuffer เพื่อเพิ่มความเร็วใน Java Program เพื่อนๆ หลายคนคงจะเคยเขียนโปรแกรมโดยการ ประกาศตัวแปร String แล้วมีการ วน Loop ต่อ String ยาวๆ เคยสังเกตมั้ยครับว่ามันทำงานช้ามากๆ ยิ่งถ้าต่อ String เยอะเข้าจริงๆ แล้วยิ่งจะทำให้ โปรแกรม เดี้ยงไปเลย ลองเปลี่ยนมาใช้ StringBuffer  ครับ append ไปเรื่อยๆ แล้วค่อยไป toString ตอนที่จะเอาไปใช้งาน รับรอง ผลได้เลยครับ