← กลับไปยังบทความทั้งหมด

tz database ฐานข้อมูลเขตเวลาโลกและกฎการปรับเวลาออมแสง

สรุปใจความสำคัญ

  • tz database เป็นที่รู้จักในหลายชื่อ เช่น IANA time zone database หรือ Olson database
  • ใช้รูปแบบการตั้งชื่อ Area/Location เพื่อความคงทนต่อการเปลี่ยนแปลงทางการเมือง
  • ข้อมูลถูกคอมไพล์จากไฟล์ข้อความโดยใช้เครื่องมือ zic เพื่อให้ระบบปฏิบัติการนำไปใช้งานได้

tz database (หรือที่รู้จักในชื่อ tzdata, zoneinfo database หรือ IANA time zone database) คือการรวบรวมข้อมูลเกี่ยวกับเขตเวลาของโลกและกฎการปรับเวลาออมแสง (Daylight Saving Time - DST) ซึ่งถูกออกแบบมาเพื่อใช้กับโปรแกรมคอมพิวเตอร์และระบบปฏิบัติการเป็นหลัก โดยมี Paul Eggert เป็นผู้ดูแลและแก้ไขตั้งแต่ปี 2005 ภายใต้การสนับสนุนของ ICANN

tz database illustration
ภาพประกอบแสดงโครงสร้างและการทำงานของ tz database

โครงสร้างข้อมูลของ tz database

ในฐานข้อมูลนี้ "เขตเวลา" (Timezone) ถูกนิยามว่าคือภูมิภาคระดับชาติที่นาฬิกาท้องถิ่นมีการตกลงใช้เวลาเดียวกันตั้งแต่ปี 1970 ซึ่งเป็นจุดเริ่มต้นของ Unix time epoch

การกำหนดรูปแบบไฟล์

tz database จะถูกเผยแพร่ในรูปแบบของไฟล์ข้อความ (Text files) ที่ระบุระเบียบการเปลี่ยนเวลาและช่วงเวลาเปลี่ยนผ่านในรูปแบบที่มนุษย์อ่านได้ จากนั้นไฟล์เหล่านี้จะถูกคอมไพล์ (Compile) ให้เป็นไฟล์ไบนารี (Binary files) ที่ไม่ขึ้นกับแพลตฟอร์ม โดยใช้คอมไพเลอร์ที่ชื่อว่า zic (zone information compiler) เพื่อให้ API มาตรฐาน เช่น localtime() และ mktime() สามารถนำไปใช้งานได้

การระบุชื่อเขตเวลา

ชื่อเขตเวลาในฐานข้อมูลนี้ใช้รูปแบบ "Area/Location" เช่น America/New_York หรือ Europe/Paris โดยมีหลักการตั้งชื่อดังนี้:

  • Area (พื้นที่): ชื่อของทวีป มหาสมุทร หรือ "Etc" (เช่น Africa, America, Asia, Europe)
  • Location (สถานที่): ชื่อเมืองหรือเกาะขนาดเล็ก ซึ่งมักจะเป็นเมืองที่ใหญ่ที่สุดในภูมิภาคนั้น เพื่อหลีกเลี่ยงความไม่แน่นอนจากการเปลี่ยนแปลงทางการเมืองหรือพรมแดนของประเทศ

กฎการปรับเวลาออมแสง (DST)

กฎสำหรับเวลาออมแสงจะถูกระบุไว้ในชุดกฎ (Rule sets) ซึ่งจะกำหนดปีที่เริ่มใช้, ปีที่สิ้นสุด, เดือน, วัน และเวลาที่ต้องปรับเปลี่ยน รวมถึงจำนวนเวลาที่ต้องบวกเพิ่มจาก UTC เมื่อกฎนั้นมีผลบังคับใช้

สรุปความสำคัญของ tz database

ฐานข้อมูลนี้เป็นโครงสร้างพื้นฐานที่สำคัญสำหรับระบบดิจิทัลทั่วโลก ช่วยให้คอมพิวเตอร์สามารถคำนวณเวลาท้องถิ่นได้อย่างแม่นยำ ไม่ว่าจะเป็นการนัดหมายข้ามประเทศ หรือการบันทึก Log ไฟล์ของระบบ ซึ่งทั้งหมดนี้เป็นข้อมูลสาธารณะ (Public Domain) และมีการอัปเดตหลายครั้งต่อปีเพื่อให้สอดคล้องกับการเปลี่ยนแปลงของกฎหมายเวลาในแต่ละประเทศ

คำถามที่พบบ่อย

tz database คืออะไร?

คือฐานข้อมูลที่รวบรวมข้อมูลเขตเวลาและกฎการปรับเวลาออมแสงทั่วโลก เพื่อให้โปรแกรมคอมพิวเตอร์และระบบปฏิบัติการสามารถแสดงเวลาท้องถิ่นได้อย่างถูกต้อง

ทำไมถึงใช้ชื่อเมืองแทนชื่อประเทศในเขตเวลา?

เพราะชื่อเมืองมีความคงทนและเปลี่ยนแปลงน้อยกว่าชื่อประเทศหรือพรมแดนทางการเมือง ซึ่งช่วยให้ฐานข้อมูลมีความเสถียรมากกว่า

ใครเป็นผู้ดูแล tz database ในปัจจุบัน?

Paul Eggert เป็นผู้ดูแลและแก้ไขฐานข้อมูลนี้ตั้งแต่ปี 2005 โดยได้รับการสนับสนุนจาก ICANN