|
0 / 0 / 0
Регистрация: 02.08.2014
Сообщений: 5
|
|
Структура сайта. Как лучше сделать?02.08.2014, 21:15. Показов 940. Ответов 3
Метки нет (Все метки)
Всем Привет!
Ситуация в следующем: Имеем: Фирма, Продавец, Клиент, Товар. Мои предположения по количеству пользователей: Количество фирм - 250-300 штук. В каждой фирме по 2-4 продавцов. Всего 1 000 Продавцов У каждого продавца по 500-700 Клиентов. Всего Клиентов 600 000 штук Каждый клиент закупает товар в среднем по 3 шт. Всего Товаров 2 000 000 штук. Товар рассчитывается скриптом на основании ввода необходимых данных Продавцом. Скрипт на мой взгляд относительно «тяжелый». Время расчета одного Товара примерно 3-4 секунды. Тестировал на локальном сервере Денвер. Оптимизировать скрипт больше не получается Теперь сама структура сайта. Создаю одну базу данных SQL. В ней создаю основные таблицы: фирмы, продавцы, клиенты, товары, всего четыре таблицы. Все товары, всех продавцов, всех фирм лежат в одной таблице. Это самая большая таблица из всех существующих на моем сайте. В ней 2 000 000 товаров. Выборка товаров происходит по ID: ID Фирмы ID Продавца с внешним ключом ID Фирмы. ID Клиента с внешним ключом ID Продавца. ID Товара с внешними ключами ID Клиента. Т.е. таблица Фирмы является родительской по отношению к таблице Продавцов, таблица Продавцов родитель для таблицы Клиентов, таблица Клиентов родитель для таблицы Товары. В итоге: чтобы Продавцу найти в базе данных Клиента и его товары, скрипту необходимо переворошить 2 000 000 товаров сравнивая ID Товара с внешним ключом Продавца. А представить если это будут делать все одновременно. Мне кажется хостеры будут очень не довольны. Вариант второй. Создаю под каждую фирму свою отдельную базу данных SQL, В ней три таблицы: "продавцы", "клиенты", "товары". Структура аналогичная. При этом количество позиций в самой большой таблице "Товары" ощутимо уменьшается. Примерно до 2000 штук на каждого Продавца, всего на 2-4 Продавцов 4000-8000 единиц товара. Скрипту гораздо веселее искать Товары в такой таблице. Но возникает необходимость в огромном количестве баз данных 250-300 штук. У многих хостеров количество баз данных ограничено 5-20 шт. Есть конечно же хостеры без ограничений количества баз данных, но у них есть ограничения по нагрузке, которая измеряется в каких-то непонятных единицах СР. Предположить какая у меня будет максимальная нагрузка я пока не могу. В итоге я на распутье двух дорог и по которой из них двигаться я не знаю. В вопросе сайтостроения я пока еще новичок. Пытаюсь создать свой первый сайт. Прошу не судить строго. Заранее всем благодарен.
0
|
|
| 02.08.2014, 21:15 | |
|
Ответы с готовыми решениями:
3
Как лучше обновлять контент сайта? Как лучше всего хранить контент сайта? Как лучше сделать с городами |
|
55 / 55 / 25
Регистрация: 03.08.2014
Сообщений: 258
|
|
| 04.08.2014, 06:09 | |
|
Никто два миллиона потрошить не будет если к таблицам создать еще и индексы, это раз
Во вторых - создайте таки базу с двумя миллионами, с индексами и протестируйте, сколько запросов в секунду вы сможете вытянуть, и сколько вам надо. А то так можно неделю оптимизировать а потом выяснить что реально хватило бы и в 100 раз меньше
1
|
|
|
Почетный модератор
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
|
||
| 04.08.2014, 10:53 | ||
|
Ну и по поводу самой оптимизации - без дампа структуры БД и кода запросов подсказать что-то достаточно сложно.
1
|
||
|
0 / 0 / 0
Регистрация: 02.08.2014
Сообщений: 5
|
|
| 12.08.2014, 00:22 [ТС] | |
|
Спасибо! Я примерно себе так и представлял. Буду делать по первому варианту. С хостингом решать проблемы буду по мере их поступления. О ходе своих "побед и "неудач", если кому интересно, буду периодически сообщать.
0
|
|
| 12.08.2014, 00:22 | |
|
Помогаю со студенческими работами здесь
4
Посоветуйте как лучше сделать
Как лучше сделать выборку из двух таблиц? Как лучше сделать подсчет количества записей в таблице? Правильная структура сайта. Как сделать? Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога
Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
|
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога
Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
|
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога
Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
|
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
|
|
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога
В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
|
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога
Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
|
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
|