На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! информация о разделе
user posted imageДанный раздел предназначается для обсуждения вопросов использования баз данных, за исключением составления запросов на SQL. Для этого выделен специальный раздел. Убедительная просьба - соблюдать "Правила форума" и не пренебрегать "Правильным оформлением своих тем". Прежде, чем создавать тему, имеет смысл заглянуть в раздел "Базы данных: FAQ", возможно там уже есть ответ.

Модераторы: Chow, Bas, MIF
Страницы: (5) [1] 2 3 ... Последняя » все  ( Перейти к последнему сообщению )  
> Какую базу данных выбрать? , Самый краткий FAQ!
    Никаких абсолютных рекомендаций - это только вскидка на первый взгляд. Просто небольшая памятка чтобы не терятся в море баз данных. Возможно мои оценки неточны в деталях, кроме того я оставил лишь наиболее распространённые базы.

    1)Размер базы данных - параметер весьма критичен!
    - несколько мегабайт: MS Access, XML, CSV, MS Excel, Парадокс, Dbase, Foxpro/VFP, MySQL, PostgreSQL
    - до сотни мегабайт: MS Access, Парадокс, Dbase, Foxpro/VFP, MySQL, PostgreSQL, Interbase
    - гигабайты: MySQL, PostgreSQL, Interbase, Informix, MS SQL Server, Oracle, SyBase, DB/2
    - сотни гигабайт и больше: MS SQL Server, Oracle, SyBase, DB/2

    2) Количество одновременных пользователей - пожалуй это самый критичный параметер!
    - эксклюзивный доступ одного пользователя: MS Excel, XML, CSV, Парадокс, Dbase, Foxpro/VFP, MS Access, MySQL, PostgreSQL
    - до десятка пользователей: Парадокс, Dbase, Foxpro/VFP, MS Access, MySQL, PostgreSQL
    - несколько десятков пользователей: MySQL, PostgreSQL, Interbase, Informix
    - сотни пользователей: PostgreSQL, Interbase, MS SQL Server, Oracle, SyBase, DB/2
    - тысячи пользователей: MS SQL Server, Oracle, SyBase, DB/2

    3) Цена базы данных - параметер весьма критичен!
    - полностью бесплатно: XML, CSV, MySQL, PostgreSQL, Interbase (некоторые клоны)
    - формат бесплатен, для разработки желательно купить дешёвую всего одну систему:MS Excel, Парадокс, Dbase, Foxpro/VFP, MS Access
    - дешёвые сервера: Interbase (некоторые клоны), Informix, старые версии SyBase
    - дорогие сервера: MS SQL Server, Oracle, SyBase
    - сверхдорогие сервера: DB/2

    4) Платформа - параметер весьма критичен!
    - любая: XML, CSV
    - Windows only: MS SQL Server, SyBase, Парадокс, Dbase, Foxpro/VFP, MS Access, MS Excel
    - Unix/Linux only:PostgreSQL
    - Windows+Linux:Oracle, DB/2, Interbase, MySQL
    - Мейнфреймы: DB/2
    - Кластеры:MS SQL Server, Oracle, SyBase, DB/2

    5) язык программирования - рекомендательный параметер:
    - Языки от Microsoft: MS SQL Server, SyBase, Foxpro/VFP, MS Access, MS Excel
    - Языки от Борланда: MS SQL Server, Interbase, Парадокс, MS Access
    - Системы под Linux: Oracle, DB/2, Interbase, MySQL, PostgreSQL, XML

    6) Тип программы - рекомендательный параметер:
    - маленький web сервер: MySQL
    - мощный web сервер: MS SQL Server, Oracle, SyBase, DB/2
    - локальная утилита: Парадокс, Dbase, Foxpro/VFP, MS Access, MS Excel, XML, CSV
    - сложная система:MS SQL Server, Oracle, SyBase, DB/2, Interbase, Informix

    7) Защита данных - параметер весьма критичен!
    - никакая: MS Excel, XML, CSV
    - очень слабая: Парадокс, Dbase, Foxpro/VFP, MS Access
    - сильная:MS SQL Server, Oracle, SyBase, DB/2, Interbase, Informix, MySQL, PostgreSQL

    8) Мощность языка SQL, возможности базы данных (View, Stored procedures, agents, backup, репликации и т.п.) - параметер весьма критичен!
    - очень слабые: MS Excel, XML, CSV
    - слабые: Парадокс, Dbase, Foxpro/VFP, MS Access, MySQL
    - развитые:Interbase, Informix, PostgreSQL
    - мощные:MS SQL Server, Oracle, SyBase, DB/2

    9) Требования к железу - параметер весьма критичен!:
    - неприхотливые:MySQL, PostgreSQL, Парадокс, Dbase, Foxpro/VFP, MS Access,MS Excel, XML, CSV
    - чуствительные: Interbase, Informix, SyBase
    - требуют отдельных мощных серверов с большой RAM, желательно на нескольких процессорах: MS SQL Server, Oracle, DB/2

    10) Способ доступа - рекомендательны параметер:
    - ODBC: CSV
    - OLE DB/ADO: MS Excel,MS Access,MS SQL Server, SyBase
    - DAO:MS Excel,MS Access,Foxpro/VFP
    - BDE:Парадокс, Dbase,Foxpro/VFP
    - DBExpress:MySQL, Interbase, Oracle, DB/2
    - Собственные:XML,MySQL,Interbase, Informix, PostgreSQL, Oracle, SyBase, DB/2

    11) Сложность настройки, установки, администрирования, желательность специально обученного персонала для администрирования - параметер весьма критичен!:
    - никаких сложностей, администрирование не требуется: MS Excel, XML, CSV
    - минимальные либо небольшие сложности: Парадокс, Dbase, Foxpro/VFP, MS Access
    - первоначальная настройка плюс минимальная поддержка: PostgreSQL, MySQL
    - требуются специальные знания в достаточно большом объёме: Interbase, Informix
    - желательно наличие специалиста по базам данных: MS SQL Server, Oracle, SyBase, DB/2

    12) Стоимость программистов и администраторов - параметер весьма критичен!:
    - небольшая: MS Excel, XML, CSV, Парадокс, Dbase, Foxpro/VFP, MS Access, PostgreSQL, MySQL
    - значительная: Interbase, Informix, SyBase
    - высокая и очень высокая: MS SQL Server, Oracle, DB/2

    13) Перспективы развития базы данных, стабильность фирм-хозяев, выпуск новых релизов и т.п-рекомендательный параметер.
    - "мёртвые" или почти мёртвые базы: Парадокс, Dbase, Foxpro/VFP, CSV
    - медленно развивающиеся, сомнительные перспективы, фирмы производители не устойчиво стоящие на ногах: Interbase, Informix, PostgreSQL, SyBase
    - Гарантированно продолжение, только развивать дальше некуда: MS Excel, MS Access, DB/2
    - Бурно развивающиеся базы, частые релизы и апдейты: MS SQL Server, Oracle, XML, MySQL

    14) Трудоёмкость и возможность перевода программы от одной базы к другой - рекомендательный параметер:

    Лёгкие переходы:
    Парадокс<->Dbase<->Foxpro/VFP
    CSV->MS Excel
    SyBase -> MS SQL Server
    MS Excel->MS Access

    В остальных случаях обычно можно перевести более лёгкие базы в более навороченные, но не наоборот. Особняком стоит XML который обычно вообще трудно куда дибо перевести.
      Цитата Vit,2.10.04, 07:18 @
      11) Сложность настройки, установки, администрирования, желательность специально обученного персонала для администрирования - параметер весьма критичен!:
      - никаких сложностей, администрирование не требуется: MS Excel, XML, CSV
      - минимальные либо небольшие сложности: Парадокс, Dbase, Foxpro/VFP, MS Access
      - первоначальная настройка плюс минимальная поддержка: PostgreSQL, MySQL
      - требуются специальные знания в достаточно большом объёме: Interbase, Informix
      - желательно наличие специалиста по базам данных: MS SQL Server, Oracle, SyBase, DB/2

      Простите, а в чем сложность настройки, установки и администрирования сервера Interbase? Это какие спец. знания кроме SQL нужны то?
        Vit, хотелось бы услышать пару слов относительно скорости работы, это ведь не то же, что п.9... и относительно размера самого сервера (т.е. движка) :)
          Цитата Jin X @
          Vit, хотелось бы услышать пару слов относительно скорости работы


          А на него невозможно ответить... Учитывая указанные критерии выбираешь базу данных, она и будет наиболее быстрой... При эксклюзивном доступе локально на таблице в 1000 записей парадокс через BDE даст производительность на 2-3 порядка большую чем MS SQL Server + ADO, а если количество одновременных пользователей увеличить до 100, а размер таблицы до 1000000 записей то MS SQL Server + ADO даст скорость на 5-7 порядков большую чем Парадокс на BDE на сетке... Разные базы данных оптимизированны под разные нужды.

          Цитата Jin X @
          и относительно размера самого сервера (т.е. движка)


          Локальные базы данных или очень малы или вообще имеют размер самих данных

          Малый и средний класс серверов - обычно в пределах сотни мегабайтов

          Промышленные сервера - около гигабайта

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

          Извини что так обтекаемо ответил на оба вопроса, но если отвечать аргументированно по существу, надо провести коллосальную исследовательскую работу
            Цитата Vit @
            но если отвечать аргументированно по существу, надо провести коллосальную исследовательскую работу

            :yes: И при этом результат будет устаревать с каждым днем.
              Vit, спасибо за хороший обзор БД.
              Но почему ты даже не упомянул такую достаточно популярную БД
              Pervasive SQL Datababase. А ведь на ней очень многие приложения написаны(напр.Scala, R-Stile)...
              И исходя свого опыта, большие сомнения берут, можно ли написать надежную, не глючную, прогу для работы с сетевой БД,
              используя БД Парадокс, Dbase, Foxpro/VFP, MS Access? Я еще не встречал. По крайней мере 1С уже с 3 пользователями
              постоянно глючила. Насчет разма, по опыту использования программ написанных на Fox или Clipper(dbase формат) они начинали уже глючить и резко ториозить, когда кол-во записей в таблице начинало превышать 50000, портился часто индекс, а переиндексирование - долгая штука.
                Цитата Genior @
                Но почему ты даже не упомянул такую достаточно популярную БД
                Pervasive SQL Datababase

                Это "Самый краткий ".
                И список можно продолжить в зависимости от задач.
                  Цитата Genior @
                  Vit, спасибо за хороший обзор БД.
                  Но почему ты даже не упомянул такую достаточно популярную БД
                  Pervasive SQL Datababase.


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

                  Цитата Genior @
                  И исходя свого опыта, большие сомнения берут, можно ли написать надежную, не глючную, прогу для работы с сетевой БД,
                  используя БД Парадокс, Dbase, Foxpro/VFP, MS Access? Я еще не встречал.


                  Нельзя... Разве что трёхзвенку... MS Access - в принципе можно использовать, но очень ограничено... Небольшое количество подлкключений, малые размеры базы, очень не напряжные и редкие запросы... Сетка подразумевает сервер базы данных... Любые попытки использовать файловые базы данных очень быстро заведут в тупик....
                      Сколько же тут надо знать %)))
                        Vit, прошу вынести PostgreSQL в категории "Платформа" из Unix/Linux only, поскольку вышел виндозный релиз
                        PS. IMHO - PostgreSQL - лучшая среди бесплатных
                          Цитата Дмитрий @
                          Vit, прошу вынести PostgreSQL в категории "Платформа" из Unix/Linux only, поскольку вышел виндозный релиз


                          Будем знать :)

                          Цитата Дмитрий @
                          PS. IMHO - PostgreSQL - лучшая среди бесплатных


                          Лучших и худших нет... Я пытался этим топиком показать... Но вы кажись не поняли... Есть лучшая и худшаяя для конкретного проекта, цели и задачи... Вот прямо сразу несколько примеров когда PostgreSQL среди бесплатных оказывается далеко не лучшим вариантом:

                          1) Web сайт, есть хороший и дешёвый хостер, но предлагает только MySQL, а есть дорогой и плохой но есть и PostgreSQL ...

                          2) Надо хранить очень небольшое количество инфы в распространяемой программе, очевидно что сервер на фиг не нужен, волочить его за собой, вполне подойдёт ini, csv, xml, MS Access

                          3) Есть очень большая и сложная база данных, размером под несколько террабайт, но требуется доступ только с 1-2 клиентов. В данном случае PostgreSQL будет слабовата, предпочтительнее например MSDE - бесплатная версия MS SQL Server

                          4) Базу данных надо использовать в проекте который делается на Дельфи/CBuilder - среда разработки имеет готовые компоненты и очень мощные для доступа к Interbase и не имеет для PostgreSQL (точнее есть DBExpress, но она не обладает достаточной функциональностью для профессиональной разработки), затраченное время и ресурсы на изготовление собственных систем доступа или для подбора, освоения и исправления ошибок в существующих третьесторонних системах доступа может оказаться неоправданно большим...

                          и т.д. и т.п.... Примеров не счесть... Панацеи нет, все перечисленные базы данных имеют достаточное количество плючов чтобы быть востребованными в тех или иных случаях и достаточное количество минусов не позволяющие им быть лучшими для любых ситуаций. Баз данных много! И это хорошо!
                            От ИнтерБейса отдельно хотелось бы отметить Firebird, который:
                            - поддерживает полноценные триггеры, хранимые процедуры, запросы (три диалекта SQL), скрипты и все остальные БДшные примочки
                            - БЕСПЛАТНЫЙ

                            Сам Firebird прекрасно чувствовал себя и в виндах, и в линуксе.

                            в качестве админской части пользовали IBExpert (по-моему, запускается только в винде), не без глюков, но довольно удобно
                            Сообщение отредактировано: tabu -
                              Цитата tabu @
                              в качестве админской части пользовали IBExpert (по-моему, запускается только в винде), не без глюков, но довольно удобно

                              Точнее в качестве визуальной админской части...
                              А если по существу, то FireBird очень неплохая БД, если учесть что бесплатная.
                                А куда можно отнести Cache? А то многие последее время хвалят за быстроту..
                                0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                                0 пользователей:


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0405 ]   [ 16 queries used ]   [ Generated: 19.03.24, 04:27 GMT ]