Опрос:
У вас нет прав голосовать в этом опросе.
Всего 0 голос(ов) 0%
* Вы проголосовали за этот ответ. [Показать результаты]

Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Выбор СУБД под Java сервер
#1
Помогите выбрать СУБД ( Система управления базами данных ) для Java сервера Lineage II.

Свой ответ обоснуйте.

P.S. Вот что я знаю о...

PostgreSQL - СУБД, которая работает намного качественнее MySQL, но немного медленее. Так же это хороший бесплатный аналог Oracle Database.
MySQL - очень шустрая СУБД, но особым качеством никогда не выделялась...Cool Очень хорошо показала себя при правильной настройке в "ВЕБе".
Oracle - юзал мало, плюсов много, минус один - тормозит систему ( у меня слабоватый комп ).
MSSQL Server - что то нечто тупое и медленное, некоторые ею очень хорошо пользуются, + не нашёл ни одного... поможете?
SQLite - что то быстрое и нестабильное) хотя юзал мало.Smile
Ответ
#2
Весь сок PostageSQL в том, что скорость меньше не намного, и огромная скорость тут не к чему. За-то качество на высшем уровне среди бесплатных СУБД.
Ответ
#3
а вы с точки зрения кого спрашиваете?
Ответ
#4
Ну я не спрашиваю, а интересуюсь))

С точки зрения администратора игрового сервера, у которого сборка, собственной разработки.
Ответ
#5
Сборка "собственной разработки" и не знаете какую СУБД выбрать?=)
Ответ
#6
слишком много неизвестных, чтобы ответить. При прочих равных я бы выбрал Postgresql. Только они не равные. За Oracle и MSSQL без серьезной подготовки лучше даже не браться. По Mysql, напротив, очень много информации, она где ни попадя стоит, но возможности ее куцы. Postgres - золотая середина, а остальные бд в опросе скорее для полноты.
Просто сменой бд увеличения производительности не добиться, требуется как настройка бд, так и оптимизация приложения под конкретный движок. К тому же, я сомневаюсь, что на базах размером в несколько сотен мегабайт вы сможете добиться ощутимых различий - легче памяти докупить и дисков побыстрее.
Впрочем, это все теория, а имея на руках рабочее приложение - не так сложно провести реальные тесты. Если проведете - выложите, будет интересно посмотреть.
Ответ
#7
я об оставил mysql и сделал промежуточный язык Hibernate для связи классов Java с таблицами базы данных sql.

Добавлено через 9 минут
Ramzessuss у тя раньше ник Diesel был?
Ответ
#8
Нахватались модных слов, таких как Hibernate, и кричите тееерь на каждом шагу. А кто нибудь себе реально представляет что значит встроить его в сборку? И подумайте, чтобы вставить его более менее правильно, надо исходники hibernate вставить в исходники сервера. Кто из нас это может сделать правильно на 100%? Ответ - никто!. Хотя возможно тут и есть такие умники, котором от нечего делать захочется перекопать пол ядра, но для этого нужно писать на яве как на своём языке.

Кто из нормальных админов поставит сервак л2 на продукт от Microsoft? Тоже врядли кто-то решится. А на *NIX не идёт Microsoft SQL Server, за-то есть его аналог - PostgreSQL.

Кто нибудь использовал то что ниже IBM DB2? Опять же - это коммерческие, либо не предназначенные для таких целей СУБД.

Та же DB2 - очень тяжёлая как в работе, так и в понимании СУБД. Работает на оч. сильных серверах. Для л2 врядли подойдёт.

Выбор сужвется до:
Oracle Database - если у Вас сильная машина в плане оперативной памяти и процессора - это наилучший выбор!
PostgreSQL - аналог "Оракла", только бесплатный и менее требователен к ресурсам. Для сервера онлайн игры хорошо подходит.
MySQL - если у Вас слабая "машина", но Вы всё же хотите открыть собственный сервер L2 - эта СУБД для Вас, но я бы её только под сайт использовал. ИМХО она как была Web СУБД, ею и останется)

Либо делайте так:
MySQL + Hibernate + все статические таблицы в XML или CSV и машинку покрепче.

Удачи всем начинающим админам.
Ответ
#9
Если с точки зрения разработчика вопрос (т.е. под какую СУБД писать), то вопрос очень странный. Есть вполне вменяемые патерны разработки и библиотеки (hybernate тот же самый), которые позволяют не зависить от типа СУБД и, без переписывания кода, менять драйвер базы и, соответственно, саму СУБД.

Если вопрос с точки зрения администратора, то он не очень корректный.
Если сервер "заточен" (т.е. запросы в него вшиты намертво) под какую-то конкретную СУБД, то о каком выборе вообще говорить можно?
Если же сервер написан нормально и позволяет менять СУБД, то для каких-либо рекомендаций очень мало данных.
Естественно, лучше всего использовать ORACLE, но использовать его тоже надо уметь (это выделенный мощный сервер, а еще лучше кластер (именно в таких условиях оракл обгоняет всех по производительности), это пряморукий админ, который знает как нужно настроить систему под эту СУБД, и это лицензия на несколько килобаксов). Но люди, у которых есть такие ресурсы вряд ли будут спрашивать на форуме что лучше, бесплатная маська или оракл.
Опять же, если машинных ресурсов достаточно, то и маська в режиме innodb даст супернадежность и производительность, и постгресс будет летать. Только зачем все это на 10 запросов в секунду и 200 онлайна?

Если речь идет о "домашнем сервере" с 200 онлайна, то хорошо настроенный mysql в режиме myisam вполне себе будет вменяемо работать.
Если сервер "по-серьезднее", то можно посмотреть в сторону postgresql (если, конечно, сервер с вписанными в код запросами в диалекте маськи с ним захочет общаться) или mysql в режиме innodb.
На что-либо другое вообще особо нету смысла смотреть в реалях ЛА2.

SQLite, Sybase, Interbase - это вообще безсерверная болезнь, в которой можно хранить бухотчеты маленькой компании на флешке.
Oracle, IBM DB2, MSSQL - это монстры масштаба enterprise, которые интересны только при миллионах транзакций и много-терабайтных базах.
MySQL, PostgreSQL, Firebird - это субд общезадачные, оптимизированные под определенные операции (mysql в решиме myisam, например, обгоняет на средних нагрузках всех на простых операциях (select/insert/update) с одной таблицей, postgresql интересен, если нужна полноценная современная СУБД с транзакциями, триггерами, хранимыми процедурами и т.д., под среднюю нагрузку, без особых претензий на производительность, но с хорошим запасом прочности).

PS: Есть реальный пример, когда mysql в режиме myisam которую тюнили несколько месяцев под конкретную задачу, с настроенной репликацией для надежности, на выделенной машине в 8 ядрами и 32Гб оперы переваривала 15-20 тысяч запросов в секунду (база биллинга интернет-провайдера) в штатном режиме. Так что вопрос не в том какую субд использовать, а в том с какой субд умеешь общаться "как с другом".
Ответ
#10
xCrash Написал:я об оставил mysql и сделал промежуточный язык Hibernate для связи классов Java с таблицами базы данных sql.

Добавлено через 9 минут
Ramzessuss у тя раньше ник Diesel был?
У меня сервер L2Diesel.ru был) А ника нет, не было.Smile
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  c# клиент-сервер kpNemo 1 2,265 03-22-2016, 10:38 AM
Последний пост: PROGRAMMATOR
  Java с нуля Sensation 11 3,371 03-22-2016, 10:22 AM
Последний пост: mountaineer
  С# клиент-сервер kpNemo 8 4,223 06-21-2015, 01:35 PM
Последний пост: kpNemo
  Git сервер Virt 6 2,064 09-08-2014, 06:40 PM
Последний пост: OneThunder
  Выбор игрового движка xolseg 15 4,134 03-27-2014, 12:50 PM
Последний пост: xolseg
  Миграция с C# .NET 4.0 на JAVA 7 TieLay 12 5,615 10-18-2013, 05:47 PM
Последний пост: VISTALL
  Java, командная строка Grindelvald 2 1,980 08-24-2013, 09:38 AM
Последний пост: Grindelvald
  .NET vs Java praetorianec 56 11,038 12-05-2012, 03:52 PM
Последний пост: ProDev
  Java/.NET Руткиты (Эксплойтирование платформы JVM/.NET) OPPAIN 0 1,415 11-09-2012, 07:04 PM
Последний пост: OPPAIN
  Java Scripts - конфликт библиотек Gambit_J 18 6,459 10-03-2012, 11:31 PM
Последний пост: popropusku

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)