1 poin oleh GN⁺ 2025-09-23 | 1 komentar | Bagikan ke WhatsApp
  • Pengalaman unduhan menjadi lebih cepat berkat peningkatan infrastruktur server unduhan bulan ini
  • Metode permintaan file “...latest” diubah menjadi pengalihan HTTP
  • Upaya dilakukan agar semua pengguna dapat dengan mudah mengakses data OSM terbaru
  • Kasus penggunaan yang tidak normal berupa pengunduhan berlebihan file berukuran besar secara berulang menyebabkan penurunan performa layanan secara keseluruhan
  • Disampaikan tiga rekomendasi konkret untuk pengunduhan yang efisien dan bertanggung jawab

Pembaruan server unduhan dan anjuran penggunaan yang bertanggung jawab

Bulan ini dilakukan penguatan infrastruktur pada server unduhan.
Dengan ini, lingkungan yang memungkinkan unduhan tersedia lebih cepat dan lebih awal dapat dibangun.
Sebagai perubahan teknis, saat meminta file “...latest”, pengguna kini diarahkan ke file versi terbaru melalui pengalihan HTTP, menggantikan metode pengiriman langsung sebelumnya.

Mengapa pengunduhan yang bertanggung jawab diperlukan

Server dioperasikan agar semua pengguna dapat dengan mudah mengakses data OSM (OpenStreetMap) terbaru.
Namun, ada kasus ketika sebagian pengguna berulang kali mengunduh file besar yang sama (misalnya 20GB) ratusan hingga ribuan kali per hari.

  • Sebagai contoh, ada kasus seorang pengguna mengunduh file italy-latest.osm.pbf hampir 10.000 kali dalam 24 jam
  • Pengguna lain berulang kali mengunduh seluruh file di server setiap hari

Perilaku seperti ini menyebabkan seluruh pengguna mengalami perlambatan karena batas bandwidth server.
Jika pemblokiran rentang IP menjadi tak terhindarkan, pengguna lain yang tidak terkait pun dapat terdampak.

Tiga rekomendasi konkret untuk pengguna server

  1. Jika membutuhkan data global, disarankan untuk tidak mengunduhnya per bagian dari server, melainkan mengambil file planet sekaligus dari planet.openstreetmap.org
  2. Jika ingin memperbarui data benua atau wilayah luas (misalnya Europe, North America) setiap hari, gunakan program pyosmium-up-to-date untuk hanya mengunduh perubahan; ini dapat mengurangi 98% total trafik dan juga mempercepat proses
  3. Jika menggunakan skrip otomatis, perlu memantau apa yang sedang diunduh atau menambahkan penanganan kesalahan yang sesuai untuk mencegah kesalahan seperti mengunduh file yang sama tanpa henti secara berulang

Kesimpulan

Melalui kebiasaan mengunduh yang lebih bertanggung jawab, semua orang diajak ikut menciptakan lingkungan yang nyaman untuk menggunakan data terbaru

1 komentar

 
GN⁺ 2025-09-23
Komentar Hacker News
  • Setiap kali melihat masalah seperti ini, saya bertanya-tanya mengapa BitTorrent tidak digunakan lebih luas; menurut saya akan bagus jika ia menjadi protokol bawaan di lebih banyak tempat, misalnya di registry container atau repositori paket
    • BitTorrent punya citra publik yang buruk; kebanyakan orang langsung mengaitkannya dengan unduhan ilegal<br>Pengaturan firewall juga lebih merepotkan dibanding HTTP, dan jika meminta admin jaringan membuat konfigurasi seperti itu, mereka bisa menganggapnya aneh, terutama karena ada resistensi terhadap BitTorrent itu sendiri<br>Klien BitTorrent jauh lebih kompleks daripada klien HTTP dan biasanya tidak terpasang di komputer kantor atau pipeline CI; banyak orang hanya ingin semuanya selesai dengan satu perintah curl<br>Ada sangat banyak kesalahpahaman bahwa orang harus melakukan seeding, dan itu membuat mereka takut<br>Pada akhirnya, karena citra buruknya dan karena semuanya bisa dilakukan hanya dengan curl, sayang sekali BitTorrent jadi kurang dihargai<br>Ada contoh seperti klien video game yang memakai BT untuk update atau PeerTube yang menggunakan webtorrent, tetapi tetap saja belum banyak dipakai
    • Puluhan perusahaan seperti Amazon, Esri, Grab, Hyundai, Meta, Microsoft, Precisely, Tripadvisor, dan TomTom menyediakan data OpenStreetMap gratis di S3 dalam format Parquet, sehingga dari dataset berukuran beberapa TB kita bisa memakai bandwidth hanya sebesar MB untuk mengueri dan menganalisis hanya informasi yang diinginkan<br>Lihat penjelasan lengkap<br>Pengguna ArcGIS Pro juga bisa memanfaatkan plugin ini
    • Beberapa tahun lalu saya ingat pernah melihat konsep "torrent dengan konten dinamis", tetapi pada praktiknya tampaknya tidak benar-benar dipakai lagi<br>Saya sempat berharap ini akan jadi kenyataan, jadi saya penasaran apakah ada masalah fatal seperti isu keamanan<br>Tautan referensi
    • Dibanding HTTP, menurut saya BitTorrent tidak punya "klien universal" yang benar-benar bisa dipakai di mana-mana; tidak sefamiliar SSH atau SCP, dan butuh banyak usaha untuk instalasi, konfigurasi, sampai penyiapan tracker<br>Biasanya pendekatan seperti ini baru masuk akal jika memang ada kebutuhan unduhan file besar yang sering, dan jika mempertimbangkan reliabilitas serta volume seeding, akhirnya kembali ke pertanyaan apakah manfaatnya sebanding dengan biaya pengembangan dan pemeliharaan alatnya<br>Saya bertanya-tanya apakah sesuatu seperti Git LFS bisa membantu, tetapi hanya itu sejauh pengetahuan saya
    • Di perusahaan tempat saya dulu bekerja, kami harus mendistribusikan file besar ke semua developer setiap minggu; awalnya semua orang mengambilnya bersamaan lewat rsync, tetapi setelah pindah ke BitTorrent, peningkatan kecepatannya luar biasa
  • Saya selalu berterima kasih bahwa ada perusahaan seperti Geofabrik, sehingga kita sesekali bisa mendapat pengalaman yang luar biasa seperti ini<br>Saat mengoperasikan API sendiri, sering kali saya benar-benar terkejut oleh kecerobohan atau ketidaktahuan para developer; permintaan aneh seperti itu terlalu sering terjadi<br>Kalau saya tidak pernah mengalaminya sendiri, saya mungkin akan mengira cerita seperti ini dilebih-lebihkan<br>Tapi di sisi lain, developer API juga sering tidak memikirkan banyak kasus; kebanyakan hanya menyediakan operasi untuk satu entitas, sehingga dalam use case nyata yang butuh banyak pekerjaan sekaligus, orang terpaksa mengirim 700 request
    • Pada orang yang belum terlalu mahir dalam development, sikap tidak bertanggung jawab atau ketidaktahuan bisa muncul di profesi apa pun<br>Saya yakin tidak semua developer asal menghajar API<br>Pemrograman kini terbuka untuk semua orang, dan belakangan ada juga tren "vibe-coding", jadi secara garis besar rasanya ini memang sulit dihindari<br>Jika respons mengembalikan 429 (Too Many Requests) atau menerapkan algoritma leaky-bucket, developer junior maupun pemula akan cepat menyadari masalahnya sendiri
    • Sulit dipahami mengapa fitur "downloader pays" di S3 tidak diadopsi lebih luas; kalau model seperti ini ada juga di luar AWS, pengguna yang tidak efisien bisa menanggung biayanya sendiri sesuai pemakaian<br>Kekurangannya, orang tanpa sistem pembayaran bisa jadi kesulitan mengaksesnya, tetapi mungkin masih bisa disediakan opsi gratis dengan kecepatan terbatas
    • Ada pengguna yang mengunduh file 20GB ribuan kali per hari; saya penasaran mengapa ini tidak cukup dikendalikan dengan rate limit saja
    • Menurut saya kedua pihak sama-sama butuh lebih banyak empati: klien harus menghormati infrastruktur, dan developer API harus berpikir lebih luas dari sudut pandang pengguna
  • Kasus "satu pengguna mengunduh file italy-latest.osm.pbf hampir sepuluh ribu kali dalam 24 jam" kemungkinan besar adalah masalah kode; cukup tetapkan batas per IP. Bahkan untuk pengguna VPN pun tetap begitu
  • Mungkin orang-orang sedang mengunduh file data peta di pipeline CI, sering kali sebagai unduhan tak disengaja yang bahkan mereka sendiri tidak sadari<br>Karena itu banyak layanan akhirnya melarang unduhan otomatis oleh pengguna tanpa akun<br>Kalau orang ingin mengambil file lewat cURL, menurut saya sebaiknya mereka diarahkan untuk daftar dulu, lalu pengguna yang mengunduh berlebihan diblokir atau dikenai biaya
    • Menurut saya konsep CI adalah salah satu penemuan terburuk dalam hal pemborosan resource komputasi, meskipun saya juga tidak benar-benar paham mengapa data peta mengalami unduhan massal yang disalahgunakan seperti library kode
    • Saya curiga aplikasi web sedang "mengueri" file GPKG; format Parquet bisa mengueri hanya bagian yang diperlukan secara efisien, tetapi saya tidak yakin apakah hal yang sama bisa dilakukan pada GPKG
    • Saya penasaran apakah request dari server CI bisa diidentifikasi secara andal
    • Sedikit autentikasi sederhana saja, misalnya API key atau berbasis email, tampaknya sudah menjadi kompromi yang baik
  • Kasus seperti "ada pengguna yang mengunduh file 20GB yang sama ratusan kali per hari selama beberapa hari berturut-turut (bahkan ada yang sampai sepuluh ribu kali dalam 24 jam), dan ada juga yang mengunduh semua file di server setiap hari" tampaknya bisa dengan mudah dihentikan hanya dengan rate-limiting<br>Saya penasaran mengapa mereka sudah menghitung jumlah unduhan file selama 24 jam tetapi tidak menetapkan batas apa pun<br>Saya tidak berharap para pengguna ini akan (a) membaca tulisan peringatan dari operator server dan (b) mengubah perilaku mereka
  • Beberapa tahun lalu saya berpikir, "masa ada orang yang mengunduh sesuatu lebih dari 100MB setiap kali build script berjalan?", tetapi setelah mengenal Docker, saya sadar kasus seperti itu ternyata sangat banyak
    • Saya sering melihat orang seolah merasa kalau sudah masuk ke dalam container, semuanya jadi seperti sihir dan gratis
    • Docker mendukung layer cache, jadi bukankah seharusnya tidak perlu mengunduh ulang semuanya setiap kali?
    • Karena itu saya membuat image khusus proyek lebih dulu di CI dan hanya menggunakannya di CI; kalau harus set up dengan apt-get setiap kali, waktunya terlalu banyak terbuang
  • Saya penasaran apakah pengguna yang mengunduh berlebihan seperti ini dikirimi email secara terpisah; saat memakai API Nominatim gratis pada 2012, email itu wajib, dan saya benar-benar pernah menerima email yang menyarankan agar mengurangi jumlah request lewat caching dan semacamnya
    • Kalau tidak ada login, mereka tidak akan mendapatkan alamat email, jadi memang tidak bisa mengirim email
  • Saya memang bukan pengguna yang mengunduh file italy-latest setiap 8 detik itu, tetapi startup Italia tempat saya bekerja sangat sering memakai GeoFabrik, jadi mungkin salah satu anggota tim melakukan terlalu banyak unduhan saat bereksperimen dengan container<br>Dulu kami pernah diblokir oleh geofabrik, dan sampai sekarang kami masih tidak tahu penyebabnya, jadi saya berharap hal seperti ini tidak terulang lagi<br>Saya sudah mencoba menelepon dan mengirim email ke kontak geofabrik.de, tetapi tidak ada jawaban; kalau ada yang tahu cara menyelesaikan masalah ini atau cara menghubungi mereka, saya ingin diberi tahu
  • Saya rasa orang-orang yang mengunduh file secara berlebihan seperti ini justru tidak akan membaca tulisan blog seperti ini
  • Ini terasa seperti use case yang cocok untuk bittorrent
    • Saya penasaran bagaimana klien torrent bisa otomatis hanya mengambil perubahan saat datanya berubah