Я делаю веб-приложение, и я использую MySQL в качестве моего БД. Моя БД будет больше в конце концов, например, более 100 миллионов строк в некоторых таблицах. Я просто хотел подтвердить одну вещь о таких больших таблицах.Производительность MySQL
Opt 1. Предположим, что таблицы имеют первичные ключи и делают мой запрос с использованием Первичного ключа, но мне нужно будет выполнить запросы mysql, скажем, 100 запросов для каждого входа пользователя.
USERID KEYS
1 {1,2,3,4}
я получите КЛЮЧИ для пользователя, а затем сделать первичный ключ запросов, чтобы получить каждое значение
PRI.KEY Value
1 google
2 yahoo
3 aol
4 windows
Если пользователь входит в систему, мне нужно, чтобы получить его BOOKMARKED сайты, например. Итак, я сделаю два запроса Выберите KEYS из TB_KEYS, где USERID = 1; Затем я разберу KEYS и для каждого ключа, Выберите значение из TB_VALUES, где PRI.KEY = (KEY - i получен, синтаксический анализ из первого запроса);
Opt 2. Я не делаю запросов с использованием Первичных ключей, но мне нужно будет выполнить несколько запросов для входа пользователя.
OPT_TABLE_2
USERID KEY Value
1 1 google
1 2 yahoo
1 3 aol
1 4 windows
Выберите значение из OPT_TABLE_2, где USERID = 1;
Какой вариант был бы лучше ..?
Ваш вопрос не имеет смысла.Можете ли вы включить некоторые фактические SQL-запросы того типа, который вы пытаетесь получить? – Cylindric
Если пользователь входит в систему, мне нужно, например, получить его закладки. Итак, я сделаю два запроса в первом подходе: Выберите KEYS из TB_KEYS, где USERID = 1; Затем я разбираю КЛЮЧИ и для каждого ключа, Выберите значение из TB_VALUES, где PRI.KEY = (KEY - i получен, синтаксический анализ из первого запроса); –
Редактировать свой вопрос, чтобы уточнить его, а не просто публиковать обновления как комментарии :) Таким образом, вы получаете хорошее форматирование, и будущим читателям не нужно сканировать все комментарии для подсказок. Не уверен, почему вы не можете просто использовать JOINs. – Cylindric