Помогите Какое расширение/тип записи файла нужно для экономия места/быстрой работы?

  • Автор темы Автор темы Boss90
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Boss90

Активный участник
Пользователь
Баллы
66
Имя в Minecraft
Boss90
Всем привет!

Хотел бы поинтересоваться какое расширение/тип нужно для экономия места/быстрой работы? Я замечал, что разработчики крупных плагинов сохраняют всю информацию (калдаун, и т.п) в формате JSON, хотя я бы пользовался каким-то более традиционным методом (YAML, TXT). Так-же, создают файлы с расширением .dat и т.п, где сохраняется эти JSON'ки.

Желательно маленький размер, маленькая нагрузка при чтении, быстрая работа.

Будут ли выполнять выше перечисленные пункты какой-нибудь MySQL или SQLITE?
 
Для быстрой работы помешаешь все необходимое в оперативную память, а не читаешь каждый раз с диска или базы.

А само чтение выносишь в асинхрон, если оно происходит во время работы, а не при запуске.

По поводу формата файлов - тут каждый делает так, как ему удобней. Есть проблемы со скоростью чтения и огромных YAML, и огромных JSON, и огромных NBT, потому что везде древовидная структура.
В этом плане эффективнее будет работать с базой.

Хотя, как я понимаю, у тебя объем данные не гигантский, поэтому и разницы практически нет.

В плане веса оптимальней всего NBT, а ещё оптимальней бинарный формат. Или базы, опять же.

Но один важный момент: маленький размер - не значит быстрая работа. Банальный пример - архивация данных. Архив занимает меньше места, но на чтение и запись уходит ощутимо больше времени - оно требуется архиватору для преобразования данных
 
Последнее редактирование:
NBT бинарный и архивированный как раз, максимальная экономия места.
 
Для быстрой работы помешаешь все необходимое в оперативную память, а не читаешь каждый раз с диска или базы.

А само чтение выносишь в асинхрон, если оно происходит во время работы, а не при запуске.

По поводу формата файлов - тут каждый делает так, как ему удобней. Есть проблемы со скоростью чтения и огромных YAML, и огромных JSON, и огромных NBT, потому что везде древовидная структура.
В этом плане эффективнее будет работать с базой.

Хотя, как я понимаю, у тебя объем данные не гигантский, поэтому и разницы практически нет.

В плане веса оптимальней всего NBT, а ещё оптимальней бинарный формат. Или базы, опять же.

Но один важный момент: маленький размер - не значит быстрая работа. Банальный пример - архивация данных. Архив занимает меньше места, но на чтение и запись уходит ощутимо больше времени - оно требуется архиватору для преобразования данных

Хочу написать плагин на киты в открытый доступ.

Сохранять нужно: Cooldown на киты.

1. При включении плагина загружать из базы данных все данные в HashMap, подойдет?
2. В конфиге будет выбор SQLite или MySQL.

Можно какую-то статейку для работы с SQLite? Я слышал, что он медленный и нагружает систему, без должной "оптимизации" его.
 
Последнее редактирование:
Хочу написать плагин на киты в открытый доступ.

Сохранять нужно: Cooldown на киты.

1. При включении плагина загружать из базы данных все данные в HashMap, подойдет?
2. В конфиге будет выбор SQLite или MySQL.

Можно какую-то статейку для работы с SQLite? Я слышал, что он медленный и нагружает систему, без должной "оптимизации" его.
По поводу SQLite ничего сказать не могу, гугл расскажет лучше меня.

По поводу остального все в порядке
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх