Какой сервер баз данных лучше использовать NexusDB или что-то еще есть лучше? И почему, обоснуйте пожалуйста.





Требуется СУБД для небольшого объема данных но со сложными SQL запросами. Сейчас используем NexusDB, но в последнее время он не справляется.
Ответы типа Oracle лучший имхо, просьба не давать.
  • 28 мая 2009, 16:11
  • etsl

Ответы (10)

RSS
+
0
MSDE, но смотри ограничения
если по ограничениям не подойдет - MS SQL
avatar

zombaro

  • 5 июля 2009, 10:45
+
0
Тогда действительно лучше всего подойдет MS SQL Server, ибо документации - море, T-SQL - де-факто. Oracle очень дорог в обслуживании, специалисты по нему ОЧЕНЬ дорого стоят.
avatar

er-etzer

  • 7 июля 2009, 10:03
+
0
ну ведь какой вопрос - такой и ответ.
ты не написал, какие запросы используешь? интересует цена? производительность? размер БД? количество одновременно работающих пользователей?
avatar

vimakvi

  • 16 июля 2009, 16:52
+
0
MySQl, PostgreeSql  - не юзали
avatar

xuman

  • 11 июля 2009, 17:13
+
0
MySQl, PostgreeSql  - не юзали

MS sql  и Oracl дорогие
avatar

ugochaves

  • 19 июня 2009, 14:26
+
0
MySQl, PostgreeSql  - не юзали

MS sql  и Oracl дорогие
avatar

abula-asa

  • 12 июня 2009, 20:39
+
0
MySQL тоже не очень дешево - 400 евро за лицензию на сервер в год
avatar

nttoshka

  • 9 июля 2009, 10:31
+
0
Ответы типа MS SQL лучший имхо, просьба не давать.
avatar

amilion

  • 27 июля 2009, 11:37
+
0
Запросы формируются динамически, вот один из них, оптимизировать каждый вид запроса времени нет:

select distinct tm_addressee ,tm_all_day ,tm_kind_name ,tm_end_datetime ,tm_close_datetime ,tm_create_datetime ,tm_begin_datetime ,tm_fixed ,planner

,case when (COALESCE(a.tm_initiator_np_id,0) <> 0) and(COALESCE(a.tm_initiator_comp_id,0) <> 0) and (COALESCE(a.tm_initiator_emp_id,0) <> 0) then

emp.name  when (COALESCE(a.tm_initiator_np_id,0) <> 0) and (COALESCE(a.tm_initiator_comp_id,0) <>0 ) and(COALESCE(a.tm_initiator_emp_id,0)  = 0 )

then



per.name  when (COALESCE(a.tm_initiator_np_id,0) <>0) and(COALESCE(a.tm_initiator_comp_id,0)=0)   then comp.name when

(COALESCE(a.tm_initiator_np_id,0) = 0) and(COALESCE( a.tm_initiator_comp_id,0) <> 0)  then comp.name end as tm_initiator,tm_remind ,tm_direction_name

,tm_id ,tm_description ,tm_apropos_of ,tm_priority_name ,tm_status_id ,tm_type_id ,desc as tm_author_id

FROM tm_action a  left join tm_ref_kind using(tm_kind_id) left join cm_contact per on per.contact_id = a.tm_initiator_np_id left join cm_contact

comp on comp.contact_id = a.tm_initiator_comp_id left join vw_employee emp on emp.relation_id = a.tm_initiator_emp_id  left join tm_ref_direction

using(tm_direction_id)  left join tm_ref_priority using(tm_priority_id)  inner join cm_vw_our_workers on a.tm_author_id=cm_vw_our_workers.contact_id  

, tm_apropos_rel ap,tm_addressee_rel ad  where (a.tm_id = ap.action_id and ap.contact_id_p = 1331) or (   a.tm_id = ap.action_id and ap.contact_id_p

= 1331 )  or (tm_initiator_np_id = 1331)

Пользователей может быть от 5 до 150 думаю не больше, размер базы не критичен, хотелось бы поставлять коробочную версию, и лицензионная политика нексуса - заплатил один раз и продавай сколько хочешь - идеальная (конечно не лучше бесплатной)
avatar

unny-itch

  • 25 июня 2009, 01:53
+
0
Используй MySSL. Бесплатный, быстрый, сейчас уже достаточно надежный. Можно под винду поставить пакет "Денвер" с поддержкой MySQL и PHP. И будет тебе счастье.
avatar

obj-ihail

  • 13 июля 2009, 08:58

Вопрос закрыт