วิธีประหยัดพีื้นที่จัดเก็บล๊อก (Log)

as2 มันไม่มี Harddisk แต่จัดเก็บล๊อก ลง USB thumb drive หรือ flash drive แน่นอนว่าพื้นที่เรื่องการจัดเก็บ ต้อง ไม่มากแน่นอน ดูแล้วจะต้องสงสัยทันที แล้วจะเก็บล๊อกได้กี่เดือน ลองพิจารณา วิธีการจัดเก็บดูนะครับ แล้วจะทราบว่า ทำไมไม่น่าหว่งเรื่องนี้

 
1) ปกติ เวลาใช้เน็ต โดยเฉพาะ การท่องเว็บ อาศัย โพโตคอล (Protocol) HTTP ลักษณะการทำงานของ เจ้า HTTP คือเมื่อ เปิดหน้าเว็บหนึ่งหน้าจะสร้างจำนวนการเชื่อมต่อ หรือ Connection เป็นส่วนๆ ค่อนข้างเยอะ ไม่ใช่แค่ 1 Connection เหมือนแอพพลิเคชั่นอื่นๆ

ดูภาพด้านล่างประกอบ



ดังนั้น ในล๊อกทั่วๆ จะจัดเก็บ รายละเอียดเท่ากับ 9 รายการคือ
- log IP/URL ของหน้า HTML หน้าที่โหลด
- log IP/URL ของแหล่งข้อมูลอื่นๆ ที่ไม่ใช่ Text หรือเนื้อหา HTML หน้าที่โหลด ซึ่งจากภาพข้างต้น จะได้ว่า ต้องเก็บ รายละเอียดภาพ หรือ Flash อีก 8 รายการ (ส่วนที่ตีกรอบสีเขียว)

as2 จะจัดเก็บดูว่ารายการ ล๊อก นั่นชี้ไปที่ปลายทางเดียวกัน หรือเหมือนกัน ก็จัดเก็บเป็น 1 รายการ เพื่อยืนยันได้ว่า มีการเชื่อมต่อ ช่วงเวลาดังกล่าว ไปที่ปลายทางนั้นๆ แบบไม่ซ้ำ IP

2) กรณีที่ 1 ถ้าแหล่งข้อมูล เรียกไปอ้างอิงที่อื่น ที่ไม่อยู่ภายใต้เว็บเดียวกัน หรือ ไม่ใช่ IP เดียวกัน as2 จะจัดเก็บเพิ่มเติม เป็นรายการ ตามที่ IP อ้างอิงชี้ไปที่อื่นๆ แต่จะยังคง เก็บแบบไม่ซ้ำ

3) นอกจากหลักการตาม ข้อ 1,2 เพื่อลดปริมาณการซ้ำซ้อน ของ รายการล๊อก ที่จัดเก็บ แล้ว as2 ยัง มีอีก 2 เทคนิค ในการ ช่วยเรื่องจัดการปริมาณล๊อกมหาศาล คือ ข้อแรก จัดเก็บความเคลื่อนไหวแบบช่วงเวลาคือ ตัวอย่างเช่น ภายใน 10 วินาที ถ้ายังคงรายการเดิม หรือ การเชื่อมต่อปลายทางยังอยู่ใน URL เดิม ก็จะยังไม่บันทึกเพิ่ม แต่ถ้าเข้าวินาที่ 11 (หรือวินาทีแรก เมื่อเริ่มนับใหม่ทุกๆ 10) ก็จะเก็บเพิ่ม ถึงแม้จะยังคงเชื่อมต่อกับปลายทางเดิม หลักการเหมือนพวก Protal สำเร็จรูปที่รายงานว่า ขณะนี้มีผู้ Online เท่าไหร่ เพื่อเพิ่มความละเอียด ให้ทราบว่า ผู้ใช้งานไปปลาย ในช่วงเวลาไหนถึงไหน และข้อสอง ที่ช่วยอย่างมาก ในการประหยัดพื้นที่จัดเก็บ คือการ Compress หรือ บีบอัดข้อมูล ข้อมูลลีอกไฟล์ เป็น ข้อมูล Text File ธรรมดา ดังนั้น เมื่อทำการบีบอัด จะทำได้มากถึง 90-99% เลยทีเดียวถึงแม้ จะใช้วิธีการบีบอัดแบบที่คุณภาพหรือ อัลกอลิทัม แย่ยังไง ของทุกเครื่องมือบีบอัด ก็ยัง ได้ผลลัพธ์ที่สูง เพราะการบีบอัดของมูล Text เป็นพื้นฐาน ที่แทบ ไม่ต้องเลือกเครื่องมือ ในการใช้งาน (zip,zip2,gz,bzip,bz,bz2,rar…. อื่นๆ)

โดยที่ as2 จะเก็บธรรมดา บนพื้นที่ใช้งานปกติ แต่เมื่อครบกำหนด 1 วัน จะทำการบีบอัดข้อมูล ที่ได้ ไม่ว่าจะเป็นขนาด Gbyte หรือแค่ไม่กี่เมก บีบอัดแล้ว เหลือไม่เท่าไหร่ ดูจากรูป ด้านล่าง แสดงตัวอย่างสถิติ การจัดเก็บล๊อก แต่ละวัน ที่จำนวนผู้ใช้งาน ประมาณ 50-60 เครื่อง

ภาพแสดงสถิติ หรือขนาดของล๊อกหลังจากที่ Compress แล้ว เป็นรายวัน
 
สรุป หลักๆ แล้ว as2 จะเก็บการเชื่อมต่อทุก IP ปลายทางที่อ้างอิงไป ทุกๆ ช่วงเวลาแบบ ไม่ซ้ำ แต่ต้องสามารถยืนย้นได้ว่า ผู้ใช้งาน ใช้งานปลายทางนั้นๆ จริงๆ ในช่วงเวลาดังกว่า (หลักการเหมือน แจ้งว่ามี Online User เท่าไหร่ แบบเดียวกับที่ Protal หรือ เว็บบอร์ด ทำกัน) และ ที่สำคัญคือ มีการจัดเก็บแบบ บีบอัด (Data Compression) ทุกๆ วัน สำหรับการจัดเก็บเป็นประวัติ (ระยะเวลา ที่เก็บตามที่เซ็ตไว้ใน ส่วน Back Office) เพื่อช่วยลดพื้นที่ในการจัดเก็บ

เด็ดกว่านั้นคือ as2 ไม่เก็บล๊อกเฉพะพอร์ท 80 หรือ มานั่งทำ Proxy (ที่ปัจจุบัน จะหา เนี้อหาเว็บที่ใช้ประโยชน์จากพร๊อกซี่ แบบอดีตได้น้อยเหลือเกิน แถมความเร็วเน็ตก็ไม่ใช่ปัญหาอีกแล้ว) แล้วเก็บการท่องเว็บเพียงอย่างเดียว แต่ as2 อนุญาตให้ผู้ใช้ กำหนด ได้ว่าต้องการ เก็บล๊อก การใช้งานเน็ต อะไรบ้าง โดยกำหนดค่า พอร์ท ของแอพพลิเคชั่น เช่น MSN หรือ Windows live messenger ก็ใส่ค่า Port = 1863 เป็นต้น