Sebuah format pertukaran data baru yang disebut 6NF telah muncul, dirancang khusus untuk gudang data dan sistem pelaporan. Format ini bertujuan menggantikan format hierarkis yang kompleks seperti XBRL , XML , JSON , dan YAML dengan struktur yang lebih datar dan ramah database. Namun, format ini telah memicu diskusi signifikan di komunitas teknis tentang pilihan desain dan aplikasi praktisnya.
Fitur Utama Format 6NF:
- Struktur datar yang ramah database (tanpa objek/array bersarang)
- Kompatibilitas bitemporal dengan timestamp valid_from dan recorded_at
- Standar waktu UTC dengan akhiran 'Z' (contoh: 2023-01-01T12:00:00Z)
- UUIDv7 yang dikodekan dengan Base32 Crockford untuk pengenal
- Notasi snake_case untuk pengenal
- Kata kunci yang peka huruf besar-kecil (HURUF BESAR) dan pengenal (huruf kecil)
- Pengkodean UTF-8
Kekhawatiran Presisi Timestamp Membagi Pendapat
Format 6NF mengharuskan semua data menyertakan timestamp valid_from dan recorded_at dalam format UTC . Pendekatan bitemporal ini telah menimbulkan perdebatan di antara pengembang tentang apakah presisi seperti itu selalu diperlukan. Beberapa pihak berargumen bahwa banyak skenario bisnis hanya membutuhkan presisi tingkat tanggal daripada timestamp yang tepat.
Berdasarkan pengalaman saya, valid_from selalu berupa tanggal (tanpa waktu, tanpa zona waktu). Itulah cara pelaporan dalam dokumen (misalnya periode validitas kontrak).
Diskusi ini mengungkapkan perpecahan antara mereka yang melihat presisi timestamp sebagai hal yang penting untuk menangkap semua kemungkinan skenario data, dan mereka yang percaya bahwa hal ini menambah kompleksitas yang tidak perlu untuk banyak kasus penggunaan umum. Para kritikus menunjukkan bahwa tanggal mulai kerja, periode validitas kontrak, dan peristiwa bisnis serupa biasanya beroperasi pada presisi harian daripada per jam.
Tanggal Akhir yang Hilang Menciptakan Pertanyaan Implementasi
Kekhawatiran teknis yang signifikan telah muncul terkait penanganan validitas temporal oleh format tersebut. Format 6NF menyertakan timestamp valid_from tetapi tidak memiliki field valid_to yang sesuai. Pilihan desain ini telah menimbulkan pertanyaan tentang bagaimana sistem menangani pembaruan data, penghapusan, dan periode validitas.
Anggota komunitas mencatat bahwa database bitemporal biasanya menggunakan interval setengah terbuka untuk waktu sistem dan valid. Tidak adanya timestamp akhir berarti bahwa meskipun record dapat diperbarui, mereka tidak dapat dengan mudah dihapus atau dibatalkan validitasnya setelah ada. Keterbatasan ini bisa menjadi masalah untuk aplikasi dunia nyata di mana data perlu dihapus atau ditandai sebagai tidak lagi valid.
Elemen Sintaks Format:
ENTITY
- Mendefinisikan entitas data utama dengan UUIDREFERENCE
- Membuat data referensi dengan pengenalATTRIBUTE_OF
- Menghubungkan atribut ke entitas dengan timestampATTRIBUTE_REF_OF
- Mereferensikan atribut antar entitasSTRUCT_OF
- Mengelompokkan beberapa atribut dengan konteks temporal yang samaRELATIONSHIP
- Mendefinisikan koneksi antar entitas
Filosofi Normalisasi Bertemu Tren Data Modern
Penekanan format pada normalisasi sixth normal form bertentangan dengan tren industri saat ini menuju struktur data yang tidak dinormalisasi dan bersarang. Produk gudang data modern semakin menambahkan dukungan untuk memproses data JSON bersarang secara langsung, daripada meratakan ke dalam tabel yang dinormalisasi.
Pencipta format mengakui ketegangan ini, menjelaskan bahwa format tersebut mengatasi siklus normalisasi dan denormalisasi yang mahal yang terjadi ketika data berpindah antar sistem. Tujuannya adalah mentransfer data dalam bentuk yang sudah dinormalisasi untuk menghilangkan langkah transformasi yang mahal ini. Namun, beberapa pihak mempertanyakan apakah pendekatan ini selaras dengan cara organisasi benar-benar menangani dataset semi-terstruktur mereka yang semakin kompleks.
Format 6NF mewakili upaya menarik untuk menjembatani prinsip desain database tradisional dengan kebutuhan pertukaran data modern. Meskipun menawarkan manfaat potensial untuk kasus penggunaan tertentu, diskusi komunitas menyoroti pertanyaan penting tentang presisi timestamp, penanganan data temporal, dan apakah format yang dinormalisasi dapat secara efektif bersaing dengan fleksibilitas pendekatan semi-terstruktur modern.
Referensi: 6NF File Format