Oracle 26ai
SQL Tuning
จูน SQL ให้เร็วขึ้น
อย่างเป็นขั้นตอน
เข้าใจหลักการ อ่านแผนการทำงาน และลงมือรันแล็บตามไปด้วย ครอบคลุมตั้งแต่ Oracle 19c ถึง 26ai สำหรับ DBA และ Developer ที่อยากรู้ว่าจะเริ่มแก้ SQL ช้าตรงไหน

อ่านหลักการ แล้วลองพิสูจน์ด้วยแล็บ
19c → 26aiเริ่มจากปัญหาที่เจอ
SQL ช้า แล้วควรเริ่มดูตรงไหน?
ผมเขียนเล่มนี้ให้คนที่เจอระบบช้าลง เปิด query แล้ว แต่ยังไม่รู้ว่าจะเริ่มแก้จากอะไร
ก่อนเริ่มจูน
รู้ว่าช้า แต่ยังหาสาเหตุไม่เจอ
- อ่านคำสั่ง SQL แล้ว ยังไม่เห็นว่าติดตรงไหน
- เปิด Execution Plan แล้ว ไม่รู้จะดูอะไร
- ลังเลว่าจะสร้าง index หรือแก้คำสั่งก่อน
- อ่านเอกสารหลายเรื่อง แต่ยังต่อภาพไม่ครบ
สิ่งที่จะได้ฝึกในเล่ม
ค่อย ๆ วิเคราะห์อย่างมีเหตุผล
- เข้าใจว่า optimizer เลือกแผนอย่างไร
- อ่านและตีความ Execution Plan
- พิจารณาสถิติ ดัชนี และวิธี join ก่อนปรับ
- ลงมือรันแล็บ แล้วดูสิ่งที่เกิดขึ้นจริง
อ่านที่มาของหนังสือจากคำนำ
เท่าที่ผมหาดู ตอนนี้ยังไม่มีหนังสือภาษาไทยเล่มไหนที่เขียนเรื่อง SQL Tuning บน Oracle เวอร์ชัน 26ai ออกมาเลย และถ้ามองภาพกว้างกว่านั้น คนที่ออกมาถ่ายทอดความรู้เรื่อง Oracle Database เป็นภาษาไทยก็แทบจะหาไม่เจอ
ผมไม่คิดว่าเป็นเพราะไม่มีคนเก่งนะครับ คนเก่งมีเยอะ แต่การนั่งเรียบเรียงองค์ความรู้ออกมาเป็นเล่มมันกินเวลามาก และคนที่เก่งพอจะเขียนได้มักจะยุ่งเกินกว่าจะมีเวลานั่งเขียน ผมเองก็เกือบไม่เขียนด้วยเหตุผลเดียวกัน
ผลที่ตามมาคือ DBA และ Developer ไทยจำนวนมากต้องไปงมเอาเองจาก Oracle Documentation ซึ่งเป็นภาษาอังกฤษล้วน อ่านได้อยู่ครับ แต่กว่าจะปะติดปะต่อว่าเรื่องไหนต่อกับเรื่องไหนก็เสียเวลาไปหลายเดือน
วิธีเรียนกับเล่มนี้
เข้าใจหลักการ แล้วลงมือทำ
อย่าอ่านอย่างเดียวครับ ติดตั้งแล็บแล้วรันตามไปด้วยทุกบท ชุดติดตั้งมาพร้อมกับหนังสือ
เข้าใจหลักการ
เริ่มจากวงจรคำสั่ง SQL และ optimizer เพื่อรู้ว่าฐานข้อมูลตัดสินใจจากอะไร
อ่าน Execution Plan
ดูแผนการทำงานของคำสั่ง แล้วเชื่อมกับสถิติ ดัชนี และการเข้าถึงข้อมูล
ลงมือทำกับแล็บ
รันคำสั่งตามในเล่ม สังเกตผล และฝึกนำความรู้มารวมกันในเวิร์กช็อป
ตัวอย่างจากบทที่ 1
เห็นทั้งคำสั่งและผลรัน
ตัวอย่าง Hard Parse กับ Soft Parse ในเล่ม ใช้ v$sql ดูว่าคำสั่งถูกเรียกกี่ครั้ง และมีการโหลดแผนกี่ครั้ง
SELECT sql_id, parse_calls, executions, loads, sql_text
FROM v$sql
WHERE sql_text LIKE '%LAB_BIND%'
AND sql_text NOT LIKE '%v$sql%';ดูคำสั่งใน Shared Pool ที่มีคอมเมนต์ LAB_BIND กำกับไว้
| PARSE_CALLS | EXECUTIONS | LOADS |
|---|---|---|
| 3 | 3 | 1 |
ในตัวอย่างนี้ เรียกคำสั่ง 3 ครั้ง แต่ LOADS เท่ากับ 1 หน้าเดียวกันยังเปรียบเทียบกับคำสั่งที่ใช้ค่าตรง ๆ ให้ดูด้วย
ลองอ่านก่อนซื้อ
เปิดดูหน้าจริงในเล่ม
สารบัญ หน้าเกี่ยวกับผู้เขียน และตัวอย่างเนื้อหา รวม 15 หน้า เลือกหมวดแล้วกดที่หน้าเพื่ออ่านภาพขนาดใหญ่
เนื้อหาในเล่ม
10 บทที่ต่อกันเป็นภาพเดียว
ตั้งแต่ SQL ทำงานอย่างไร ไปจนถึงการอ่านแผน ปรับคำสั่ง ดูแลแผนให้เสถียร และเวิร์กช็อปรวบยอด
SQL ทำงานอย่างไร
สถาปัตยกรรมการประมวลผลคำสั่ง SQL และ Cost-Based Optimizer
เข้าใจวงจรคำสั่ง การ parse และวิธีที่ optimizer เลือกแผน
อ่านแผนให้เป็น
การอ่านและตีความ Execution Plan
รู้ว่าฐานข้อมูลเข้าถึงข้อมูลและประมวลผลคำสั่งอย่างไร
ให้ optimizer เห็นข้อมูล
Optimizer Statistics และ Histogram
ทำความเข้าใจสถิติและการกระจายตัวของข้อมูล
ตามหา SQL จากแอป
การหา SQL ที่มาจากแอปพลิเคชัน
SQL Trace, TRCSESS และ TKPROF
เข้าถึงข้อมูลให้เหมาะ
การเข้าถึงข้อมูลและดัชนี
ทำความเข้าใจทางเลือกในการอ่านข้อมูลและใช้ index
เชื่อมตารางและเรียงข้อมูล
การเชื่อมโยงข้อมูลและการเรียงลำดับ
วิเคราะห์วิธี join และขั้นตอนการ sort
ปรับวิธีประมวลผล
Optimizer Hints, Query Transformation และ Materialized View
รู้จักเครื่องมือและแนวทางปรับแผนการทำงาน
ใช้แผนอย่างเข้าใจ
Bind Variables และ Adaptive Execution
ทำความเข้าใจการใช้แผนซ้ำและการปรับแผนระหว่างทำงาน
ดูแลแผนให้เสถียร
ทำให้เสถียรด้วยระบบอัตโนมัติ
AWR/ASH, SQL Plan Management และ Automatic Indexing
ลงมือทำตั้งแต่ต้นจนจบ
เวิร์กช็อปรวบยอด 4 เคสจริง
นำความรู้จากบทก่อนหน้ามาฝึกวิเคราะห์และจูน SQL
2 ภาคผนวก
ก / คำสั่งใหม่
QUALIFY, GROUP BY ALL และ VALUES
ข / Vector และ JSON
Vector และ JSON Relational Duality
ฟีเจอร์และเครื่องมือบางอย่างขึ้นกับเวอร์ชัน edition และสิทธิ์การใช้งาน Oracle ให้ตรวจข้อกำหนดในบทที่เกี่ยวข้องก่อนใช้กับระบบจริง
เปิดดูสารบัญและหน้าตัวอย่างก่อนเริ่มอ่าน
เล่มนี้เหมาะกับคุณไหม?
เล่มนี้เน้นการจูนที่ระดับคำสั่ง SQL สำหรับคนที่เขียน SQL ได้แล้ว และอยากเข้าใจการทำงานเบื้องหลัง
เล่มนี้เขียนให้ใคร
- DBA และ Developer ที่ทำงานกับ Oracle อยู่แล้ว
- คนที่เรียนวิชาฐานข้อมูลมาแล้ว และอยากรู้ว่าหน้างานจริงเป็นยังไง
พื้นฐานที่ต้องมี
- เขียน SQL ได้ และอ่าน SELECT ที่มี join หลายตารางแล้วเข้าใจ
- เคยใช้ SQL*Plus หรือ SQLcl มาบ้าง
ส่วน optimizer, execution plan และ statistics ไม่ต้องรู้มาก่อน เดี๋ยวผมสอนให้
เล่มนี้ไม่ครอบคลุมอะไร
ขอบเขตอยู่ที่คำสั่ง SQL เรื่องต่อไปนี้ไม่ได้อยู่ในเล่ม
- Instance tuning (การปรับ SGA/PGA ระดับ instance)
- System tuning (OS, storage, network)
- PL/SQL tuning
ถ้าปัญหาอยู่ที่ instance, OS, storage หรือ network ต้องวิเคราะห์ในระดับนั้นเพิ่มเติม
ไฟล์ที่ได้รับ
หนังสือและแล็บ
พร้อมให้ลงมือทำ
ไฟล์ PDF 173 หน้า + สคริปต์ติดตั้งสภาพแวดล้อมแล็บ (.zip)
ผู้เขียน พรชัย ครองธรรมชาติ (อาจารย์ตี๋)
- รูปแบบ
- E-Book (ไฟล์ PDF)
- จำนวนหน้า
- 173 หน้า
- ภาษา
- ไทย
- ราคา
- 790 บาท
ไฟล์ PDF ที่คุณได้รับจะมีอีเมลที่ใช้ตอนสั่งซื้อกำกับไว้ทุกหน้า ยกเว้นหน้าปก และดาวน์โหลดได้ 5 ครั้ง ส่วนสคริปต์แล็บโหลดได้ไม่จำกัด
ซื้อแล้ว? กลับมาดาวน์โหลดหนังสือ →ต้องมีพื้นฐานแค่ไหน?
เขียน SQL ได้ อ่าน SELECT ที่ join หลายตารางเข้าใจ และเคยใช้ SQL*Plus หรือ SQLcl มาบ้าง ส่วน optimizer, execution plan และ statistics ไม่ต้องรู้มาก่อน ผมจะพาไปทำความเข้าใจในเล่ม
หนังสือครอบคลุม Oracle รุ่นไหน?
เนื้อหาครอบคลุมตั้งแต่ 19c ถึง 26ai ภาคผนวกแยกคำสั่งใหม่และเรื่อง Vector กับ JSON Relational Duality ไว้ให้ คำสั่งบางอย่างขึ้นกับเวอร์ชันและ edition ที่ใช้ ให้ดูข้อกำหนดของแต่ละบทก่อนรันแล็บ
สั่งซื้อแล้วได้ไฟล์อะไร?
ได้รับ E-Book ภาษาไทยในรูปแบบ PDF และสคริปต์ติดตั้งสภาพแวดล้อมแล็บ (.zip) สำหรับรันตามเนื้อหาในหนังสือ
ดาวน์โหลดและกลับมาอ่านภายหลังอย่างไร?
หลังชำระเงิน ระบบส่งลิงก์รับหนังสือไปที่อีเมลที่ใช้สั่งซื้อ หากกลับมาดาวน์โหลดภายหลัง ให้เข้าหน้าดาวน์โหลดและใช้อีเมลเดิมเพื่อรับรหัสยืนยัน หากไม่พบอีเมลให้ตรวจกล่อง Spam ก่อน
ไฟล์มีลายน้ำหรือจำกัดการดาวน์โหลดไหม?
ไฟล์ PDF มีอีเมลที่ใช้สั่งซื้อกำกับทุกหน้า ยกเว้นหน้าปก และดาวน์โหลดได้ 5 ครั้ง ส่วนสคริปต์แล็บดาวน์โหลดได้ไม่จำกัด
อ่านอย่างเดียวได้ไหม?
อ่านเพื่อทำความเข้าใจได้ครับ แต่ถ้าอยากเห็นว่าตัวเลขและแผนการทำงานเปลี่ยนอย่างไร ผมแนะนำให้ติดตั้งแล็บแล้วรันตามไปด้วยทุกบท ชุดติดตั้งแล็บมาพร้อมหนังสือ
Oracle 26ai SQL Tuning
พร้อมเริ่มจูน SQL
อย่างเป็นขั้นตอนหรือยัง
PDF ภาษาไทย 173 หน้า พร้อมสคริปต์แล็บ