PDA

Просмотр полной версии : [Вопрос] Вопросы о SQLite



Gressie
15.04.2017, 17:56
Приветствую всех. Хотелось бы узнать подробно об SQLite в SA-MP.

1) Удобно ли использовать SQLite в качестве основы вместо MySQL, Mxini и др?
2) Можно ли подключить UCP к SQLite?
3) Безопасна ли SQLite в плане безопасности?

123
15.04.2017, 18:29
Нет, не удобно. Стоит использовать только MySQL, иначе получите на голову множество лишних проблем.

SooBad
15.04.2017, 18:56
Приветствую всех. Хотелось бы узнать подробно об SQLite в SA-MP.

1) Удобно ли использовать SQLite в качестве основы вместо MySQL, Mxini и др?
2) Можно ли подключить UCP к SQLite?
3) Безопасна ли SQLite в плане безопасности?

1. Глупо сравнивать SQLite с MySQL, как минимум потому, что SQLite - это подгружаемая библиотека, с крайне зауженным функционалом. В плане производительности SQLite также проигрывает, в том числе MxINI.
2. Чисто теоретически - можно, но, как по мне, крайне неэффективно. Ответ кроется в предложениях выше.
3. Масло - масляное, молоко - молочное (безопасность - безопасная). Если ближе к сути, то равнозначна другим БД, где либо следует использовать соль, либо иной шифратор.

Web
15.04.2017, 19:00
1. Глупо сравнивать SQLite с MySQL, как минимум потому, что SQLite - это подгружаемая библиотека, с крайне зауженным функционалом. В плане производительности SQLite также проигрывает, в том числе MxINI.
2. Чисто теоретически - можно, но, как по мне, крайне неэффективно. Ответ кроется в предложениях выше.
3. Масло - масляное, молоко - молочное (безопасность - безопасная). Если ближе к сути, то равнозначна другим БД, где либо следует использовать соль, либо иной шифратор.

Ну и экранировать запросы.

Gressie
16.04.2017, 08:43
А имеются в сети тесты на то что, SQLite проигрывает в производительности?

Seregamil
16.04.2017, 09:18
1. Глупо сравнивать SQLite с MySQL, как минимум потому, что SQLite - это подгружаемая библиотека, с крайне зауженным функционалом. В плане производительности SQLite также проигрывает, в том числе MxINI.
2. Чисто теоретически - можно, но, как по мне, крайне неэффективно. Ответ кроется в предложениях выше.
3. Масло - масляное, молоко - молочное (безопасность - безопасная). Если ближе к сути, то равнозначна другим БД, где либо следует использовать соль, либо иной шифратор.

1) Вы сравниваете производительность mxINI, работающего с файлами, и SQLite, работающего с базами данных. Это, на мой взгляд, бред. Могу и ошибаться.
2) SQLite можно подключить к UCP в том случае, если сервер и сайт лежат на одной машинке.

SooBad
16.04.2017, 15:24
1) Вы сравниваете производительность mxINI, работающего с файлами, и SQLite, работающего с базами данных. Это, на мой взгляд, бред. Могу и ошибаться.
2) SQLite можно подключить к UCP в том случае, если сервер и сайт лежат на одной машинке.

1. Вопрос автора был конкретен. Если он хотел услышать информацию о скорости работы различных баз - он его получил. SQLite даже с MySQL сравнивать глупо, и об этом я писал в верхнем посте.
2. По-сути, это очевидно. Могу ошибаться, но в данном вопросе плагин и библиотека равнозначны.

_[Bupyc]_
17.04.2017, 07:44
А имеются в сети тесты на то что, SQLite проигрывает в производительности?


[17:18:15] [mxINI]Создание 81 ms.(100 iterations)
[17:18:15] [mxINI]Обновление 116 ms.(100 iterations)
[17:18:15] [file]Удаление 16 ms.(100 iterations)

[17:18:15] [SQLite]Создание 19 ms.(100 iterations)
[17:18:15] [SQLite]Обновление 18 ms.(100 iterations)
[17:18:15] [SQLite]Удаление 14 ms.(100 iterations)

[17:18:15] [MySQL]Создание 14 ms.(100 iterations)
[17:18:16] [MySQL]Обновление 15 ms.(100 iterations)
[17:18:18] [MySQL]Удаление 13 ms.(100 iterations)

[17:18:19] [ORM]Создание 13 ms.(100 iterations)
[17:18:20] [ORM]Обновление 25 ms.(100 iterations)
[17:18:21] [ORM]Удаление 25 ms.(100 iterations)

C чего вы взяли что SQLite уступает mxINI?

Nexius_Tailer
17.04.2017, 08:27
1. Глупо сравнивать SQLite с MySQL, как минимум потому, что SQLite - это подгружаемая библиотека, с крайне зауженным функционалом. В плане производительности SQLite также проигрывает, в том числе MxINI.

PRAGMA journal_mode = OFF;
PRAGMA synchronous = OFF;

Где-то давно также была статья на эту тему. Sqlite можно настроить (и отключить некоторые слишком медленные операции)

Хотя, судя по тестам выше, даже и этого делать необязательно

123
17.04.2017, 10:17
_;84045']
[17:18:15] [mxINI]Создание 81 ms.(100 iterations)
[17:18:15] [mxINI]Обновление 116 ms.(100 iterations)
[17:18:15] [file]Удаление 16 ms.(100 iterations)

[17:18:15] [SQLite]Создание 19 ms.(100 iterations)
[17:18:15] [SQLite]Обновление 18 ms.(100 iterations)
[17:18:15] [SQLite]Удаление 14 ms.(100 iterations)

[17:18:15] [MySQL]Создание 14 ms.(100 iterations)
[17:18:16] [MySQL]Обновление 15 ms.(100 iterations)
[17:18:18] [MySQL]Удаление 13 ms.(100 iterations)

[17:18:19] [ORM]Создание 13 ms.(100 iterations)
[17:18:20] [ORM]Обновление 25 ms.(100 iterations)
[17:18:21] [ORM]Удаление 25 ms.(100 iterations)

C чего вы взяли что SQLite уступает mxINI?

Все эти тесты полная ерунда, пока нет кода теста, а также нет информации о загруженности баз или сколько файлов создано на момент тестов в случае mxINI (поскольку это играет очень важную роль на результаты).

SliM
17.04.2017, 11:14
тесты есть, но версии старые
https://sqlite.org/speed.html

_[Bupyc]_
17.04.2017, 12:43
Где-то давно также была статья на эту тему. Sqlite можно настроить (и отключить некоторые слишком медленные операции)

Хотя, судя по тестам выше, даже и этого делать необязательно
я использовал

PRAGMA journal_mode = OFF;
PRAGMA synchronous = OFF;
забыл указать, тесты я делал в 2015, код тестов есть на psu

SooBad
17.04.2017, 20:13
Разница в считанные млс - это не разница. Да и итераций всего 100. Кстати, в некоторых моментах файловик всё же обгоняет бд.
А вот функционал у sqlite действительно заужен, по сравнению с тем же мускулом. Кстати, пример тому тот же UCP, о котором упомянул юзер, под ником Seregamil.