Всегда только пользовался при програмировании mysql , но недавно наткнулся на SQLite и стало интересно есть ли какие нить различия плюсы и минусы других баз данных. и вообще в какой БД щас лучше хранить ?
Вы уверены в том, что советуете? Насколько я знаю, SQLite предназначена для абсолютно другого применения. Она распространяется в виде библиотеки для встраивания в свою программу и чаще всего используется именно качестве встраиваемой однопользовательской базы - в том же файрфоксе, например, почти все данные хранятся в ней. Соответственно, для сайта ее использовать можно, но только если это самопис и то, если она поддерживает (в чем я не уверен) многопользовательский доступ, а не лочит намертво файл исполняемым процессом.
Tiulkin, дак, я и говорю - для сайта визитки никаких проблем. Откуда там много пользователей? Если ещё и правильный кеш настроен, то страница один раз генерируется, потом уже база даже не трогается.
По поводу блокировки базы при многопоточной записи. Нет проблем. Можно поставить таймаут на запись, и потоки просто будут ждать своей очереди. И никаких блокировок. Т.е. в теории, можно даже на больших проектах использовать. Но лучше не надо)
Облачный хостинг из TOP-3 - от 1 Gb ОЗУ, от 25 GB SSD.
kvins, Храните в той базе данных которая лучше всего соответсвует вашим задачам, для всех простых сайтов, а также их обьема используйте MySQL, SQLite это встроенная база данных в обычный сервер с Апачи предоставляется, ее можно юзать для разработки, если нет желания ставить полноценную, а когда будете развертывать на сервере просто чуть-чуть изменить на mysql и все. Ems Вы хоть знаете в каких проектах используете nosqL базы данных?))) Мало ли, что популярно, зачем использовать, то что популярно, вот например популярно ездить на коне, так вы выкинете машину и поедете на коне 500км?))) БД подбирают по требования, а не популярности
Я смотрю тут все так рассуждают как будто пишут что-то типа Янндекса или Яху по нагрузкам
Я смотрю тут все так рассуждают как будто пишут что-то типа Янндекса или Яху по нагрузкам
Если бы так рассуждали, то предложили бы использовать ни MySQL, ни SQLite, а что-нибудь более приспособленное к горизонтальному масштабированию. А так да, пишут :-).
SQLite это встроенная база данных в обычный сервер с Апачи предоставляется
Не совсем так. С апачем она не поставляется. SQLite, по-хорошему, это библиотека, написанная на С, с которой программа компонуется и движок базы становится составной частью программы.
Теперь насчёт использования.
SQLite обычно быстрее mysql на чтении, но на записи или изменении данных она скоростью не блещет, поэтому если у вас в проекте данные обновляет один(или несколько человек) или данные обновляются не постоянно, то SQLite вам подойдёт. Иначе же можно использовать MySQL(хотя честно говоря, не всегда лучше,т.к. в 90% проектов NOSql базы(та же MongoDB) покрывают все требования к хранилищу данных)
kvins, SQLite работает как библиотека к Вашему web-приложению (сайты и т.д.), а вот MySQL - это отдельное приложение СуБД. В случае MySQL - программа-сервер слушает определенный порт и отдает информацию. Эта программа поддерживает базы в состоянии "вопрос-ответ", а SQLite работает по принципу файлового движка. Т.е. есть база в файле, которая вызывается при определенном запросе. И SQLite отдает ее, не раздумывая. А MySQL проверяет все значения и пр. Основное отличие - SQLite не все поддерживает, что разрешено SQL. Поэтому ее используют только для мало нагруженных или легких проектов.
Иногда хобби приносит доход. А это уже совмещение приятного с полезным (с)it.donor
Вставлю еще свои 5 копеек про SQLite, раз уж про нее начали подробно писать. Т.к. SQLIte доступна как в исходниках на голом C, так и в уже скомпилированных библиотеках, ее очень удобно использовать в приложениях, которым нужна простейшая работа с базой, но при этом есть желание оградить пользователя от необходимости устанавливать дополнительно движок БД. Например, в питоне просто пишете 'import sqlite3' и вперед. Также без проблем прикручивал ее к программе для андроида, где другую базу использовать вообще проблематично.