Pangkalan Data Zon Waktu IANA (tz): Apa Itu dan Mengapa Ia Penting

Diterbitkan pada: 9:00 AM , oleh Time.tz Team

Apa itu pangkalan data zon waktu IANA (tz/tzdata), bagaimana ia menamakan zon seperti America/New_York, mengapa offset tidak mencukupi, dan siapa yang bergantung padanya.

Peta dunia dengan sempadan zon waktu dan pengecam zon IANA seperti America/New_York, Europe/London, dan Asia/Kolkata

Apa Sebenarnya Pangkalan Data Zon Waktu IANA

Jika anda pernah bekerja dengan tarikh dan masa dalam perisian, anda telah bergantung pada Pangkalan Data Zon Waktu IANA sama ada anda sedar atau tidak. Ia dikenali dengan beberapa nama โ€” pangkalan data tz, tzdata, pangkalan data Olson, atau zoneinfo โ€” tetapi semuanya merujuk kepada perkara yang sama: sebuah katalog kerjasama yang tersedia secara percuma mengenai zon waktu dunia dan peraturan yang mentadbirnya.

Perkataan "katalog" tidak cukup menggambarkannya. Pangkalan data ini bukan sekadar menyenaraikan kawasan mana yang berada pada ofset UTC yang mana. Ia merekodkan sejarah lengkap penjagaan masa sivil untuk setiap kawasan โ€” setiap perubahan ofset, setiap peralihan waktu siang, setiap perubahan jam semasa perang, dan setiap peraturan masa depan yang dijadualkan โ€” kembali, dalam banyak kes, ke pertengahan abad ke-19 apabila waktu min tempatan digantikan dengan zon piawai. Apabila aplikasi kalendar anda menunjukkan dengan betul bahawa mesyuarat pada tahun 1985 berlaku satu jam berbeza daripada waktu dinding yang sama hari ini, itu adalah kerja pangkalan data tz.

Ia berasaskan teks, boleh dibaca manusia, dan kecil. Bentuk binari yang telah dikompil yang dihantar pada komputer anda hanya beberapa megabait. Namun ia mengekod salah satu set data yang paling rumit secara senyap dalam pengkomputeran.

Sejarah Ringkas

Projek ini bermula pada tahun 1980-an di bawah Arthur David Olson, yang menyusun versi pertama dan mengehoskannya pada pelayan di Institut Kesihatan Nasional Amerika Syarikat. Selama beberapa dekad ia diselenggarakan sebahagian besarnya melalui usaha sukarelawan yang diselaraskan melalui senarai mel awam, itulah sebabnya nama lama "pangkalan data Olson" masih muncul dalam dokumentasi.

Paul Eggert mengambil alih sebagai editor utama dan kekal sebagai penyelaras projek yang lama. Kompilasi dokumen theory.html yang disertakan dan sejarah komit yang teliti telah menjadikan pangkalan data ini sebagai rujukan sejarah dan juga teknikal.

Pada tahun 2011, selepas pertikaian undang-undang yang singkat tetapi membimbangkan mengenai data sejarah, pentadbiran berpindah ke Internet Assigned Numbers Authority (IANA) , badan yang sama yang menyelaraskan sumber internet teras yang lain. IANA kini menerbitkan keluaran rasmi, itulah sebabnya "pangkalan data zon waktu IANA" menjadi nama kanonik. Kerja masih dilakukan oleh komuniti penyumbang yang sama; IANA menyediakan rumah institusi dan titik pengedaran yang stabil.

Konvensyen Penamaan: Area/Lokasi

Salah satu ciri paling tersendiri pangkalan data ini ialah cara ia menamakan zon. Daripada nama negara atau ofset mentah, ia menggunakan format Area/Lokasi, hampir selalu berlabuh kepada sebuah bandar perwakilan:

  • America/New_York
  • Europe/London
  • Asia/Kolkata
  • Australia/Sydney

"Area" biasanya adalah benua atau lautan (America, Europe, Asia, Pacific), dan "Lokasi" adalah bandar terkenal dalam zon tersebut. Pilihan ini kelihatan pelik sehingga anda memahami sebab di sebaliknya.

Bandar adalah stabil; sempadan politik dan ofset tidak. Negara berpecah, bergabung, menukar nama, dan menukar jam mereka. Bandar, sebaliknya, adalah titik geografi tetap dengan sejarah penjagaan masa yang berterusan. Menamakan zon America/New_York dan bukannya "Waktu Timur AS" atau "UTC-5" bermakna pengecam kekal sah walaupun peraturan yang dilampirkan padanya berubah.

Pangkalan data juga sengaja mengelakkan nama negara untuk mengelakkan pertikaian politik dan kerana satu negara sering mengandungi beberapa zon โ€” Amerika Syarikat mempunyai lebih daripada sedozen. Ia memilih bandar yang paling ramai penduduk atau paling penting dari segi sejarah dalam setiap zon yang berbeza sebagai label neutral. Apabila dua wilayah mempunyai sejarah jam yang sama sejak 1970, mereka berkongsi satu zon; sebaik sahaja sejarah mereka berbeza, mereka mendapat entri berasingan.

Mengapa Ofset Mentah Tidak Mencukupi

Naluri biasa pemula adalah untuk menyimpan masa sebagai "UTC+5:30" dan menganggapnya selesai. Ini berfungsi untuk satu saat, tetapi ia runtuh sebaik sahaja anda perlu membuat pertimbangan tentang peristiwa masa depan atau berulang, kerana ofset bukanlah sifat statik sesuatu tempat. Ia adalah output peraturan yang kerajaan ubah secara berterusan dan selalunya secara mendadak.

Pertimbangkan beberapa contoh sebenar yang perlu diserap oleh pangkalan data:

  • Samoa melangkau 30 Disember 2011 sepenuhnya. Untuk menyelaraskan hari perniagaannya dengan Australia dan New Zealand dan bukannya Amerika Syarikat, Samoa melompat merentasi Garisan Tarikh Antarabangsa, bergerak dari UTC-11 ke UTC+13. Bagi sesiapa di pulau itu, hari Jumaat itu langsung tidak wujud.
  • Negara memansuhkan, menerima pakai, atau menjadualkan semula waktu siang dengan notis yang singkat. Kesatuan Eropah telah membahaskan penamatan DST; beberapa negara dan negeri AS telah menukar peraturan DST mereka dalam beberapa dekad kebelakangan ini. Turki, Rusia, dan lain-lain telah menukar ofset piawai mereka sepenuhnya.
  • Tarikh mula dan tamat DST berubah. Amerika Syarikat mengalihkan sempadan DSTnya pada tahun 2007. Mana-mana sistem yang mengkod keras peraturan lama secara senyap menghasilkan masa yang salah selama berminggu-minggu setiap tahun.

Jika anda menyimpan hanya ofset, anda tidak boleh menjawab soalan "apakah waktu tempatan di Santiago pada 15 November tahun depan?" โ€” kerana jawapannya bergantung pada peraturan yang mungkin belum dimuktamadkan. Menyimpan pengecam zon (America/Santiago) bersama pangkalan data membolehkan perisian mengira ofset yang betul untuk bila-bila masa, masa lalu atau masa depan, dan mengiranya semula secara automatik apabila peraturan berubah.

Ini adalah cadangan nilai teras: pangkalan data tz memisahkan identiti sesuatu tempat daripada peraturan yang sentiasa berubah yang menentukan jamnya.

Bagaimana Ia Diselenggara

Penyelenggaraan berlaku secara terbuka. Perubahan yang dicadangkan โ€” peraturan DST baharu, tarikh sejarah yang diperbetulkan, pengumuman kerajaan โ€” dibincangkan dalam senarai mel tz awam, di mana penyumbang memetik warta rasmi, laporan berita, dan dekri kerajaan sebagai bukti. Ketepatan diambil serius; perubahan kepada data sejarah khususnya diteliti terhadap sumber utama.

Keluaran diberi versi dengan tahun dan huruf: 2024a, 2024b, 2024c, dan seterusnya. Nombor adalah tahun; huruf bertambah dengan setiap keluaran pada tahun itu. Kerana kerajaan mengumumkan perubahan jam mengikut jadual mereka sendiri yang tidak dapat diramalkan, tiada irama keluaran tetap โ€” tahun yang tenang mungkin melihat dua keluaran, manakala tahun pergolakan politik melihat banyak. Sistem dijangka dikemas kini dengan segera, kerana pangkalan data basi boleh bermakna memaparkan masa yang salah selepas perubahan peraturan berkuat kuasa.

Siapa Yang Bergantung Padanya

Hampir semuanya.

  • Sistem pengendalian. Pengedaran Linux menghantar tzdata sebagai pakej teras. macOS memperoleh data zonnya daripada sumber yang sama. Windows menggunakan zon berasaskan pendaftarannya sendiri untuk sebab warisan tetapi mendedahkan zon IANA melalui perpustakaan ICU dan API moden.
  • Bahasa pengaturcaraan. Secara berkesan setiap perpustakaan tarikh/masa yang matang membaca daripada atau menggabungkan pangkalan data tz: zoneinfo Python, java.time Java, projek ICU, PostgreSQL, enjin JavaScript melalui ICU, Ruby, PHP, dan banyak lagi.
  • Aplikasi. Kalendar, sistem tempahan, platform dagangan kewangan, alat analisis log, dan perkhidmatan penjadualan semuanya bergantung padanya, biasanya tanpa pemaju memikirkannya.

Kewujudan di mana-mana ini adalah sebab mengapa pangkalan data ini sangat penting. Sumber kebenaran tunggal, dikongsi, dan diselenggara dengan teliti bermakna mesyuarat yang dijadualkan dalam satu sistem dipaparkan dengan betul dalam sistem lain, merentas sistem pengendalian dan bahasa, beberapa dekad ke masa lalu atau masa depan.

Jika anda ingin meneroka zon itu sendiri, lihat senarai penuh zon waktu IANA atau lihat bagaimana ia dipetakan merentas dunia dalam direktori semua zon waktu kami.

Soalan Lazim

Adakah pangkalan data tz sama dengan tzdata, zoneinfo, dan pangkalan data Olson?

Ya. Ini semua adalah nama untuk projek yang sama. "tzdata" biasanya merujuk kepada fail data seperti yang dibungkus untuk sistem pengendalian, "zoneinfo" kepada direktori binari yang telah dikompil, dan "pangkalan data Olson" adalah nama sejarah yang lebih lama sempena pengasas Arthur David Olson. Hari ini nama rasmi ialah Pangkalan Data Zon Waktu IANA.

Berapa kerap pangkalan data dikemas kini?

Tiada jadual tetap. Keluaran dicetuskan oleh peristiwa dunia sebenar โ€” kerajaan menukar peraturan DST atau ofset piawainya, atau pembetulan kepada data sejarah. Beberapa tahun melihat satu keluaran; yang lain melihat beberapa. Setiap satu dinamakan seperti 2024a, 2024b, menambah huruf sepanjang tahun.

Mengapa ia menamakan zon selepas bandar seperti America/New_York?

Bandar adalah tetap secara geografi dan mempunyai sejarah penjagaan masa yang berterusan, manakala negara, sempadan, dan ofset berubah mengikut masa. Menggunakan bandar perwakilan memberikan setiap zon pengecam yang stabil dan neutral dari segi politik yang kekal sah walaupun peraturan DST atau ofset yang mendasari berubah.

Bolehkah saya hanya menyimpan ofset UTC dan bukannya nama zon?

Hanya untuk satu saat tetap. Untuk peristiwa masa depan atau berulang, anda harus menyimpan pengecam zon, kerana ofset berubah dengan waktu siang dan keputusan kerajaan. Nama zon bersama pangkalan data membolehkan perisian mengira ofset yang betul untuk sebarang tarikh secara automatik.

Siapa yang menjalankan projek sekarang?

Ia diterbitkan oleh IANA, yang mengambil alih pentadbiran pada tahun 2011, dan diselaraskan oleh Paul Eggert dengan komuniti penyumbang yang bekerja melalui senarai mel tz awam. Kerja teknikal kekal sebagai usaha kerjasama yang dipacu sukarelawan.

Masa sekarang di bandar-bandar ini:

New York ยท London ยท Tokyo ยท Paris ยท Hong Kong ยท Singapura ยท Dubai ยท Los Angeles ยท Shanghai ยท Beijing ยท Sydney ยท Mumbai

Masa sekarang di negara-negara:

๐Ÿ‡บ๐Ÿ‡ธ AS | ๐Ÿ‡จ๐Ÿ‡ณ China | ๐Ÿ‡ฎ๐Ÿ‡ณ India | ๐Ÿ‡ฌ๐Ÿ‡ง United Kingdom | ๐Ÿ‡ฉ๐Ÿ‡ช Jerman | ๐Ÿ‡ฏ๐Ÿ‡ต Jepun | ๐Ÿ‡ซ๐Ÿ‡ท Perancis | ๐Ÿ‡จ๐Ÿ‡ฆ Kanada | ๐Ÿ‡ฆ๐Ÿ‡บ Australia | ๐Ÿ‡ง๐Ÿ‡ท Brazil |

Masa sekarang di zon waktu:

UTC | GMT | CET | PST | MST | CST | EST | EET | IST | China (CST) | JST | AEST | SAST | MSK | NZST |

Percuma widget untuk pentadbir web:

Widget Jam Analog Percuma | Widget Jam Digital Percuma | Widget Jam Teks Percuma | Widget Jam Perkataan Percuma