Format Fail F3 Mencetuskan Perdebatan Mengenai Pembenaman WebAssembly dan Pertukaran Prestasi

Pasukan Komuniti BigGo
Format Fail F3 Mencetuskan Perdebatan Mengenai Pembenaman WebAssembly dan Pertukaran Prestasi

Format fail data baharu yang dipanggil F3 ( Future-proof File Format ) telah muncul daripada Carnegie Mellon University dan Tsinghua University , berjanji untuk menyelesaikan isu keserasian dalam penyimpanan data. Walau bagaimanapun, pendekatan unik format ini yang membenamkan dekoder WebAssembly terus ke dalam fail telah mencetuskan perbincangan sengit di kalangan pembangun mengenai sama ada faedahnya membenarkan kos tersebut.

Kontroversi WebAssembly

Perdebatan paling hangat tertumpu pada keputusan F3 untuk membenamkan dekoder WebAssembly ( WASM ) dalam setiap fail data. Pengkritik menunjukkan bahawa pendekatan ini memperkenalkan penalti prestasi serta-merta sebanyak 10-30% berbanding dengan pelaksanaan asli. Kebimbangan ini melampaui kelajuan sahaja - pembangun bimbang tentang melepaskan peluang pengoptimuman masa depan dan fungsi penyahkodan lanjutan.

Walau bagaimanapun, penyokong berhujah ini terlepas gambaran yang lebih besar. WASM yang dibenamkan berfungsi sebagai mekanisme sandaran apabila dekoder asli tidak tersedia. Seperti yang dijelaskan oleh salah seorang pencipta format, kesan prestasi berbaloi berbanding dengan tidak dapat membaca fail sama sekali. Sistem akan memilih dekoder asli apabila tersedia, hanya bergantung kepada WASM apabila diperlukan.

WebAssembly (WASM): Format arahan binari yang berjalan dalam persekitaran kotak pasir, membolehkan kod dilaksanakan dengan selamat merentasi platform yang berbeza.

Kesan Prestasi F3

  • Penyahkodan WebAssembly : Penalti prestasi 10-30% berbanding pelaksanaan asli
  • Saiz penyahkod terbenam: Overhed penyimpanan yang minimum (kilobait)
  • Kes penggunaan sasaran: Fail dengan saiz data skala terabait

Kebimbangan Keselamatan dan Muatan Hasad

Idea kod boleh laku yang dibenamkan dalam fail data telah menimbulkan bendera merah di kalangan pembangun yang mementingkan keselamatan. Pengalaman bertahun-tahun dengan format fail yang mengandungi skrip terbina dalam telah mengajar komuniti untuk berhati-hati dengan pendekatan sedemikian. Potensi muatan hasad yang tersembunyi dalam kod WebAssembly mewakili kebimbangan yang ketara.

Pereka F3 mengakui cabaran keselamatan ini dan mencadangkan penyelesaian termasuk ruang memori linear kotak pasir dan senarai kebenaran berpotensi untuk modul WASM yang disahkan. Mereka mencadangkan mewujudkan repositori pusat di mana pencipta dekoder boleh mendaftar dan mengesahkan modul mereka, menjadikannya tahan gangguan.

Landskap Format Berpecah-belah

Mungkin pendedahan paling mengejutkan daripada perbincangan komuniti ialah kewujudan berbilang projek format fail universal yang bersaing. Apa yang bermula sebagai konsortium yang dirancang antara organisasi utama termasuk CMU , Meta , dan lain-lain runtuh kerana komplikasi undang-undang sekitar perjanjian tidak pendedahan.

Format yang memerlukan program untuk menyahkod adalah gila. Lebih baik bundel 7zip dengan setiap fail zip.

Kerosakan ini membawa kepada sekurang-kurangnya lima inisiatif format berasingan: Nimble Meta , FastLanes CWI , Vortex SpiralDB , F3 CMU dan Tsinghua , dan AnyBlox Germany . Setiap satu mengambil pendekatan berbeza untuk menyelesaikan masalah yang serupa, mewujudkan landskap berpecah-belah yang secara ironiknya bertentangan dengan kebolehoperasian yang ingin dicapai oleh format ini.

Projek Format Fail Pesaing

Soalan Pelaksanaan Praktikal

Di luar perdebatan falsafah, kebimbangan praktikal muncul mengenai utiliti dunia sebenar F3 . Format ini menyasarkan senario di mana saiz fail mencapai terabait, menjadikan overhed kilobait dekoder terbenam diabaikan. Walau bagaimanapun, persoalan kekal mengenai keupayaan penyulitan, keperluan runtime WASM pada platform yang tidak jelas, dan sama ada melaksanakan dekoder mungkin lebih mudah daripada menyokong runtime WASM penuh.

Pergantungan format pada tatasusunan Apache Arrow untuk pemulangan data juga mengehadkan kebolehgunaannya sebagai format fail yang benar-benar generik, menunjukkan ia lebih sesuai untuk beban kerja analitik khusus daripada penyimpanan data tujuan umum.

Spesifikasi Teknikal F3

  • Prinsip teras: Kebolehoperasian, kebolehkembangan, kecekapan
  • Organisasi data: Fail yang menghuraikan diri dengan metadata terbenam
  • Format penyahkod: Binari WebAssembly untuk keserasian merentas platform
  • Mekanisme sandaran: Penyahkod asli diutamakan, WASM sebagai sandaran
  • Format pemulangan data: Tatasusunan Apache Arrow

Kesimpulan

F3 mewakili percubaan bercita-cita tinggi untuk masa depan penyimpanan data, tetapi pendekatannya yang berpusat WebAssembly membahagikan komuniti. Walaupun format menangani masalah keserasian sebenar dalam analitik data, penalti prestasi, kebimbangan keselamatan, dan percambahan piawaian yang bersaing menimbulkan persoalan mengenai penggunaan praktikalnya. Projek ini pada masa ini kekal sebagai prototaip akademik, memberi masa kepada komuniti untuk menilai sama ada pendekatan inovatifnya akan terbukti berharga atau jika penyelesaian yang lebih mudah mungkin lebih baik melayani keperluan ekosistem penyimpanan data.

Rujukan: F3: The Open-Source Data File Format for the Future