Apa itu basis data Minecraft? [Tutup]

11

Saya bertanya-tanya, database seperti apa yang digunakan Minecraft? Apakah ini basis data relasional, mungkin sesuatu yang umum seperti MySQL? Apakah kita tahu apa yang dia gunakan?

Dan mungkin pertanyaan yang lebih baik, HARUS dia melakukannya dengan cara itu? Jenis database apa yang harus digunakan?

Jeff
sumber
7
Format yang saat ini digunakan untuk data level dijelaskan di minecraftwiki.net/wiki/Beta_Level_Format .
Michael Madsen
4
Saya suka pertanyaan "harus". Seolah Notch salah. Hah. :-P
Ricket
4
Maksud Anda database pada klien, atau database pada server yang mengelola otentikasi, dll.
Tim Holt
1
Mengelola otentikasi bukan basis data. Ini adalah file teks biasa dengan nama akun, disebut Daftar Putih;)
Marco
2
@Ricket Apa yang Anda sarankan? Takik adalah dewa di antara manusia! ;)
Bebek Komunis

Jawaban:

12

Minecraft menyimpan data dunia dan data pemain. Menyimpan data dunia dilakukan dalam multipemain dan singlepemain dengan metode yang sama. Ini menyimpan semuanya dalam satu .mcrfile.
Versi minecraft sebelumnya menyimpan data dalam struktur file dengan banyak file, yang lebih lambat, saya pikir.
Saya tidak tahu persis ini, tetapi saya kira bahwa database untuk menyelamatkan dunia bukanlah yang terbaik, karena data disimpan dalam interval 15 menit atau lebih dan database tidak dirancang untuk menyimpan semua data pada saat yang sama.

Data pemain di server multipemain disimpan dalam .datfile. Saya tidak berpikir bahwa data pemain ini disimpan dalam database SQLite atau yang serupa, karena menggunakan database untuk meminta sekali dan menyimpan setiap 5 menit atau lebih juga bukan yang terbaik.

Singkatnya:
Saya pikir Notch bahkan tidak menggunakan database apa pun, karena tidak masuk akal karena setiap data disimpan dalam memori dan hanya disimpan dalam interval menit.

Marco
sumber
3
Notch menggunakan format biner lurus ke atas yang telah dikompresi. Alasannya? Kinerja dan ruang mungkin.
Michael Coleman
Saya cukup yakin .datini digunakan dalam singleplayer juga, untuk posisi dan data pemain.
Bebek Komunis
@The Communist Duck: Saya melihat ke savegames saya dan hanya bisa menemukan .mcr. A .datakan lebih masuk akal, tapi mungkin itu dibundel dengan .mcr.
Marco
Ada level. Data untuk setiap level; Saya menggunakannya dengan situs tingkat alat (URL dilupakan) untuk menemukan benih dan melakukan hal teleport-acak.
Bebek Komunis