Database
Main Server
Most of the core data that requires persistence is stored in the main database database/arcaea_database.db
, including user related data, chart data, and so on. At present, the database is driven by SQLite, which is based on files. This will facilitate miniaturization and easy deployment everywhere. However, the reliability may not be as good as mature databases, and its performance limit is not yet clear.
Initialization
The initialization process should be automatic, that is, when the program runs for the first time, the database structure will be generated based on the database/init/tables.sql
, and then initial data will be filled based on some files in the database/init
folder. The initial data is basically the same as the official server, but does not include chart data.
If you need to manually do initialization, ensuring that the file does not exist, use the database/database_initialize.py
script to initialize the database and generate the main database.
Update
When the new version server runs for the first time, the program will automatically check and update the database.
The update process may fail. So considering data security, the old database will be backed up in the database/backup
folder and named with an increasing number suffix.
Backup of Deleted Data
When some deletion operations (such as canceling user accounts) have a destructive impact on user data, the deleted data will be stored in the database backup arcaea_database_deleted.db
. Note that this database will also undergo database version updates and retain old version backups.
Log Database
All uploaded scores of users, as well as their daily potential values, will be saved in the log database database/arcaea_log.db
. We may consider recording more data in the future.
The amount of this data increases over time, so the database may take up a lot of space. If you need to clean up this data, you can use tools/clean_logdb.py
in the project repository to clean it up, or directly delete the database when the server is not running.
Are you looking for other data?
Song data can be found in Chart Const and Related Files.