Другие языки программирования и технологии
Вопрос по БД (интернет магазин)
Такой вопрос, я делаю интернет магазин, в таблице бд (mysql) будет около 10000 товаров, справиться ли бд с такой нагрузкой. Долго ли будет грузиться (в таблице 13 полей)
Конечно загрузка такого кол-ва товаров будет помедленнее чем 1000 товаров. Но для баз данных это семечки.
Они ориентированы на обработку миллионов и сотен миллиардов строк.. .
Для этого у вас должны быть индексы
- всех колонок с Primary Key
- всех колонок где вы делаете отбор по условию WHERE
- индексы внешних ключей
- может быть что-то ещё, время покажет.
И напоследок.. . суть SQL не в том чтобы вы им руководили. SQL cервер сам выбирает алгоритм по которому производит отбор данных. Это значит что вы должны кидать ему предельно тупые простые запросы. Не надо кидать запрос типа
select * from table1 where id in (1,2,3,4,5,6,67,43,435,453,43,58,54,543,543,5,435,33,44,43).
Киньте
select * from table1 where id in (select id from table2 where ...)
и он вас лучше поймет.
При работе с SQL может показаться что сложный запрос работает быстрее простого. Потому что выполняется не запрос а план запроса. План запроса сервер вычисляет приблизительно на основании анализа размера таблиц и ранее полученных результатов. Может быть ваш запрос вовсе не будет выполняться и возьмется кэшированный результат. В этом основное отличие SQL от плоских таблиц типа Excel, Access и DBF.
старайтесь извлекать все данные за 1 запрос, делайте JOIN и фильтруйте через WHERE. Не допускайте применение SELECT оператора в цикле. Изучите как использовать параметрические запросы.
Они ориентированы на обработку миллионов и сотен миллиардов строк.. .
Для этого у вас должны быть индексы
- всех колонок с Primary Key
- всех колонок где вы делаете отбор по условию WHERE
- индексы внешних ключей
- может быть что-то ещё, время покажет.
И напоследок.. . суть SQL не в том чтобы вы им руководили. SQL cервер сам выбирает алгоритм по которому производит отбор данных. Это значит что вы должны кидать ему предельно тупые простые запросы. Не надо кидать запрос типа
select * from table1 where id in (1,2,3,4,5,6,67,43,435,453,43,58,54,543,543,5,435,33,44,43).
Киньте
select * from table1 where id in (select id from table2 where ...)
и он вас лучше поймет.
При работе с SQL может показаться что сложный запрос работает быстрее простого. Потому что выполняется не запрос а план запроса. План запроса сервер вычисляет приблизительно на основании анализа размера таблиц и ранее полученных результатов. Может быть ваш запрос вовсе не будет выполняться и возьмется кэшированный результат. В этом основное отличие SQL от плоских таблиц типа Excel, Access и DBF.
старайтесь извлекать все данные за 1 запрос, делайте JOIN и фильтруйте через WHERE. Не допускайте применение SELECT оператора в цикле. Изучите как использовать параметрические запросы.
Кенешбек Акматов
Спасибо, огромное, от души)
Все будет зависить от того, что грузить, как грузить и какова скорость соединения.
если делать SELECT только по видимым товарам - нет, не долго.
да и вообще, 10000 - копейки + похоже они все у тебя в одной таблице - вообще ерунда.
если делать SELECT только по видимым товарам - нет, не долго.
да и вообще, 10000 - копейки + похоже они все у тебя в одной таблице - вообще ерунда.
Кенешбек Акматов
Спасибо, реально утешил))
Если не делать индексы - то будет тормозить. А так хоть 10 млн. товаров.
Кенешбек Акматов
Подскажите, какие индексы?
оптимизируй базу через ssh
и хостинг не бери используй выделенный или виртуальный сервер
и вообще зачем писать, вот движок нормальный http://simplacms.ru/
только он платный, но стоит дешевле потраченных сил на велосипед
база из 1 500 000 товаров должна летать
чем выше посещаемость тем больше все будет тормозить
и хостинг не бери используй выделенный или виртуальный сервер
и вообще зачем писать, вот движок нормальный http://simplacms.ru/
только он платный, но стоит дешевле потраченных сил на велосипед
база из 1 500 000 товаров должна летать
чем выше посещаемость тем больше все будет тормозить
Кенешбек Акматов
Нет. Движок не нужен...
1. Нужна полная синхронизация с 1С (уже сделал)
2. Нужен МАКСИМАЛЬНО простой сайт (чтобы даже бабушка поняла, что делать)
1. Нужна полная синхронизация с 1С (уже сделал)
2. Нужен МАКСИМАЛЬНО простой сайт (чтобы даже бабушка поняла, что делать)
Похожие вопросы
- Создаю интернет-магазин. Помогите разобраться с технической стороной вопроса.
- Вопрос по БД на access
- Интернет-магазин на конструкторе сайтов онлайн - стоит ли делать?
- Поделитесь способами продвижения интернет-магазина?
- Помощь по созданию интернет магазина
- PHP как реализовать "похожие предметы" в интернет магазине
- Разработка интернет магазина. Нужна разработка интернет магазина. Посоветуйте кого-нибудь пожалуйста.
- Где я могу найти хорошие бесплатные скрипты социальных сетей, интернет магазинов, Форумов. . ?
- На каком хостинге лучше создавать интернет магазин?
- Подскажите какую выбрать админку для следующего функционала сайта. Информационный портал с интернет магазином: