Abrwalg
8.05.2016 - 10:21
Здравствуйте уважаемые!
Создал БД для сайта по структуре показанной ниже….. Количество строк – 47, столбцов – 758. Наполненность таблицы 10-20%. База статическая, меняться не будет….
Помогите пожалуйста советом…
1. Как сервер отнесётся к такому тяжкому труду как вынимание данных всего верхнего ряда и поиск в нём нужного имени?
Сильно ли много это будет занимать времени?
Или лучшим вариантом было бы множество таблиц с меньшим количеством данных?
2. Все данные в таблице в кириллице, они же будут и переменными в PHP…. Будет ли такой вариант работать и где и какие кодировки для этого использовать? Пока делаю на локалке под Денвером….
Подскажите пожалуйста…. Тяжковасто мне, это мой первый подобный проект...
Спасибо!
redreem
8.05.2016 - 10:30
это трэш. почитайте про нормализацию.
Abrwalg
8.05.2016 - 11:25
Спасибо, почитал....
Можно мою таблицу разбить на 4.... Избыточность при этом практически не изменится, а проблема с именами таблиц появится.... Т.е. использование данных в ячейке на кириллице в качестве имени следующей таблицы не получится....
А чтобы совсем избавиться от избыточности, придётся делать около 2-х тысяч таблиц, что не есть приятно.... Да и путаницы больше....
Может подскажете оптимальный вариант?
redreem
8.05.2016 - 11:34
опиши исходную задачу.
Цитата (Abrwalg @ 8.05.2016 - 10:25) |
Спасибо, почитал.... |
задача прочитать и понять
_____________
Стимулятор ~yoomoney - 41001303250491
Нельзя просто так взять и спроектировать нормальную БД не имея даже базовых знаний.
Цитата (Abrwalg @ 8.05.2016 - 07:25) |
А чтобы совсем избавиться от избыточности, придётся делать около 2-х тысяч таблиц |
Напомнило мне один из проектов, где на каждого пользователя создавалась отдельная база данных, а пользователей было ни много ни мало, а более 200 тысяч...
_____________
Mysql, Postgresql, Redis, Memcached, Unit Testing, CI, Kohana, Yii, Phalcon, Zend Framework, Joomla, Open Cart, Ymaps, VK Api
Abrwalg
9.05.2016 - 13:21
Спасибо всем огромное за внимание!
Задача - база данных городов России... При регистрации пользователь через выпадающие списки по иерархии указывает своё местоположение.... Список регионов есть, уже в XL упорядочен по принципу показанному в таблице... Кстати, если кому нужно, могу поделиться.....
Думал про вариант с индексацией, дабы сделать поля таблицы тип - INT (уменьшить объём занимаемой памяти), но тогда при необходимости что-либо добавить придётся добавлять только в конец списка, иначе вся индексация сдвинется....
Потому остановился на таком варианте....
Можно конечно разбить на множество таблиц, хоть это и тяжко, если это увеличит быстродействие....
Abrwalg
9.05.2016 - 13:30
Цитата (Abrwalg @ 8.05.2016 - 10:25) |
Спасибо, почитал.... |
задача прочитать и понять
Думаю понял... А ещё есть денормалиация - плата за быстродействие...
Про работу сервера знаю не много, потому и спрашиваю, на сколько мой вариант БД будет для него тяжёлым?
Я ценю чужое время и очень благодарен за внимание! Не прошу разжёвывать.... Просто ткните пожалуйста носом, в правильный вариант....
Abrwalg
9.05.2016 - 13:44
Цитата (T1grOK @ 9.05.2016 - 11:06) |
Цитата (Abrwalg @ 8.05.2016 - 07:25) | А чтобы совсем избавиться от избыточности, придётся делать около 2-х тысяч таблиц |
Напомнило мне один из проектов, где на каждого пользователя создавалась отдельная база данных, а пользователей было ни много ни мало, а более 200 тысяч...
|
Да, пришлось попотеть упорядочивая всё в систему.... Благо XL даёт много возможностей облегчающих жизнь.... Но перегнать это всё потом в таблицы БД, по моему это ещё большая проблема..... Бы было хорошо если я ошибаюсь и всё гораздо проще....
Цитата (Abrwalg @ 9.05.2016 - 12:21) |
Список регионов есть, уже в XL |
я так понимаю речь о XML (скинте в личку пожалуйста файл)
структура XML - это дерево, нормальная реляционная БД не предназначена для хранения деревьев
___
ах оно у вас в обычном экселевском файле?
_____________
Стимулятор ~yoomoney - 41001303250491
Abrwalg
9.05.2016 - 14:51
Цитата (Valick @ 9.05.2016 - 13:46) |
Цитата (Abrwalg @ 9.05.2016 - 12:21) | Список регионов есть, уже в XL |
я так понимаю речь о XML (скинте в личку пожалуйста файл) структура XML - это дерево, нормальная реляционная БД не предназначена для хранения деревьев ___ ах оно у вас в обычном экселевском файле?
|
Да, XML....
Вот файл.... В таблицу пока что-то не получается перегнать.... Бьюсь....
Abrwalg
9.05.2016 - 14:52
Цитата (Santehnick @ 9.05.2016 - 14:38) |
Цитата (Abrwalg @ 9.05.2016 - 09:21) | Задача - база данных городов России... |
А вы уже готовые решения смотрели? Полно же их.
|
Спасибо, попробую поискать... Но тут ещё и задача понять....
Razzwan
9.05.2016 - 15:05
Цитата (Abrwalg @ 9.05.2016 - 13:44) |
Но перегнать это всё потом в таблицы БД, по моему это ещё большая проблема..... Бы было хорошо если я ошибаюсь и всё гораздо проще.... |
Все действительно очень просто. И все проблемы можно решить, если заниматься этим.
Напиши, какая структура данных у тебя получилась после твоего понимания нормализации. От этого будет проще оттолкнуться и дать тебе полезные советы по улучшению твоей структуры.
Заодно, оценим твое понимание нормализации. Если ты действительно понял, что такое нормализация и зачем она нужна, то это добрых 90% успеха.
_____________
Youtube канал WebDeveloper->Run()Сайт для душиGitter
Abrwalg
9.05.2016 - 15:29
Как я понял, нормализация, это устранение повторяющихся данных..... В моём случае, повторяющиеся данные - это пустые ячейки.... Сама база в приложенном файле чуть выше....
Может я что-то и не так понял, или не в ту сторону искал.... Подскажите пожалуйста, куда рыть?
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.