[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: SQLite
Страницы: 1, 2, 3
Tumour
Всем привет! С наступающим!

Такой вопрос есть ли смысл использовать в вэб приложении SQLite?

Допустим для каких нибудь небольших целей, чтобы лишний раз не обращаться к MySQL.

Есть целый класс в php для этого, много раз читал, что в вэб приложениях, такую маленькую бд использовать немного не прикольно.

Да, допустим проект в перспективе расширятся.

Речь идет о параллельном использовании с MySQL.

Или забить на все и MySQL и .

_____________
Путешествуй с BookRestEasy.com
Миша
Тюнинг SQLite для PHP

_____________
Принимаю заказы, писать в ЛС
Tumour
Медведь
Это я все читал, ты меня чуть чуть не понял.

_____________
Путешествуй с BookRestEasy.com
Tumour
В любом случае для работы с небольшим кол-вом данных sqlite работает быстрее чем остальные, но проект растет и данных становится больше и естественно sqlite не вывезет всего.

Мой вопрос состоит в том, чтобы для небольших вариаций данными использовать sqlite, чтобы быстрее было. И паралельно использовать MySQL для чего - то большого.

_____________
Путешествуй с BookRestEasy.com
Миша
Нужно тестировать на чём-то конкретном, проверив оба варианта на сервере.

_____________
Принимаю заказы, писать в ЛС
FatCat
Цитата (Tumour @ 20.12.2016 - 22:32)
для небольших вариаций данными использовать sqlite, чтобы быстрее было. И паралельно использовать MySQL для чего - то большого

Это как "гибридные" автомобили? Для старта и коротких проездов на малой скорости электромоторы, для "маршевого" движения двигатель внутреннего сгорания?
В вопросах выбора автомобиля я опасаюсь гибридов: слишком сложно и накладно и в обслуживании, и в ремонте; более сложная конструкция чаще ломается. Пользуюсь обычным автомобилем.

_____________
Бесплатному сыру в дырки не заглядывают...
ИНСИ
Цитата
для работы с небольшим кол-вом данных sqlite работает быстрее чем остальные

Отталкивайся от задач перед приложением и функционалом. Если планируешь расширять возможности базы данных, тогда сразу делай на том, что позволит тебе это сделать. Миграция чаще всего проходит сложно и с последствиями.

В любом случае, для баз данных 30мб (в среднем 3 миллиона записей), не используя индексы = занимается примерно секунду. Конечно можно увеличить до 50мб, но это надо уже с железом играть
inpost
Tumour
MySQL и не парься. А если кэш нужен, то memcache или memcached. Не смотря на это даже на уровне MySQL есть таблицы MEMORY.
А в целом, правильная настройка MySQL даст выше прирост, чем перейти с дефолтной MySQL на дефолтную SQLlite.

К тому же MySQL для маленьких таблиц просто ЛЕТАЕТ!

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
ИНСИ
Цитата
А в целом, правильная настройка MySQL даст выше прирост, чем перейти с дефолтной MySQL на дефолтную SQLlite

Противоречивая мысль, можешь подробнее описать? Может действительно, я что-то недопонимаю?
inpost
ИНСИ
Конечно можно говорить про использование индексов, но это уже не настройка MySQL, а таблиц. А вот перечень параметров влияющих на производительность mysql: http://www.mysqlcalculator.com/
Банальный пример - это возможность хранить данные в MEMORY, обычный кэш, если выделенной памяти не хватает, то из памяти этот самый кэш очищается. Мне самому не хватает хорошей книги по грамотной настройке MySQL, но я с уверенностью могу сказать, что это работает, так как стоило только начать работать с грамотным админом, так производительность сервера тут же поднялась в гору на порядок, а всего-то настроил MySQL и nginx грамотно.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
ИНСИ
inpost спасибо за ответ, но видимо у нас разное мнение ))))

Сравнивать SqlLite и Mysql в корне нельзя и я уверен, Mysql проиграет SqlLite в чтении, записи в любом случае, так как sqlLite не использует архитектуру клиент-сервер и не запускает отдельный процесс в системе, что позволяет уменьшить время отклика всех действий
inpost
ИНСИ
Если у тебя БД в sqlite на 60 гигов, он где эту таблицу будет хранить? Без спроса сожрёт 60 гигов оперативки, так как это место хранилища для данных более эффективное? Или хранить будет на жестком диске в файлах и поиск осуществлять оттуда?


_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
ИНСИ
Цитата
Если у тебя БД в sqlite на 60 гигов, он где эту таблицу будет хранить?

По умолчанию в одном файле

Цитата
Без спроса сожрёт 60 гигов оперативки, так как это место хранилища для данных более эффективное?

Не обязательно хранить в памяти, чтение/запись будет проходить итак быстро (в случае записи, я говорю об одном подключении. В множественном подключении и больших данных надо будет настраивать)
ИНСИ
Хочу добавить, все мы понимаем SqlLite проигрывает Mysql в возможностях и конечно же выбор будет на последнем. Сейчас говорим о простом приложении и поведении баз данных при чтении и записи только, не о возможностях и функциональности
inpost
ИНСИ
Вот именно в одном файле на 60 гигов, где его чтение просто высокую нагрузку создаст, по сравнению с распределением данных в памяти, так как из памяти скорость чтения выше. У нас будет некий файл, содержание которого будет каждый раз считываться заново, а значит будет попытка читать файл в 60 гигов.
Но, MySQL по умолчанию тоже эти 60 гигов будет хранить в файлах. А вот если перенастроить увеличив объемы данных в памяти (я как раз выше именно это и написал), то результат станет лучше, чем дефолтная настройка sqlite и mysql вместе взятые.
И очень жаль, что нет нигде свежих сравнений между mysql 5.7 и sqlite последней (не слежу за версиями) для разных объемов данных.

Так что может быть sqlite дефолтный и даст производительность для маленькой таблицы выше, чем мускул дефолтный, тут спорить не буду, я просто ТС пытаюсь объяснить, что его желание экономить на спичках не даст существенной выгоды для сайта с учетом затрат миграции между mysql в sqlite, как даст хорошая такая настройка этого самого мускула (там конфиги поправить пару минут дела, лишь бы знать что править, но разбираться в настройках всегда будет огромным плюсом), ну или sqlite, правда гуглится очень тяжело настройка sqlite. Хотел загуглить и в этой теме поумничать немного laugh.gif Понял, что за 5 минут не выйдет разобраться в нюансах laugh.gif

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.