|
|
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток! Необходима помощь в выборе СУБД на стороне Back-End для одного проекта. Немного погуглил на тему "How to choose database" и т.п., но проблема в том, что слишком слабо знаю особенности разных СУБД. Поэтому решил обратиться на форум за помощью. Проект представляет, по сути, интернет-сервис, весь Back-End на нашей стороне, поэтому пользователи с БД явным образом не взаимодействуют. Основные критерии: - Не имеет значения, SQL или NoSQL - Не Oracle DB - Должна быть возможность взаимодействия с СУБД через C# (.NET) - Важна масштабируемость, т.к. непонятно кол-во пользователей - возможно, 1 000, а, возможно, 1 000 000 - На стороне Back-End не храним media-контент (ни музыки, ни видео - возможно, немного небольших картинок, не более) - Важна быстрая обработка запросов и получение результатов (нет возможности ждать лишних 10-20-40 секунд, т.к. проект ориентирован на обычных пользователей, а ждать они не любят) - Соотношение типов запросов будет примерно таким: Number of SELECT > Number of UPDATE > Number of INSERT //использую термины SQL, но имею в виду получение результата из БД, обновление уже существующих записей и добавление новых записей Т.к. я являюсь новичком в сфере DBA, просьба как-то аргументировать предлагаемые варианты, чтобы было понимание : ) Немного поизучав БД, пришёл к выводу, что можно использовать MySQL/PostgreSQL или MongoDB (последняя как раз должна прекрасно масштабироваться). И еще один вопрос - на какие еще вопросы обычно необходимо отвечать (самому себе) при выборе СУБД для проекта? Заранее спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 17:06 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
авторИ еще один вопрос - на какие еще вопросы обычно необходимо отвечать (самому себе) при выборе СУБД для проекта? Какую СУБД знает ваш базист? Какой бюджет, если базиста нет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 17:15 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
SERG1257авторИ еще один вопрос - на какие еще вопросы обычно необходимо отвечать (самому себе) при выборе СУБД для проекта? Какую СУБД знает ваш базист? Какой бюджет, если базиста нет? Логичный вопрос) По сути, мы уже настроились изучать СУБД "с нуля"/практически с нуля, т.к. есть возможность потратить время на это. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 17:40 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Igor MakaryevПо сути, мы уже настроились изучать СУБД "с нуля"/практически с нуля, т.к. есть возможность потратить время на это. Это будет ваш личный проект, т.е. заказчика как такового нет? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 18:05 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovIgor MakaryevПо сути, мы уже настроились изучать СУБД "с нуля"/практически с нуля, т.к. есть возможность потратить время на это. Это будет ваш личный проект, т.е. заказчика как такового нет? Да, именно : ) Поэтому мы вольны не торопясь, основательно подойти к выбору всех необходимых инструментов - и потратить какое-то время на их освоение ради конечного результата. Но, допустим, потратить условно месяц на выбор СУБД, подняв экземпляр каждой, погоняв на прототипе, измерив производительность - это всё же слишком, поэтому решил обратиться сюда. То есть время есть, но в разумных пределах - как и всегда в нашей жизни, впрочем : ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 18:08 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
В таком случае нулевой пункт стандартной последовательности отпадает и остаётся только 1) Которую лучше знаете 2) Первая попавшаяся 3) Вторая попавшаяся С описанной задачей справится любая в умелых руках. Вопрос только в том насколько умелыми являются те ваши. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 18:20 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Хотя нет, я неправ. Igor Makaryev- Должна быть возможность взаимодействия с СУБД через C# (.NET) Вот этим пунктом ваш список низводится до одной позиции - MS SQL. Больше ни с чем этот ..NET нормально взаимодействовать не умеет. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 18:23 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovХотя нет, я неправ. Igor Makaryev- Должна быть возможность взаимодействия с СУБД через C# (.NET) Вот этим пунктом ваш список низводится до одной позиции - MS SQL. Больше ни с чем этот ..NET нормально взаимодействовать не умеет. Сразу несколько вопросов возникло. 1. Нулевой пункт - как раз "Какую СУБД знает ваш базист?", я правильно понимаю? 2. Хм, почему не умеет? Та же MongoDB: http://en.wikipedia.org/wiki/MongoDB "There are REST and HTTP interfaces that allow the manipulation of MongoDB entries via HTTP GET, POST, UPDATE, and DELETE calls." "Имеется подробная и качественная документация, большое число примеров и драйверов под популярные языки Java, JavaScript, Node.js, C++, C#, PHP, Python, Perl, Ruby, Grails&Groovy." Вроде всё в порядке. Примерно такое же я видел про каждую БД, о которых читал, - MySQL, PostgreSQL и т.п. - везде есть нужные библиотеки/драйвера/API. 3. "С описанной задачей справится любая в умелых руках." - хм. А та же масштабируемость? Собственно, изначально мы и задумались над тем, что надо уходить от MS SQL Server, т.к. плохо масштабируется и на большом количестве данных/запросов можем встрять так, что придётся переходить на другую БД - только слишком поздно. Или, например, статья, которую изучал до того, как задал вопрос здесь: http://nosql.findthebest.com/l/1/MongoDB "Best Use: frequently written, rarely read statistical data" Меня это смутило, т.к. как раз читать будем чаще, чем писать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 18:51 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Igor Makaryev задумались над тем, что надо уходить от MS SQL Server, т.к. плохо масштабируется и на большом количестве данных/запросов можем встрять так, что придётся переходить на другую БД - только слишком поздно. Чем, интересно, тут думали?! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 19:05 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, а Firebird + Firebird ADO.NET Data Provider не пойдет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 19:13 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Igor MakaryevСразу несколько вопросов возникло. Сразу несколько ответов: 1) Нулевой пункт "Которая уже есть у заказчика", поскольку под неё предполагается и наличие инфраструктуры, включая DBA. 2) Заявленная способность работать и наличие .NET провайдера не означают, что оно будет работать хорошо и возможности СУБД будут использованы на 100%. 3) Масштабируемость делается умелыми руками в виде шардинга и прочей кластеризации. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 19:21 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Igor Makaryev По сути, мы уже настроились изучать СУБД "с нуля"/практически с нуля, т.к. есть возможность потратить время на это. Тогда приоритет должен быть у мэйнстрима. Непонятно неприятие Oracle. Условия задачи заточены под MSSQL - ну так берите и работайте или вы благословения ждете. Хотите потыкать в NoSQL - дело ваше, но мое мнение это нишевое решение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 19:22 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
pkarklinIgor Makaryev задумались над тем, что надо уходить от MS SQL Server, т.к. плохо масштабируется и на большом количестве данных/запросов можем встрять так, что придётся переходить на другую БД - только слишком поздно. Чем, интересно, тут думали?! Ммм, я понимаю, что, бесспорно, гораздо проще написать одно слово "facepalm", нежели объяснить, где ошибка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 19:42 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovIgor MakaryevСразу несколько вопросов возникло. Сразу несколько ответов: 1) Нулевой пункт "Которая уже есть у заказчика", поскольку под неё предполагается и наличие инфраструктуры, включая DBA. 2) Заявленная способность работать и наличие .NET провайдера не означают, что оно будет работать хорошо и возможности СУБД будут использованы на 100%. 3) Масштабируемость делается умелыми руками в виде шардинга и прочей кластеризации. 1. Логично 2. Хм, да, понимаю. 3. Окей, но разве тот же MS SQL поддерживает шардирование? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 19:43 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
SERG1257Igor Makaryev По сути, мы уже настроились изучать СУБД "с нуля"/практически с нуля, т.к. есть возможность потратить время на это. Тогда приоритет должен быть у мэйнстрима. Непонятно неприятие Oracle. Условия задачи заточены под MSSQL - ну так берите и работайте или вы благословения ждете. Хотите потыкать в NoSQL - дело ваше, но мое мнение это нишевое решение. А что есть мэйнстрим?) Вы имеете в виду SQL? По сути да, ждём. Почему, например, тот же Twitter / Facebook использует MySQL, а не MS SQL? У них же и сайты не IIS держит, а какой-нибудь ngnix - полагаю, по тем же причинам: виндовые решения кушают уж очень много, а работают помедленнее. Возможно, я не прав - тогда просьба пояснить, где я не прав и куда копать : ) А в каких случаях вы бы рекомендовали обратиться к NoSQL? Ответ на какой вопрос должен привести к этому выбору? P.S. да, у нас опыт есть как раз в использовании MS SQL. И работаем, по большей части, с ним. Но опыта работы с MS SQL в условиях больших нагрузок не было - довольно скептически относимся к использованию данного решения при большом кол-ве запросов, отчего и решили покопать в сторону других СУБД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 19:45 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Igor MakaryevМмм, я понимаю, что, бесспорно, гораздо проще написать одно слово "facepalm", нежели объяснить, где ошибка. Ошибка в Ваших незнаниях возможностей СУБД и архитектурных решений на базе оных. Поэтому, Вам надо не СУБД выбирать, а Специалиста на работу нанять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 19:46 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Igor Makaryevразве тот же MS SQL поддерживает шардирование? Шардирование это в простейшем случае распределение разных данных по разным серверам с тем, чтобы пользователи, работающие с разными данными обслуживались, соответственно, разными серверами. Поддержка со стороны СУБД тут никакая не нужна, достаточно соответствующе запрограммировать клиентскую/апп-серверную часть. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 19:49 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Igor Makaryevнепонятно кол-во пользователей - возможно, 1 000, а, возможно, 1 000 000 не говорите так никому. Под "пользователями" обычно имеется в виду количество одновременных коннектов к чему-то, к СУБД или веб-серверу. Поэтому "миллион одновременных пользователей", особенно в клиент-сервере - это ересь. Кроме того, в случае веб-интерфейса к СУБД обычно используют пул коннектов, так что тут "пользователей" тем более нет. Еще можно в качестве "количества" назвать количество пользователей сервиса. Но это малоинтересно, если их будет миллион, а в день будут заходить на сервер всего 10 человек. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 21:23 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Igor Makaryev А в каких случаях вы бы рекомендовали обратиться к NoSQL? Когда не требуется поддержка ACID. или другими словами когда в данных не содержатся денег. Пропажа (пусть и ОЧЕНЬ маловероятная) комментария, лайка или ч.л. подобного не так неприятна, как пропажа денег. Ну и про Специалиста вам очень верно заметили. Все реляционные СУБД на данный момент - продукт зрелый, и если у вас что-то не получается, то это вы не умеете его готовить. А вот за NoSQL я такого не скажу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 21:32 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovIgor Makaryevразве тот же MS SQL поддерживает шардирование? Шардирование это в простейшем случае распределение разных данных по разным серверам с тем, чтобы пользователи, работающие с разными данными обслуживались, соответственно, разными серверами. Поддержка со стороны СУБД тут никакая не нужна, достаточно соответствующе запрограммировать клиентскую/апп-серверную часть. Вы не совсем правы : ) В SQL Azure пошли дальше . Хотя в приложении конечно в любом случае надо будет обрабатывать. Igor Makaryev, Крайне рекомендую прочесть Вам книгу NoSQL Distilled и/или 7 databases in 7 weeks (обе есть на русском), я думаю после их прочтения вам будет понятней разница подходов. По поводу критики NoSQL на хабре недавно была статья , тоже советую к прочтению. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 23:40 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
начать с того, что-бы посмотреть на чем делаются проекты из той области, что и вы собираетесь делать. Ибо в каждой области есть ньансы. Например в web hiload - решения одни, в тяжелых учетных и банковский системах - совсем другое, итп. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.09.2013, 23:49 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Igor Makaryev, 1) Если вообще не знаете SQL, то или MS SQL (так как он уже хорошо поддерживается студией) или Mongo (так как она как раз для программистов, не сумевших освоить реляционные СУБД). Впрочем, в случае MS SQL большую часть сложности возьмет на себя ORM. 2) Не думайте о масштабировании. Если ваш личный проект взлетит - то сможете поменять подход. Но шансов, что вы вылезете в течении нескольких лет за пределы MS SQL разумных редакций - весьма невелики. 3) Ну а перед выходом в production и наличии финансирования будете смотреть, чьи админы дешевле и доступнее. Например, по монго найти админа, гарантирующего хотя бы четыре девятки и не потерю данных при любых сбоях практически нереально на данный момент ( Впрочем, может вам не важны данные и доступность ) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 03:59 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovIgor Makaryevразве тот же MS SQL поддерживает шардирование? Шардирование это в простейшем случае распределение разных данных по разным серверам с тем, чтобы пользователи, работающие с разными данными обслуживались, соответственно, разными серверами. Поддержка со стороны СУБД тут никакая не нужна, достаточно соответствующе запрограммировать клиентскую/апп-серверную часть. Ага. Примерно представил. То есть на одном шарде я храню одни данные (таблицы), на другом - другие. И обращаюсь, соответственно, к нужному шарду. А как быть в случае, когда бОльшая часть таблиц связана друг с другом (в реляционной БД)? Получается, что на каждом шарде должны быть две одинаковые полновесные БД, а вот обращаться, допустим, за Table1 мы будем к Shard1, а за Table2 - к Shard2, тогда нагрузка будет балансироваться. Но операции изменения записей и добавления придётся делать на каждом шарде. Или я неправильно рассуждаю? P.S. хотя у MySQL есть auto-sharding, когда одна таблица "размазывается" по нескольким нодам кластера БД: http://www.mysql.com/products/cluster/scalability.html P.P.S. задумался, а есть ли у MS SQL Server классическая кластеризация с балансировкой нагрузки? Есть Failover Cluster - с зеркализацией.. kdvIgor Makaryevнепонятно кол-во пользователей - возможно, 1 000, а, возможно, 1 000 000 не говорите так никому. Под "пользователями" обычно имеется в виду количество одновременных коннектов к чему-то, к СУБД или веб-серверу. Поэтому "миллион одновременных пользователей", особенно в клиент-сервере - это ересь. Кроме того, в случае веб-интерфейса к СУБД обычно используют пул коннектов, так что тут "пользователей" тем более нет. Еще можно в качестве "количества" назвать количество пользователей сервиса. Но это малоинтересно, если их будет миллион, а в день будут заходить на сервер всего 10 человек. Хорошо, спасибо за замечание! Но вообще я, в принципе, в виду как раз миллион активных пользователей. Сколько человек пользуются eBay? Думаю, что миллион запросов у них случается) За терминологию еще раз спасибо, учту! SERG1257Igor Makaryev А в каких случаях вы бы рекомендовали обратиться к NoSQL? Когда не требуется поддержка ACID. или другими словами когда в данных не содержатся денег. Пропажа (пусть и ОЧЕНЬ маловероятная) комментария, лайка или ч.л. подобного не так неприятна, как пропажа денег. Ну и про Специалиста вам очень верно заметили. Все реляционные СУБД на данный момент - продукт зрелый, и если у вас что-то не получается, то это вы не умеете его готовить. А вот за NoSQL я такого не скажу. Ммм, в принципе, мы вполне можем "потерять" "лайк". Проект не является каким-нибудь аукционом, где потеря транзакции приведёт к потере денег. Про специалиста - понимаю, но хотим реализовать проект собственными силами. kalimbaDimitry Sibiryakovпропущено... Шардирование это в простейшем случае распределение разных данных по разным серверам с тем, чтобы пользователи, работающие с разными данными обслуживались, соответственно, разными серверами. Поддержка со стороны СУБД тут никакая не нужна, достаточно соответствующе запрограммировать клиентскую/апп-серверную часть. Вы не совсем правы : ) В SQL Azure пошли дальше . Хотя в приложении конечно в любом случае надо будет обрабатывать. Igor Makaryev, Крайне рекомендую прочесть Вам книгу NoSQL Distilled и/или 7 databases in 7 weeks (обе есть на русском), я думаю после их прочтения вам будет понятней разница подходов. По поводу критики NoSQL на хабре недавно была статья , тоже советую к прочтению. Да, есть несколько СУБД, которые поддерживают шардирование, что называется, "по свою сторону баррикад". К тому же разряду относится MongoDB со своим auto-sharding: http://docs.mongodb.org/manual/core/sharding-introduction/ За книги огромное спасибо, постараюсь изучить! А статью да, на днях читал : ) Вот, кстати, по ней же вопрос - касательно шардирования. Вроде шардирование - "распределение разных данных по разным серверам". Окей. Но при этом в статье говорится о том, что "информация должна разойтись по всем нодам кластера" - зачем, если вроде храним разные данные отдельно? Ggg_oldначать с того, что-бы посмотреть на чем делаются проекты из той области, что и вы собираетесь делать. Ибо в каждой области есть ньансы. Например в web hiload - решения одни, в тяжелых учетных и банковский системах - совсем другое, итп. Смотрел. По сути, пожалуй, ближе всего ко всяким Facebook, Twitter (Front-End <-> Back-End) без необходимости хранить тонны переписок и медиа с быстрым клиентом на стороне пользователя, с простыми query. Twitter, Facebook используют MySQL, eBay - Oracle Database. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 05:16 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
DPH3Igor Makaryev, 1) Если вообще не знаете SQL, то или MS SQL (так как он уже хорошо поддерживается студией) или Mongo (так как она как раз для программистов, не сумевших освоить реляционные СУБД). Впрочем, в случае MS SQL большую часть сложности возьмет на себя ORM. 2) Не думайте о масштабировании. Если ваш личный проект взлетит - то сможете поменять подход. Но шансов, что вы вылезете в течении нескольких лет за пределы MS SQL разумных редакций - весьма невелики. 3) Ну а перед выходом в production и наличии финансирования будете смотреть, чьи админы дешевле и доступнее. Например, по монго найти админа, гарантирующего хотя бы четыре девятки и не потерю данных при любых сбоях практически нереально на данный момент ( Впрочем, может вам не важны данные и доступность ) 1) То есть предлагаете просто работать с одиночным instance-ом MS SQL? (ну, в крайнем случае завести FailoverCluster для надёжности) 2) Вот как раз решили задуматься с самого начала над тем, чтобы не пришлось переписывать.. Возможно, действительно лучше сделать на MS SQL, а затем, если возникнет необходимость, смигрировать на другую СУБД. 3) Хм, а почему невозможно? Потеря данных не сверхкритична (всё же не банковская система), а вот доступность важна (собственно, выше я писал про пользователей). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 05:30 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Если у Вас пользователей "1 000, а, возможно, 1 000 000", то стоить взять дорогого(!) проектировщика с опытом реализации таких масштабных задач, который выберет БД проекта и будет отвечать за свое решение. Что Вы хотите услышать на форуме не понятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 07:53 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Igor MakaryevИли я неправильно рассуждаю? Неправильно. Таблицы на всех нодах одинаковые, а вот данные в них - разные. То же самое, что и партиционирование, только не по разным tablespace на одном сервере, а по разным серверам. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 12:49 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovХотя нет, я неправ. Igor Makaryev- Должна быть возможность взаимодействия с СУБД через C# (.NET) Вот этим пунктом ваш список низводится до одной позиции - MS SQL. Больше ни с чем этот ..NET нормально взаимодействовать не умеет. .NET (искаропки!) умеет нормально взаимодействовать с любой СУБД, для которой существует ADO.NET провайдер... На самый худой конец пойдет и ODBC или OLE DB... Криворучие разработчиков приложения, котjрые не могут подружить .net c СУБД, не является достаточным аргументом в выборе СУБД - с точно таким же "успехом" у них будет и MSSQL работать. Кстати, криворучие разработчиков самого ADO.NET провайдера и иже с ним (буде таковые найдутся) тоже не является основанием для отказа от бэкэнд-СУБД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 13:11 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Igor Makaryev1) То есть предлагаете просто работать с одиночным instance-ом MS SQL? (ну, в крайнем случае завести FailoverCluster для надёжности) В начале - да. У вас все равно сейчас нет опыта и навыков для разработки масштабированного решения. И если это стартап, то важнее скорость выхода на рынок. Ну и кластер не факт, что вам нужен, зависит от стоимости простоя. Впрочем, давно не смотрел на администрирование MS SQL, как там сейчас реализуется схема Active-Standby не знаю. 2) Вот как раз решили задуматься с самого начала над тем, чтобы не пришлось переписывать.. Возможно, действительно лучше сделать на MS SQL, а затем, если возникнет необходимость, смигрировать на другую СУБД. Масштабируемые системы - это не только выбор СУБД, это выбор почти всех проектных решений. Которые, даже при наличии опыта, заметно увеличивают стоимость разработки. На раннем этапе, при запуске стартапа, важнее всего быстро выйти на рынок. А уже потом, если стартап взлетит, можно будет тратить ресурсы на масштабирование. Но при этом уже ресурсы будут, наймете какого-нибудь специалиста, благо их довольно много. В конце концов, если делать систему на 1e6 одновременных пользователей, то C# изначально неудачный выбор и придется переписывать почти все. Но вообще я не видел систем, которые не пришлось бы переписывать ) 3) Хм, а почему невозможно? Потеря данных не сверхкритична (всё же не банковская система), а вот доступность важна (собственно, выше я писал про пользователей). Доступность - это сложная и многокомпонентная штука. Например, в Рунете даже три девятки мало какой ДЦ реально обеспечит, значит нужно размазывать систему по нескольким датацентрам. Но тут монго (да и любое другое решение) автоматически не спасет, все равно нужно думать о целостности данных, что и как и где будет храниться и т.п. Но это все задачи на будущее, особенно если нет опыта. С сисадминами под монго отдельная проблема: система молодая, сырая (я не слышал ни об одном реально наруженном продакшене монго, где бы не потеряли данных), книг и документации мало. Поэтому свободного рынка опытных админов-специалистов еще нет. Зато есть куча ньюбов, которые говорят, что монго - это круто, но даже не представляют, а как там внутри все устроено, как именно там обеспечивается надежность и т.п. Увы, только документации "как сделать" - мало, надо еще понимать, а что, как и когда в реальности пишется на диск ) Т.е. крутого DBA под DB2 или PostgreSQL или Oracle я могу найти за разумное время и за разумные деньги. И даже смогу обеспечить "аудит" его знаний - рынок достаточно развит. С монго - увы. Но это уже точка зрения не программиста, конечно, а тех.дира. Для программиста же монго - это способ не учить SQL и пользоваться как-бы "магией". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 13:27 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mvкриворучие разработчиков самого ADO.NET провайдера и иже с ним (буде таковые найдутся) тоже не является основанием для отказа от бэкэнд-СУБД. Зато является основанием для отказа от интерфейса ADO.NET. Потому что его архитектура в принципе может не укладываться в фичи СУБД. Примером тому могут служить навязшие в зубах несколько параллельных транзакций в пределах одного коннекта. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 13:32 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovХотя нет, я неправ. Igor Makaryev- Должна быть возможность взаимодействия с СУБД через C# (.NET) Вот этим пунктом ваш список низводится до одной позиции - MS SQL. Больше ни с чем этот ..NET нормально взаимодействовать не умеет. а Firebird + Firebird ADO.NET Data Provider не пойдет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 14:58 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Gallemarа Firebird + Firebird ADO.NET Data Provider не пойдет? Его просто установить в студии способен не каждый шарпей, а уж использовать и при этом не нагнуть сервер до плинтуса, наверное, только сам автор. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 15:21 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, ого. А вообще с Firebird кроме FIB и IBX что лучше использовать? Не с паскалем (NET,JAVA и прочие) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 15:42 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
GallemarА вообще с Firebird кроме FIB и IBX что лучше использовать? Лично я использую непосредственно API. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 15:49 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovGallemarа Firebird + Firebird ADO.NET Data Provider не пойдет? Его просто установить в студии способен не каждый шарпей, а уж использовать и при этом не нагнуть сервер до плинтуса, наверное, только сам автор.Уточню - это говорит человек, который сам никогда ADO.NET в руках не держал и судит только по (нечастым) воплям в форуме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 15:54 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
hvladсудит только по (нечастым) воплям в форуме. Только дураки учатся исключительно на собственных ошибках. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 17:47 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
hvladDimitry Sibiryakovпропущено... Его просто установить в студии способен не каждый шарпей, а уж использовать и при этом не нагнуть сервер до плинтуса, наверное, только сам автор.Уточню - это говорит человек, который сам никогда ADO.NET в руках не держал и судит только по (нечастым) воплям в форуме. :) Влад,тогда к вам такой же вопрос что и к Дмитрию - а вообще с Firebird кроме FIB и IBX что лучше использовать? Не с паскалем (NET,JAVA и прочие) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 18:15 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Gallemar, ADO.NET нормально работает с FB в рамках своей концепции. Правда да установить драйвер так чтобы можно было нормально разрабатывать в VS не каждый сможет. И до недавнего времени там была путаница с уровнями изоляции. После дельфей проблематично будет сделать скроллируемый грид в который можно загнать миллион записей. Просто надо привыкнуть к другой идеалогии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 19:00 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Симонов Денис,хм, а что там с установкой какие то сложности есть? вроде готовый msi файл лежит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 19:09 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Gallemar, может в последней версии это и исправлено. Раньше нормально ставился только сам драйвер, а вот с мастерами в VS были проблемы. Многое приходилось делать ручками. Тут даже некоторые свои версии инсталяторов выпускали исправляющие данные проблемы http://www.sql.ru/forum/974558/firebird-ddex-2-0-6-provider-dlya-visual-studio-2012?hl=net provider и http://www.sql.ru/forum/936192/instalyator-firebird-tools-dlya-visual-studio-ddex-provider?hl=ddex ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 19:33 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Симонов Денис,понятно. API используют только любители хардкора? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 20:04 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Gallemar, API используют те кто умеет его использовать и где его уместно использовать. Понятное дело при программировании на NET или JAVA проще воспользоваться готовыми драйверами. ДС умеет использовать API и использует его. В основной же массе пользуются готовыми драйверами. А API для тех кто пишет эти драйвера. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 20:27 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Симонов ДенисGallemar, API используют те кто умеет его использовать и где его уместно использовать. Понятное дело при программировании на NET или JAVA проще воспользоваться готовыми драйверами. ДС умеет использовать API и использует его. В основной же массе пользуются готовыми драйверами. А API для тех кто пишет эти драйвера.Область применения API какая? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 20:58 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Gallemar, это что троллинг? Нужно работать наиболее эффективно и ты это умеешь делать с помощью API - делай. Но всё что умеют компоненты надо будет реализовывать самому. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 21:01 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Симонов Денис,любопытство ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 21:02 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
GallemarОбласть применения API какая? Высокопроизводительные приложения, точные данные. IBX, например, принципиально не умеет работать с числами с фиксированной точкой, он их тупо преобразует к плавающей точке. Или теряет миллисекунды из времени. Какие проблемы с данными у драйверов к Java и .NET - мне неизвестно. И выяснять лень. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 21:05 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov,спасибо. Получается используя API в принципе можно не заморачиваться на чем разрабатывать - поведение будет одинаково? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 21:40 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Чьё поведение? Функции API по определению ведут себя одинаково, им пофиг откуда их вызывают. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 22:04 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov,поддерживаются все фичи СУБД. Независимо на чем разарбатываешь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 22:15 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovsphinx_mvкриворучие разработчиков самого ADO.NET провайдера и иже с ним (буде таковые найдутся) тоже не является основанием для отказа от бэкэнд-СУБД. Зато является основанием для отказа от интерфейса ADO.NET.Б.С.К. Dimitry SibiryakovПотому что его архитектура в принципе может не укладываться в фичи СУБД. Ну, и в какие фичи (и, самое главное - какой) реляционной СУБД не укладывается ADO.NET? Dimitry SibiryakovПримером тому могут служить навязшие в зубах несколько параллельных транзакций в пределах одного коннекта. Параллельные транзакции? В рамках одного коннекта? Вы уверены? И даже продемонстрировать примерчиком на C# можете? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 22:27 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
такие программы как Ibexpert или EMS что используют для доступа? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 22:44 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mvНу, и в какие фичи (и, самое главное - какой) реляционной СУБД не укладывается ADO.NET? В любые фичи, отсутствующие в MS SQL. Параллельные транзакции, Array DML, Array data type, database events notification и т.д. и т.п. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 22:48 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
такие программы как Ibexpert или EMS что используют для доступа? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 23:29 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovhvladУточню - это говорит человек, который сам никогда ADO.NET в руках не держал и судит только по (нечастым) воплям в форуме. Только дураки учатся исключительно на собственных ошибках. Dimitry SibiryakovКакие проблемы с данными у драйверов к Java и .NET - мне неизвестно. И выяснять лень. Ты уж определись... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 23:52 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovsphinx_mvНу, и в какие фичи (и, самое главное - какой) реляционной СУБД не укладывается ADO.NET? В любые фичи, отсутствующие в MS SQL. Б.С.К. ADO.NET ни разу не завязан на конкретный тип СУБД. То есть - категорически! Dimitry Sibiryakov Параллельные транзакции, Какие СУБД их поддерживают? В каких случаях параллельные транзакции полезны и применяются? В чем их преимущество перед пулом соединений с единственной отдельной транзакцией для каждого соединения из пула? И кто запрещает в провайдере ADO.NET для соотвтствующей СУБД реализовать поддержку параллельных транзакций? Dimitry SibiryakovArray DML, Array data type, database events notification и т.д. и т.п. В этом месте смеяться или плакать? Беру СУБД Oracle , в котором есть и "array DML", и "array data type" - в нем даже пользовательские объектные типы данных имеются... И конечно же в нем есть "database events notification"... Не говоря уже о том, что Oracle изначально версионник, в отличие от большинства существующих версий-блокировочников MSSQL... Что самое парадоксальное: я беру самый обычный ODP.NET (Oracle Data Provider for .NET) и пользую всю эту туеву хучу фич в самом обычном приложении написаном на C# - и естественно с использованием ADO.NET... Что я делаю не так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 23:53 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
GallemarВлад,тогда к вам такой же вопрос что и к Дмитрию - а вообще с Firebird кроме FIB и IBX что лучше использовать? Не с паскалем (NET,JAVA и прочие)Этот вопрос нужно задать в соответствующем форуме . Здесь это никому не интересно. 2модератор: если возможно, перенесите оффтор в http://www.sql.ru/forum/interbase, спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2013, 23:54 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mvЧто я делаю не так? Используешь интерфейсы непосредственно ODP, а не ADO. Т.е. - специализированное API для конкретной СУБД. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 00:00 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Igor Makaryev, - Важна масштабируемость, т.к. непонятно кол-во пользователей - возможно, 1 000, а, возможно, 1 000 000 Ни одна СУБД так не масштабируется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 00:32 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
MasterZivIgor Makaryev, - Важна масштабируемость, т.к. непонятно кол-во пользователей - возможно, 1 000, а, возможно, 1 000 000 Ни одна СУБД так не масштабируется.А по моему человек не совсем понимает что он пишет. 1000 000 это что за приложение? В 1000 то с трудом веришь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 00:34 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovХотя нет, я неправ. Igor Makaryev- Должна быть возможность взаимодействия с СУБД через C# (.NET) Вот этим пунктом ваш список низводится до одной позиции - MS SQL. Больше ни с чем этот ..NET нормально взаимодействовать не умеет. Да ладно, не придумывай. Сейчас под .net практически у всех есть линки. Ну и накрайняк есть бридж на ODBC. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 00:34 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovsphinx_mvЧто я делаю не так? Используешь интерфейсы непосредственно ODP, а не ADO. Т.е. - специализированное API для конкретной СУБД. Б.С.К. Об архитектуре ADO.NET у Вас весьма слабые (до полного отсутствия включительно) представления. Вы бы по матчасти что-нибудь почитали, что ли - ну, хотя бы в плане архитектуры ADO.NET... Заодно, глядишь, и осознаете место, которое занимают в ней датапровайдеры конкретных СУБД, и какие интерфейсы эти датапровайдеры обязаны реализовывать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 01:38 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mvосознаете место, которое занимают в ней датапровайдеры конкретных СУБД, и какие интерфейсы эти датапровайдеры обязаны реализовывать. ArrayBindCount какие провайдеры реализовывают? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 01:46 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovsphinx_mvосознаете место, которое занимают в ней датапровайдеры конкретных СУБД, и какие интерфейсы эти датапровайдеры обязаны реализовывать. ArrayBindCount какие провайдеры реализовывают? Сферический ArrayBindCount в жидком вакууме? ХЕЗ. А для Oracle (в ODP.NET) он реализован непосредственно в классе Oracle.DataAccess.Client.OracleCommand - "прямом" потомке класса System.Data.Common.DbCommand. "Намекаю" еще раз: разработчики, использующие "левосторонние" провайдеры ADO.NET, которые жалуются на отсутствие каких-то фич, пользу от использования которых они даже не способны описать - это проблема ни платформы dotNET, ни ADO.NET, ни тем более Microsoft. Платформа гарантирует , что библиотеки, реализующие стандартные интерфейсы будут правильно работать на этой платформе. Каждый конкретный вендор должен самостоятельно озаботиться возможностью использования какого-то "исключительно бесполезного функционала" его СУБД. И при реальной заинтересованности не ноют, а реализуют. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 03:40 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Gallemarтакие программы как Ibexpert или EMS что используют для доступа? конкретно эти - модификацию старого FIBPlus. Другие - скорее всего IBX или FIBPlus. некоторые - UIB. С API постоянно работать геморройно, все равно придется обертку писать, а упомянутые компоненты - и есть готовые обертки. sphinx_mvПараллельные транзакции? В рамках одного коннекта? Вы уверены? И даже продемонстрировать примерчиком на C# можете? InterBase/Firebird API поддерживает параллельные транзакции. Соответственно, компоненты типа IBX, FIBPlus, UIB и прочие также реализуют данный функционал. Драйверы типа BDE, ODBC, и скорее всего .Net этого не умеют, потому что у них унифицированная архитектура, расчитанная на совместимость с тучей разных СУБД. Есть, правда, и казусы, типа эмбаркадеровского dbExpress, который, с одной стороны может стартовать одновременно несколько транзакций, но только после старта второй транзакции в первой уже делать ничего нельзя, можно только ее завершить по commit/rollback. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 04:11 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mv И при реальной заинтересованности не ноют, а реализуют. это понятно, что в .Net можно написать например Services API Firebird и использовать его, вы тут аналогичный пример про Оракл привели. Но речь об использовании расширенного функционала штатными средствами. Вот, к примеру, нашел TransactionScope http://stackoverflow.com/questions/224689/transactions-in-net это вроде как похоже. Но до тех пор, пока этого не было, использовать все это было невозможно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 04:19 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
kdvsphinx_mv И при реальной заинтересованности не ноют, а реализуют. это понятно, что в .Net можно написать например Services API Firebird и использовать его, вы тут аналогичный пример про Оракл привели.Чтобы быть ADO.NET-провайдером, в Вашем модуле "Services API Firebird" необходимо и достаточно реализовать стандартные инерфейсы ADO.NET. Расширение функционала этим базовым функциям принципиально не мешает и ограничивается только фантазией и здравым смыслом разработчика. kdvНо речь об использовании расширенного функционала штатными средствами. Все с точностью до наоборот: необходимо использовать штатный функционал в расширенной версии - и это требование соблюдается при обязательной реализации базовых интерфейсов ADO.NET. В среде .NET (и тем более C#) приведение типов наследников (с расширенным функционалом по сравнению с базовым типом) к базовому типу выполняется прозрачно и вряд ли вызовет проблемы даже у программистов, весь опыт разработки которых начинается и заканчивается хэлоуворлдом. Про то, что из наследника непосредственно и полностью доступен весь функционал предка - даже не обсуждается. И нам известно, что главное требование - любой ADO.NET-провайдер должен наследовать "базовый" функционал ADO.NET. Иначе это не все что угодно, но не ADO.NET-провайдер. kdvВот, к примеру, нашел TransactionScope http://stackoverflow.com/questions/224689/transactions-in-net это вроде как похоже. Но до тех пор, пока этого не было, использовать все это было невозможно.Вы свой зуб поставите на то, что до тех пор пока это не стало "стандартным" это нельзя было реализовать "сторонними" средствами? :) Обращаю внимание: ArrayBindCount в "базовом" функционале до сих пор все еще отсутствует, но при этом уже очень давно доступен для использования в "правильных" ADO.NET датапровайдерах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 10:20 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
kdvsphinx_mvПараллельные транзакции? В рамках одного коннекта? Вы уверены? И даже продемонстрировать примерчиком на C# можете? InterBase/Firebird API поддерживает параллельные транзакции. Соответственно, компоненты типа IBX, FIBPlus, UIB и прочие также реализуют данный функционал.Delphi и CBuilder - не единственные средства разработки приложений для работы с базами данных. kdv Драйверы типа BDE, ODBC, и скорее всего .Net этого не умеют, потому что у них унифицированная архитектура, расчитанная на совместимость с тучей разных СУБД.ADO.NET датапровайдер для конкретной СУБД может реализовать ЛЮБОЙ функционал, включая даже совершенно не относящийся к функциям взаимодействия с СУБД. Минимальное (но обязательное) требование - "конкретный" ADO.NET датапровайдер должен реализовать "базовый" функционал (см. документацию ). Напоминаю, что пример как минимум одного датапровайдера (ODP.NET), в котором реализован функционал, отсутствующий в "базовом", приводился. Особых проблем с его использованием не наблюдается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 10:36 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mvADO.NET датапровайдер для конкретной СУБД может реализовать ЛЮБОЙ функционал, включая даже совершенно не относящийся к функциям взаимодействия с СУБД. Что в переводе означает "для использования нестандартных фич СУБД придётся использовать нестандартные интерфейсы конкретного провайдера". КО. Проще будет сразу использовать API, не имеющее ничего общего с ADO. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 12:08 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovsphinx_mvADO.NET датапровайдер для конкретной СУБД может реализовать ЛЮБОЙ функционал, включая даже совершенно не относящийся к функциям взаимодействия с СУБД. Что в переводе означает "для использования нестандартных фич СУБД придётся использовать нестандартные интерфейсы конкретного провайдера". КО. КО на самом деле сказал, что необходимо реализовывать расширения стандартных интерфейсов и пользоваться ими. Но что такое "расширение" Вы себе почему-то представить не можете... Или не хотите... Если выбраная лично Вами СУБД для лично Ваших проектов настолько "нестандартна", что для ее использования в подавляющем числе случаев (совсем чуть-чуть реже, чем всегда) не хватает весьма обширного набора стандартных интерфейсов, то претензии к Вашему выбору СУБД Вы лично предъявляете как-то совсем не по адресу. Да и Ваши выводы Вы строите не в тему - сугубо на "теории" и в рамках категорической нестандартности выбранной и используемой Вами СУБД. Dimitry SibiryakovПроще будет сразу использовать API, не имеющее ничего общего с ADO.Это было на правах рекламы сервера БД, для которого невозможно использовать фактические стандарты программных интерфейсов? Остается только "порадоваться" за Ваш выбор... "Ежики плакали, кололись, но продолжали есть кактус" (с) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 13:11 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mvЭто было на правах рекламы сервера БД, для которого невозможно использовать фактические стандарты программных интерфейсов? Это было очередное заявление Капитана, которому лень искать баги не только в своём коде, но и коде многочисленных прокладок между ним и API СУБД. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 16:15 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovsphinx_mvЭто было на правах рекламы сервера БД, для которого невозможно использовать фактические стандарты программных интерфейсов? Это было очередное заявление Капитана, которому лень искать баги не только в своём коде, но и коде многочисленных прокладок между ним и API СУБД. Капитану как бы уже неоднократно намекалось, что не стоит пользоваться самому (и тем более не рекомендовать этого другим!) отвратительно написанными библиотеками и компонентами с немеряным количеством незакрытых багов в релизной версии. И уж точно не стоило этому капитану делать какие-то далеко идущие выводы на основании своего практически полного невладения предметом и далеко не положительного опыта пользования крайне глючным софтом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 18:03 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mvне стоит пользоваться Ну так я ими и не пользуюсь. И другим настоятельно не советую. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 18:54 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovsphinx_mvне стоит пользоваться Ну так я ими и не пользуюсь. И другим настоятельно не советую. Нет, ну, это просто праздник какой-то! И ведь намекалось Вам неоднократно: когда наберетесь хоть какого-то опыта в использовании конктетной технологии, тогда и будете давать советы по ее использованию. А до тех пор из Вас "эксперт" крайне "исключительного" уровня - весь Ваш опыт упирается в использование единственной СУБД, для которой доступен вменяемо реализованый программный интерфейс практически с единственной средой разработки. С другой стороны, сугубо на основе этих Ваших "супер-советов" легко и непринужденно делается ОЧЕНЬ правильный вывод: как только свяжешься с Interbase/Firebird, проблем огребешь больше, чем пользы. Так что просмотреть Ваш совет, поступить с точностью до наоборот и получить при этом полный комплект плюшек с повидлом - это, в принципе, тоже неплохой вариант. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 23:04 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mv, вы увлекаетесь, это уже становится глупо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 23:10 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
hvladвы увлекаетесь, это уже становится глупо Субъективное мнение? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.09.2013, 23:35 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
pkarklinhvladвы увлекаетесь, это уже становится глупо Субъективное мнение?Иного никому не дано. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2013, 00:15 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovЧто в переводе означает "для использования нестандартных фич СУБД придётся использовать нестандартные интерфейсы конкретного провайдера". КО. Проще будет сразу использовать API, не имеющее ничего общего с ADO. С таким же успехом можно сказать, что ни в коем случае не стоит использовать SQL. Ведь "общий" SQL ограничивает нас стандартизированными возможностями, и через него никак не получить доступ к нестандартным фичам конкретных СУБД. Проще сразу будет использовать конкретный скуль, типа T-SQL, PL/SQL, etc. Нэ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2013, 00:28 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Поясню, а то могу остаться не до конца понятым. Есть стандартный SQL, который знаком большинству разрабов БД. Но он не даёт доступа к нестандартным фичам СУБД. Поэтому приходится использовать расширения языка. Есть стандартный ADO.NET, который знаком большинству дотнетчиков. Но он не даёт доступа к нестандартным фичам СУБД. Поэтому используем конкретные провайдеры под каждую СУБД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2013, 00:32 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
hvladsphinx_mv, вы увлекаетесь, это уже становится глупоЭто, оказывается, я "увлекаюсь"?! Ну-ну... Тут некотрые "очень увлеченные" рассказывают про вкус ананаса не только его не попробовав, но даже ни разу не потрогав его пальцем... А по поводу "глупо"... Вот что действительно глупо, так это пытаться "втирать" всяческую ересь про "кривость", "глючность" и "сырость" технологии ADO.NET, которая (на самом деле) вызывается кривостью, глючностью и сыростью некоторой конкретной реализации ADO.NET-провайдера для одной, вполне конкретной СУБД. Аргументы против этой ереси очень просты - ADO.NET-провайдеры для СУБД от других производителей работают без проявления всех "фобосов и деймосов", к которым апеллируют знатоки и любители, типа, "самого лучшего сервера всех времен и народов"... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2013, 01:34 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mvАргументы против этой ереси очень просты - ADO.NET-провайдеры для СУБД от других производителей работают без проявления всех "фобосов и деймосов", к которым апеллируют знатоки и любители, типа, "самого лучшего сервера всех времен и народов"... И если ты немного вчитаешься, то увидишь, что именно поэтому я и говорил автору использовать MS SQL. Но, видимо, инстинкты борьбы с ветряками слишком сильны... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2013, 01:57 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mvЭто, оказывается, я "увлекаюсь"?!Если это из-за увлечённости, то остаётся вторая версия причин такой желчи... лучше остановимся на увлечённости sphinx_mvТут некотрые "очень увлеченные" рассказывают про вкус ананаса не только его не попробовав, но даже ни разу не потрогав его пальцем...Ага, цитирую: sphinx_mvединственной СУБД, для которой доступен вменяемо реализованый программный интерфейс практически с единственной средой разработки. ... ОЧЕНЬ правильный вывод: как только свяжешься с Interbase/Firebird, проблем огребешь больше, чем пользы."Защищайте" свой любимый ADO.NET сколько влезет (от кого ? зачем ?), но не надо поливать грязью те самые ананасы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2013, 11:19 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovsphinx_mvАргументы против этой ереси очень просты - ADO.NET-провайдеры для СУБД от других производителей работают без проявления всех "фобосов и деймосов", к которым апеллируют знатоки и любители, типа, "самого лучшего сервера всех времен и народов"... И если ты немного вчитаешься, то увидишь, что именно поэтому я и говорил автору использовать MS SQL. Ай, как не хорошо нагло врать на форуме! Вы не рекомендовали! Вы утверждали, что с другими СУБД ADO.NET "не работает": Если Ваш склероз Вас подводит, то Вам сюда - 14867566 : Dimitry SibiryakovIgor Makaryev- Должна быть возможность взаимодействия с СУБД через C# (.NET) Вот этим пунктом ваш список низводится до одной позиции - MS SQL. Больше ни с чем этот .NET нормально взаимодействовать не умеет. Dimitry SibiryakovНо, видимо, инстинкты борьбы с ветряками слишком сильны... Молчало бы уж, врунишко... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2013, 12:39 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mvВы утверждали, что с другими СУБД ADO.NET "не работает": Между "нормально взаимодейстовть не умеет" и "не работает" - дистанция огромного размера. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2013, 12:52 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
hvladsphinx_mvТут некотрые "очень увлеченные" рассказывают про вкус ананаса не только его не попробовав, но даже ни разу не потрогав его пальцем...Ага, цитирую: sphinx_mvединственной СУБД, для которой доступен вменяемо реализованый программный интерфейс практически с единственной средой разработки. ... ОЧЕНЬ правильный вывод: как только свяжешься с Interbase/Firebird, проблем огребешь больше, чем пользы.ХА! Расскажите тогда какое "немеряное" количество средств разработки способно использовать IBX или FIBPlus? Слабо перечислить больше 2? Сумневаюсъ... Перечислить список более-менее работтоспособных ODBC-драйверов (и версии ODBC, которые ими поддерживались) по состоянию на 2002-2004 годы для interbase не затруднитесь? Подсказка один от gemeni (ODBC 2.5) и один от EasySoft (ODBC 3.5). Бюджет решения на "совершенно бесплатном" Interbse с "обязательным" исползованием ODBC на 10 компьютеров подсчитать готовы? OLEDB-провайдер для Interbase уровня "не страшно ставить на продакшн" когда появился помните? Так что Ваши ананасы я видел - реклама зеленых и достаточно "подпрорченых" как высшее технологическое достижение свое дело сделала. Сейчас еще оказывается (не по моим словам!), что и даже сейчас (больше 10 лет развития) Interbase/Firebird в ADO.NET не очень полно реализует "особо востребованные" фичи. [quot hvlad]"Защищайте" свой любимый ADO.NET сколько влезет (от кого ? зачем ?), От кого? и зачем? Например от тех, кто не в курсе, сколько на самом деле СУБД умеют нормально работать. hvlad но не надо поливать грязью те самые ананасыПробовал я эти Ваши ананасы и, соотвественно, имею право выражать свое субъективное мнение, которое, к тому же, объективно подтверждается даже самыми "продвинутыми" ананасоедами. Удачи Вам в поедании незрелых фруктов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2013, 13:20 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovsphinx_mvВы утверждали, что с другими СУБД ADO.NET "не работает": Между "нормально взаимодейстовть не умеет" и "не работает" - дистанция огромного размера. Возьмите линейку и измерьте! В программировании "не взаимодействовать нормально" и "не работать" практически эквивалентны. Хотя чего удивляться, что об этом не знает разработчик, которому ллень разгребать баги в собственноручно писаном коде. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2013, 13:22 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mvВ программировании "не взаимодействовать нормально" и "не работать" практически эквивалентны. Да неужели? Что же это за программирование у вас там, если применение workarounds считается за "не работает"?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2013, 13:29 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mv, так вы что мне доказать-то хотите ? Что 10 лет назад у вас ничего не вышло с Firebird ? Мои соболезнования :) Напомню, я всего лишь попросил не увлекаться словоблудием... Впрочем, я был не прав - это же любимое занятие на этом форуме, я пытался подорвать основы основ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2013, 14:26 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakovsphinx_mvВ программировании "не взаимодействовать нормально" и "не работать" практически эквивалентны. Да неужели? Что же это за программирование у вас там, если применение workarounds считается за "не работает"?.. Так как Вы пропустили очередной прием таблеток от склероза, придется напомнить Вам о Вашем собственном "программировании", в строгом соотвествии с котором это явным образом утверждается. Вот еще одна "напоминалка" из все той же цепочки Ваших рассуждений - 14870049 : Dimitry Sibiryakovsphinx_mvНу, и в какие фичи (и, самое главное - какой) реляционной СУБД не укладывается ADO.NET? В любые фичи, отсутствующие в MS SQL. Параллельные транзакции, Array DML, Array data type, database events notification и т.д. и т.п. Или в Вашем диалекте русского языка "не укладывается (в рамки некоторой технологии)" имеет какое-то более другое значение, чем "не работает (в рамках этой технологии)"?! Ну, тогда Вам стоит забросить программирование и выпустить свой собственный толковый словарь великого русского языка, став в одном ряду с Ожеговым... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2013, 00:18 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
hvladтак вы что мне доказать-то хотите ? Что 10 лет назад у вас ничего не вышло с Firebird ?Не знаю почему, но вот с Informix вышло... С MSSQL получилось... MySQL практически не сопротивлялся... Про FoxPro и Access даже не стоит упоминать... Но вот с таким "классным и замечательным" Interbase полный "попадос"... СУБД, которую, как оказалось, практически ни с чем невозможно интегрировать... Да, и просто достучаться до нее из каких-нибудь неделфи или несибилдера - тот еще марлезонский балет... hvladМои соболезнования :)Рад что у Вас для этого еще остались моральные силы после такой длительной череды "разводов"... Borland... Inprise... Codegear... Embarcadero... hvladНапомню, я всего лишь попросил не увлекаться словоблудием... Это очень сильный аргумент - непосредственно "по теме". Впечатляет. :) hvladВпрочем, я был не прав - это же любимое занятие на этом форуме, я пытался подорвать основы основ.:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2013, 00:20 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mvс Informix вышло... С MSSQL получилось... MySQL практически не сопротивлялся... Про FoxPro и Access даже не стоит упоминать... Но вот с таким "классным и замечательным" Interbase полный "попадос"... Ну я же говорил: не каждый шарпей... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2013, 00:57 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovНу я же говорил: не каждый шарпей... Сделав поправку на то, что Вы не всегда понимаете смысл даже сказанного непосредственно Вами, сделав поправку на то, что Вы весьма часто "не помните"/"забываете" (что по толковому словарю Сибирякова имеет смысл "очень не слегка привираете"), что Вы говорили, а чего на самом деле нет, очень сильно заинтересовало: "не каждый шарпей" что? кто? где? когда? кого? сколько раз? Что помешало Вам, "задокументированному врунишке", закончить эту, типа, "мыслЪ"? Неужто муки от Вашего запоздалого осознания, что стать "шарпеем" гораздо лучшая альтернатива сидению в поезде, который едет неизвестно куда (скорее всего - в тупик)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2013, 02:08 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mv, Уймитесь, не позорьте себя Обсуждаемых технологии, а не людей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2013, 08:38 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
SergSuperОбсуждаемых технологии, а не людейЗа отсутствием у "обсуждаемых людей" малейших представлений об обсуждаемой технологии приходится обсуждать этих людей, а не технологии. К тому же эти люди весьма не против, чтобы их "пообсуждали" - на прямо поставленные им вопросы по технологии им ответить нечем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2013, 09:44 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
Можно закрыть тему? А то какашками стали бросаться ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2013, 10:10 |
|
||
|
Помощь в выборе СУБД для проекта
|
|||
|---|---|---|---|
|
#18+
sphinx_mvSergSuperОбсуждаемых технологии, а не людейЗа отсутствием у "обсуждаемых людей" малейших представлений об обсуждаемой технологии приходится обсуждать этих людей, а не технологии. К тому же эти люди весьма не против, чтобы их "пообсуждали" - на прямо поставленные им вопросы по технологии им ответить нечем.детский сад какой-то приходится... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2013, 11:00 |
|
||
|
|

start [/forum/search_topic.php?author=%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D0%BE%D0%BD%D0%BA%D0%B0&author_mode=last_posts&do_search=1]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
get settings: |
10ms |
get forum list: |
14ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
40ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
96ms |
get tp. blocked users: |
1ms |
| others: | 1549ms |
| total: | 1778ms |

| 0 / 0 |
