Вернуться   SEO форум - оптимизация и продвижение сайтов > Web разработки > Разработка сайтов > Создание сайтов другого типа

Важная информация
Создание сайтов другого типа - Бесплатные движки (uCoz). Скрипты. Гостевые книги, чаты, доски объявлений, каталоги статей и ссылок и т.д.

Ответ
 
Опции темы Оценить тему Опции просмотра
Старый 09.02.2013, 10:25   #1
 
Аватар для Cyrax
 
Сообщений: 8
FR (активность): 411

Доп. информация
По умолчанию Автор темы Интеграция готовой БД с CMS

Имеется довольно большая БД MySQL (100 таблиц). Полностью готовая. Необходимо разработать сайт на основе этой БД.
Вопрос такой: целесообразно ли в данной ситуации использовать CMS ?

Дело в том, что хочу заказать разработку сайта одной из компаний. Они говорят, что будут использовать CMS. При этом связь CMS с моей БД будут устанавливать скриптами (или ещё как - не уточнял). В этой компании говорят, что быстрее и дешевле будет использовать CMS, нежели с нуля разрабатывать Систему управления сайтом.

С CMS никогда не работал. Посему не знаю, как к ним "прикручиваются" сторонние базы данных.
Насколько я понимаю, в процессе визуального "конструирования" сайта с помощью CMS последняя автоматически создаёт свои ("внутренние") таблицы необходимой струткуры. В итоге на сервере будут существовать 2 БД:
1. Основная (исходная)
2. Та, что создаётся CMS и является составной частью CMS

Вроде как такого не должно быть. БД должна быть одна. Дублироваться данные не должны.
Действительно ли проще использовать CMS + организовать синхронизацию баз, либо правильнее будет отказаться от CMS ?

Т.е. какой из вариантов является:
а) правильным (корректным с точки зрения принципов проектирования) ?
б) более простым в осуществлении (т.е. более быстрым и более дешёвым) ?


И такой вопрос: каким образом к CMS прикручивается сторонняя база данных ? Как это обычно делают ?
Cyrax вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 12.02.2013, 01:33   #2
 
Аватар для Unick
 
Сообщений: 703
FR (активность): 32,924

Доп. информация
По умолчанию

Хм, какая цмс? В прицепе, это мозгое..
цмс должна работать только со своей базой данных! Доп скрипты - это только непонятная доп нагрузка... Которая ни фига не оптимизированная и выглядит как костыль на костыле...
Цитата:
Сообщение от Cyrax Посмотреть сообщение
Действительно ли проще использовать CMS + организовать синхронизацию баз, либо правильнее будет отказаться от CMS ?
зависит от вашего бюджета и планов на будущее...
Если вам нужен эконом вариант, то можете рискнуть, и заплатить за кусочек фекалий.
Почему именно за такой лакомый кусочек? Потому что цмс - это система управления сайтом, у нее есть стандартный функционал. Расширение функционала грозит работоспособности сайту, серверу и вашим нервам. А учитывая что у вас 100 таблиц, какая тут может быть речь об оптимизации и простоте решения?

Под свою базу данных надо писать свою цмс, но это не одна копеечка, да и еще жирный минус - если что-то придется доделывать, то вы привязаны к разработчикам.

Вот она, палка в двух концах.
Цитата:
Сообщение от Cyrax Посмотреть сообщение
Вроде как такого не должно быть. БД должна быть одна. Дублироваться данные не должны.
вы совершенно правы.
Цитата:
Сообщение от Cyrax Посмотреть сообщение
Т.е. какой из вариантов является:
а) правильным (корректным с точки зрения принципов проектирования) ?
б) более простым в осуществлении (т.е. более быстрым и более дешёвым) ?
а) только разработка своей цмс
б) это как выбирать машину, либо купить дорогую и окупиться на бензине, либо старую пятерку с новыми дисками и спойлерами.
Оффтоп:
Моя убедительность и красноречие в 2 часа ночи хромает, надеюсь мысль донес


andreisoroka.com
Unick вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 12.02.2013, 07:33   #3
 
Аватар для Umka
 
Сообщений: 4,143
FR (активность): 80,659

Доп. информация
По умолчанию

Цитата:
Сообщение от Cyrax Посмотреть сообщение
С CMS никогда не работал. Посему не знаю, как к ним "прикручиваются" сторонние базы данных.
А с торговыми/бухгалтерскими программами работали? Ну представьте, что у вас 1С. И приходит к вам человек и говорит, что надо "прикрутить" некую стороннюю базу (произвольного формата) к ней..
Цитата:
Сообщение от Cyrax Посмотреть сообщение
Действительно ли проще использовать CMS + организовать синхронизацию баз
Ну, например, так работают интернет-магазины. http://www.webasyst.ru/support/help/...tegration.html
Цитата:
Сообщение от Cyrax Посмотреть сообщение
Т.е. какой из вариантов является:
Вообще все зависит от того, что именно у вас на сайте и что в базе и насколько часто это необходимо синхронизировать. И каков объем передаваемых данных.
Цитата:
Сообщение от Cyrax Посмотреть сообщение
И такой вопрос: каким образом к CMS прикручивается сторонняя база данных ? Как это обычно делают ?
Можно и не прикручивать именно базу. Можно и работать в рамках одной базы с разными таблицами. Для примера: форум phpBB запросто может использовать ту же базу, что и Joomla. База одна, префикс таблиц - разный. В настройках форума и CMS указано, какой префикс у их таблиц, а там они сами разбираются.
Umka вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 12.02.2013, 08:14   #4
 
Аватар для Unick
 
Сообщений: 703
FR (активность): 32,924

Доп. информация
По умолчанию

Чет ночью вообще не соображал, умка прав от части, зависит от того что вы имеете и что хотите
В общем скажите что за цмс предлагают и что у вас за таблицы (товары, база фсб)


andreisoroka.com
Unick вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 12.02.2013, 10:10   #5
 
Аватар для Cyrax
 
Сообщений: 8
FR (активность): 411

Доп. информация
По умолчанию Автор темы

Предполагаемые CMS: Joomla, Drupal.

Цитата:
Под свою базу данных надо писать свою цмс, но это не одна копеечка, да и еще жирный минус - если что-то придется доделывать, то вы привязаны к разработчикам.
C разработчиками проблем нет и не будет. Здесь всё схвачено.
Что касается сайта, то он имеет очень широкую направленность. Т.е. содержит в себе (реализует) почти весь функционал, предоставляемый соверменными CMS (рассматриваю Joomla, Drupal). Это и пользователи, и сессии, и рекламные баннеры, и новости, и статьи, и всякие готовые средства оптимизации, администрирования и настройки сайта. Посему и встаёт вопрос выбора в качестве основы некоторой универсальной CMS. Если CMS не использовать, то реализация всего этого функционала будет слишком затратной и с точки зрения времени, и с позиции материальных затрат (даже при использовании каких-либо фреймворков). Ведь современные CMS разрабатывались не один год и не одним разработчиком. И самостоятельная реализация функционала сайта равносильна разработке собственной универсальной CMS (пусть и не в полном объёме, но как минимум, на 50%).

Цитата:
А учитывая что у вас 100 таблиц, какая тут может быть речь об оптимизации и простоте решения?
Дело в том, что данные, содержащиеся в моей БД (та, что содержит 100 таблиц), на сайте только отображаются (плюс некоторые фрагменты результрующего текста оформляются в виде ссылок и имеют всплывающие подсказки). Joomla и Drupal ведь позволяют разрабатывать собственные модули. Вот через такие модули можно обращаться к своей базе данных и формировать результирующий HTML-фрагмент для отображения на сайте.
Т.е. собственные скрипты, фактически, будут извлекать из моей БД информацию и приводить её к виду, в котором она должна отображаться на сайте. И всё. Ввод данных в мою БД через сайт осуществляться не будет. Благодяря чему, интерфейс взаимодействия этих скриптов (модулей) с CMS можно сделать очень тонким и тем самым свести зависимость этих скриптов (модулей) от CMS к минимуму.

Цитата:
Можно и не прикручивать именно базу. Можно и работать в рамках одной базы с разными таблицами.
Ну это то же самое, что и работать с БД CMS.
Вообще, возможны 2 варианта:
1. С помощью CMS (средствами "визуального конструирования" сайта) создать структуры данных, аналогичные тем, что содержаться в моей БД. И далее по мере необходимости синхронизировать базы. В этом случае на сервере будут 2 базы данных, содежращие одни и те же данные: моя БД и БД CMS. К тому же идёт сильная привязка в версии CMS (в разных версиях CMS структура БД может меняться).
2. С моей БД работа идёт только через собственные модули CMS. В этом случае дублирования данных не будет.

Первый вариант принципиально нереализуем, поскольку модель данных, которые содержит моя БД, невозможно воспроизвести с помощью современных CMS (средствами "визуального конструирования") в силу высокого уровня абстракции CMS и сложности предметной области. Т.е. данные, хранящиеся в моей БД, со всеми её связями невозможно уложить в логику базы данных CMS так, чтобы с этими данными можно было работать в режиме визуального конструирования.

-----
Пока рассматриваю такой вариант: в качестве основы используется CMS с её собственной базой данный. Часть функционала сайта будет реализована с помощью стандартных средств CMS, часть - реализована с помощью собственных модулей. Собственные модули (в основном, только отображение информации) работают только с собственной БД.

Какие ещё минусы имеет вариант использования [CMS + собственные модули, работающие с собственной БД], кроме необходимости наличия в штате программистов и более высокой нагрузки на сервер ?
Cyrax вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 12.02.2013, 10:49   #6
 
Аватар для Unick
 
Сообщений: 703
FR (активность): 32,924

Доп. информация
По умолчанию

при условии: что ни пользователь, ни вы, не будете работать с бд (она будет только выводиться), тогда на самом деле проще использовать цмс, если ее функционал вас удовлетворяет.

По опыту скажу, джумла прилично прожорливая цмс, особенно по отношению к базе данных (с друпалом не работал). Поэтому если по мимо основной нагрузки джумлы добавить еще и скрипты для 100 таблиц... В общем если бд останется живой, то будет очень долго тянуть запросы.

P.s. А да, джумла еще и самая косячная по отношению добавления скриптов в нее, ой сколько у меня гемора было из-за джумлы))


andreisoroka.com
Unick вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 12.02.2013, 11:18   #7
 
Аватар для Umka
 
Сообщений: 4,143
FR (активность): 80,659

Доп. информация
По умолчанию

Цитата:
Сообщение от Cyrax Посмотреть сообщение
Т.е. данные, хранящиеся в моей БД, со всеми её связями невозможно уложить в логику базы данных CMS так, чтобы с этими данными можно было работать в режиме визуального конструирования.
С этой штукенцией знакомы? http://wedal.ru/rasshireniya-joomla/...a-dannykh.html

..причем это не единственный конструктор данных под джумлу, есть и другие. Вообще вы какие-то конструкторы данных под ту же джумлу смотрели-ковыряли и ни один не подошел?

Отсюда и предложение работать именно в рамка одной базы, а не двух.
Цитата:
Сообщение от Cyrax Посмотреть сообщение
Ну это то же самое, что и работать с БД CMS.
Нет, не "тоже самое" - связывать таблицы в одной БД проще и удобнее, чем в разных.
Umka вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 12.02.2013, 11:27   #8
 
Аватар для cpentyc
 
Сообщений: 136
FR (активность): 6,248

Доп. информация
По умолчанию

Напишите хоть десяток названий таблиц. Что за база такая?
Я за yii framework ну или просто фреемворк. не представляю работу это чудо джумла и левая база.


Знаю много, а толку мало. Я ленивая задница.
cpentyc вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 12.02.2013, 12:53   #9
 
Аватар для Cyrax
 
Сообщений: 8
FR (активность): 411

Доп. информация
По умолчанию Автор темы

Цитата:
Напишите хоть десяток названий таблиц. Что за база такая?
Коммерческая тайна ))

Цитата:
не представляю работу это чудо джумла и левая база.
Насколько я знаю, и Joomla, и Drupal предоставляют средства для подключения к внешним базам данных.

----------------------------------------------------------------------------
Цитата:
По опыту скажу, джумла прилично прожорливая цмс, особенно по отношению к базе данных (с друпалом не работал). Поэтому если по мимо основной нагрузки джумлы добавить еще и скрипты для 100 таблиц...
Сайт планируем разместить на выделенном сервере. Т.к. посещаемость в перспективе будет приличной. Да и SQL-запросы (некоторые) весьма непростые.

Цитата:
В общем если бд останется живой, то будет очень долго тянуть запросы.
Что значит, "останется живой" ?

-----
Цитата:
С этой штукенцией знакомы? http://wedal.ru/rasshireniya-joomla/...a-dannykh.html

..причем это не единственный конструктор данных под джумлу, есть и другие. Вообще вы какие-то конструкторы данных под ту же джумлу смотрели-ковыряли и ни один не подошел?
Так это, как я понял, надстройка над РБД ядра CMS, позволяющая в БД ядра CMS хранить и обрабатывать дополнительные данные, о которых CMS не знает. Опять-таки сильная зависимость от CMS и этого самого конструктора. Предпочитаю напрямую работать с РБД. Это ж всё своё... родное...

==============
Немного лирики.
Здесь встаёт вопрос о том, насколько данные, отображаемые на сайте, будут самодостаточны и независимы от CMS. Вообще, я не люблю "визуальное программирование" по той причине, что поведение программы тобой практически не контролируется на уровне кода. Код можно скопировать, забэкапить. А то, что ты наконструировал мышкой неизвестно где, как и в каком формате хранится и в громадной степени зависит от IDE или CMS.
Насколько я понял, при работе с CMS программирование имеет место только при разработке собственных модулей. И только через код таких модулей можно обращаться к своей собственной (т.е. внешней по отношению к CMS) базе данных. Всё, что "конструируется" визуальными средствами CMS, сохраняется в собственной БД CMS, которая хранит всё - и настройки, и пользователей, и собственно информацию, отображаемую на веб-страницах. Наприме, Joomla 2.5 при установке создаёт БД из 61 таблицы и далее в процессе визуального конструирования сайта всю информацию раскидывает по этим таблицам.
Структура такой БД вовсе нечитабельна и понимается только самой CMS / конструктором данных. Вот здесь как раз и имеет место полная зависимость БД с твоей информацией от испольуемой CMS / конструктора данных. Выдирать из её БД некоторую информацию в целях бэкапа - это какой-то изврат.

---------------------------------------------
Я представляю себе такую организацию взаимодействия: есть БД, которая разработана тобой лично. Отшлифована с учётом всех требований к проектированию БД. Даны корректные имена всем таблицам, созданы оптимальные индексы, представления и т.п. Далее ты либо сам программируешь сайт (возможно, с использованием фреймворков), либо используешь CMS, но в качестве хранилища твоих данных используется твоя БД (ну а всякие настроки и вся прочая шелуха, необходимая для работы CMS, а также данные стандартного функционала CMS, который (функционал) ты используешь, пусть храниться в её собственной БД).

Всего-навсего я хочу хранить свою информацию (ресь о моей БД из 100 таблиц) в свой базе данных, которую я хорошо знаю (в частности, её структуру), которую можно забэкапить в любой момент, которую можно "прикрутить" к другой CMS, которую можно перенести в локальную систему и работать с этой базой с помощью какого-либо прикладного приложения. Данные должны быть "моими", а не CMS.
Cyrax вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 12.02.2013, 13:08   #10
 
Аватар для Umka
 
Сообщений: 4,143
FR (активность): 80,659

Доп. информация
По умолчанию

Цитата:
Сообщение от Cyrax Посмотреть сообщение
Наприме, Joomla 2.5 при установке создаёт БД из 61 таблицы и далее в процессе визуального конструирования сайта всю информацию раскидывает по этим таблицам
Не совсем. 61 таблица - это ядро. Каждый отдельно устанавливаемый компонент (плагин) создает свои новые таблицы в этой БД. Поставили SEF404 - он пяток таблиц добавил, поставили компонент магазина - он еще штук тридцать таблиц туда кинет. И каждый компонент свои таблицы для хранения данных и юзает.
Поставьте на чистую сборку несколько больших компонентов - увидите сами.
Цитата:
Сообщение от Cyrax Посмотреть сообщение
Я представляю себе такую организацию взаимодействия: есть БД, которая разработана тобой лично. Отшлифована с учётом всех требований к проектированию БД. Даны корректные имена всем таблицам, созданы оптимальные индексы, представления и т.п.
То что вы описываете у той же джумлы называется компонентом, за исключением того, что это одна база с разными таблицами, а не разные базы.
Цитата:
Сообщение от Cyrax Посмотреть сообщение
которую можно "прикрутить" к другой CMS
У каждой CMS свои особенности и своя структура. Вы хотите сделать универсальный ключ от всех дверей?
Umka вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 12.02.2013, 14:10   #11
 
Аватар для Cyrax
 
Сообщений: 8
FR (активность): 411

Доп. информация
По умолчанию Автор темы

Цитата:
У каждой CMS свои особенности и своя структура. Вы хотите сделать универсальный ключ от всех дверей?
Я хочу, чтобы моя БД не зависела от CMS (эта БД содержит только специфические для моей предметной области данные и не содержит информацию о пользователях, новостях и прочих уже реализованных в CMS полезностях). Одна из причин: эта же БД (вернее, другая БД, но той же самой структуры) используетсся в другой (локальной) системе. И эти БД между собой периодически синхронизируются. На сайте информация только отображается. В локальной системе - вводится, анализируется и т.п.
Cyrax вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 12.02.2013, 14:12   #12
 
Аватар для Unick
 
Сообщений: 703
FR (активность): 32,924

Доп. информация
По умолчанию

В крации. Берется цмс, любая...
У нее есть уже какой-то функционал, вы этим функционалом пользуетесь. Но также на определенных страницах будут срабатывать скрипты, которые будут тянуть информацию из базы данных. И не важно какая цмс (я то сначала вообще о другом подумал )
Чтож, мы выяснили что скрипты можно записать куда хочешь и когда хочешь... Осталось только определиться с цмс.


andreisoroka.com
Unick вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 12.02.2013, 14:13   #13
 
Аватар для cpentyc
 
Сообщений: 136
FR (активность): 6,248

Доп. информация
По умолчанию

Цитата:
Сообщение от umka from ufa Посмотреть сообщение
То что вы описываете у той же джумлы называется компонентом, за исключением того, что это одна база с разными таблицами, а не разные базы.
Категорически согласен))) Что бы написать компонент работающий с сотней таблиц да это такой гемор не каждый спец по компонентам возьмется а уж если возьмется то думаю вы испугаетесь цены. Визуальный пример как сокращается выбор.

серые это все программисты php
красные умеют писать компоненты
желтые смогут справится с вашей задачей
А зеленые это те кто умеют писать компоненты и смогут справится с вашей задачей.


Знаю много, а толку мало. Я ленивая задница.
cpentyc вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 12.02.2013, 14:17   #14
 
Аватар для Unick
 
Сообщений: 703
FR (активность): 32,924

Доп. информация
По умолчанию

umka from ufa,
cpentyc,
сразу видно кто у нас тут джуммастер
в вп плагины, в джумле компоненты, но вот только написать и впилить скрипт гораздо проще быстрее и менее ресурсозатратно чем подключать как "отдельный модуль"
хотя минус есть, управлять этим скриптом нельзя будет "как хочешь", надо лесть в код.


andreisoroka.com
Unick вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Старый 12.02.2013, 14:21   #15
 
Аватар для cpentyc
 
Сообщений: 136
FR (активность): 6,248

Доп. информация
По умолчанию

Цитата:
Сообщение от Unick Посмотреть сообщение
umka from ufa,
cpentyc,
сразу видно кто у нас тут джуммастер
в вп плагины, в джумле компоненты, но вот только написать и впилить скрипт гораздо проще быстрее и менее ресурсозатратно чем подключать как "отдельный модуль"
Если ТС нужен сайт с новостями и прочей лабудой то согласен ставим вп или джумлу, но ничего не мешает добавить каталог myDb100Table и в него положить скрипт. Просто фрэимворк джумлы грузнее обычного зенда yii или коде ингайтера. А про вп вообще молчу потому что некомпетентен.


Знаю много, а толку мало. Я ленивая задница.
cpentyc вне форума  
Ответить с цитированием Сказать Плохо за это бесполезное сообщение Быстрый ответ на это сообщение
Ответ

Быстрый ответ
Ваше имя пользователя: Регистрация. Для входа нажмите здесь
Случайный вопрос

Сообщение:
Опции
Внимание!
Этой теме более 1896 дней. Вы можете оставить сообщение здесь. Но, обращаем внимание. Возможно, рациональней создать новую тему (найти свежее обсуждение)?


Опции темы
Опции просмотра Оценка этой теме
Оценка этой теме:

Ваши права в разделе
Вы не можете создавать новые темы
Вы можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Верстка, интеграция WordPress Akara Создание сайтов 0 12.05.2012 22:22
Для начинающих осваивать Drupal !!! Интеграция smf и drupal jaans Drupal 0 27.06.2011 21:57
Интеграция blogger'a в основной движок mkt Создание сайтов другого типа 0 29.05.2011 20:37
Можно ли такое сделать с готовой CMS.. newinseo Мусорка 1 09.05.2010 12:26

Текущее время: 07:53. Часовой пояс GMT +3.