Pull to refresh

Comments 81

Если у вас есть большое количество серверов, на которых необходимо проводить рутинные, повторяющиеся операции, то PowerShell – это отличный выбор.

В целом, на этом можно и заканчивать :)

Какой-то комментарий немного "бесполый" — можно понять в чем его идейная составляющая?

Очевидно, рекламировать консоль в тех случаях, когда вам нужен, например, rundeck очень странно.

Очевидно, рекламировать консоль в тех случаях, когда вам нужен, например, rundeck очень странно.

Спасибо за ссылку на rundeck, интересно будет поближе его рассмотреть. Но в данном случае "реклама консоли" — это просто попытка сказать что с приходом SQL Server на Linux у него (SQL Server) там уже есть хороший друг и товарищ — Powershell, помогающий очень сильно облегчить администрирование этой базы данных.

Powershell — это фреймворк, который, к примеру, позволяет создавать замечательные DSL для деплоймента SQL-проектов. Консоль — всего лишь один из возможных runtime для так называемого powershell host. Один и тот же cmdlet я могу запустить из консоли, напрямую в CLR, из IDE (e.g. Visual Studio), CI-сервера (e.g. TeamCity) и… упомянутого вами же rundeck. В общем powershell + rundeck/chef/puppet/Powershell DSC/Ansible /Teamcity/Jenkins замечательно решают вопросы развертывания комплексных проектов. Сам rundeck — это просто «runner», никаких преимуществ при работе с SQL Server не дающий.

Существенных преимуществ сразу несколько:


  1. Вам не нужно логинится на хост.
  2. Вам не нужно хранить ваши скрипты на каждом хосте отдельно, что решает огромный пласт проблем.
  3. Ваши скрипты и джобы гораздо проще запускать.
  4. Вы можете гибко разделять кто и какие скрипты может запускать.
  5. Вы можете отслеживать запуск скриптов автоматически.

Powershell — это фреймворк, который, к примеру, позволяет создавать замечательные

Это вроде была командная оболочка. Довольно слабая альтернатива тому же bash с unix мира, хотя и с несколькими интересными штуками.


Суть моего коммента была в том, что утверждать, что powershell — все что нужно нельзя, так как это далеко не так.

Это вроде была командная оболочка. Довольно слабая альтернатива тому же bash с unix мира, хотя и с несколькими интересными штуками.

Как вы сказали в первом комментарии: «В целом, на этом можно и заканчивать». С таким уровнем информированности и смешным списком преимуществ спорить очень сложно. Давайте я назову Powershell «командной оболочкой» для SQL Server? А почему нет:

PS> Import-Module sqlps
PS> cd SQLSERVER:/SQL/<host>/<instance>/Databases/<db>
PS> ls Tables | %{ $_.RebuildIndexes(); $_.UpdateStatistics(); }
PS> ls LogFiles | %{  if ($_.UsedSpace -gt 1GB) { $_.Shrink() }}

Сколько у вас уйдет времени, чтобы написать похожий джоб для rundeck? На bash?

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

PS> Invoke-Command -ComputerName (cat servers.txt) -ScriptBlock {  ls Tables | … } -JobName "SqlJobA" -ThrottleLimit 16 -AsJob

, где Invoke-Command -AsJob можно заменить на New-ScheduledTask и т.п., а «cat servers.txt», скажем, на красивый LDAP-запрос типа Get-AdComputer -Filter { SomeProperty -match SomeValue }.

Я попробую привести пример, как это работает (при этом «командная оболочка» не используется НИ РАЗУ). Есть удобный DSL, который описывает SQL-проекты вроде:

Revision 0.2.548 {
    File "specific-script.sql"
    Template -Crud -From SomeProject.SomeNamespace.SomePocoClass
    Import -From somedata.csv -To SomeTable
    ps {
        cd ./<db>/Tables
        ls | %{
            $_.RebuildIndexes();
            $_.UpdateStatistics();
        }
        ..
    }
}

Этот DSL — Powershell. Есть другой стандартный DSL — Powershell DSC, который описывает инфраструктуру и он тоже Powershell.

Configuration SomeConfig {
    Node SQL1 {
        SqlProject ProjectA {
            …settings…
        }
        SqlProject ProjectB -Slave
    }
	
    Node SQL1 {
        SqlProject ProjectA -Slave
        SqlProject ProjectB {
            …settings…
        }
    }
}

Этот конфиг уходит на Powershell DSC pull server, откуда ноды его разбирают и конфигурируются. Снабжая меня отчетами через Powershell DSC report server. Вам, как рекламному агенту rundeck это должно что-то напоминать ;)

Там, где-надо, я использую task-based DSL вроде PSake, где нужно — покрываю тестами на Pester. Это то, что в одиночку может «командная оболочка» Powershell. А дальше уже вопросы вкусов. Вы завернете в Rundeck, Вася, у которого приватное облако крутится на System Center Operations Manager, естественно использует его. Петя может прикрутить к Jenkins, поскольку он уже трудится на ниве continuous delivery и т.п.

Конкретно для работы с SQL Server Powershell — очень хороший инструмент. И нигде смысловой сентенции, что «powershell — все что нужно» я у ТС не заметил.

Станислав, спасибо большое за развернутые комментарии.


Не могли бы посоветовать статьи, конкретные примеры по использованию:


удобный DSL, который описывает SQL-проекты вроде
Revision 0.2.548 {
File "specific-script.sql"
Template -Crud -From SomeProject.SomeNamespace.SomePocoClass
Import -From somedata.csv -To SomeTable
Данный DSL — собственная разработка. Возможно, стоит её выложить на github :)
Возможно, стоит её выложить на github :)

Если будет возможность и время сделайте пожалуйста, будет очень интересно изучить, обещаю pull requests.

C# ведь тоже можно использовать для административных задач?
Есть в чём-то у Powershell преимущество перед ним?
ЗЫ Я для домашней автоматизации вообще VBS использую.
Visual Basic/VBA тоже можно использовать для административных задач, но вы же используете VBS. Я думаю все преимущества REPL давно расписаны. Большинство мелких административных задач на Powershell сравнимы по трудоемкости с вызовом одного только MSBuild, чтобы скомпилировать ваше приложение, а его ещё надо написать.
Заканчивать нужно было пораньше. Сразу после

Соответственно, за 10 лет в IT я познакомился, фактически, со всеми реляционными базами данных, потому что, помимо PostgreSQL, Oracle и SQL Server, мне пришлось активно работать и с MySQL.

список RDBMS

Возможно не так активно как интервьюируемый, но лично довелось поработать кроме 4-х вышеуказанных БД с
* Firebird
* SQL Anywhere
* dBase
* SQLite

И ощущение что познакомился «фактически, со всеми реляционными базами данных» — не возникло.
UFO just landed and posted this here
Для «распространенности» нужно принять во внимание число инсталляций?
Ну так Microsoft Access и SQLite побьют, пожалуй, всех в этом списке.

Я не знаю что означают эти цифры в рейтинге. И значит ли это что PostgreSQL в 4 раза реже встречается в работе?
UFO just landed and posted this here
Ну читать-то и я умею.

Другой вопрос, читали ли вы это, прежде чем писать о
самыми распространенными
UFO just landed and posted this here
Ок, я вам объясню.

Красивые девушки очень популярны, но не очень распространены.

Такая аналогия доступна для понимания?
UFO just landed and posted this here
Ну то есть вы не читали. И не понимаете разницу между бегающими и кричащими «вау» и теми кто реально работает с этими продуктами.

На этом можно ветку закруглить и мнение ваше более в расчет не принимать.

Вы уводите спор в совершенно другое русло (кстати что вы в итоге пытаетесь доказать — что вы круче всех в мире реляционных баз данных, а я вам даже в подметки не гожусь? Если да, то отлично, я с вами согласен.). Каким образом можно сравнивать SQL Server и SQLite — данные 2 продукта находятся в совершенно разных весовых категориях и используются для решения разных задач.

Нет никакого спора. Есть неудачник неразбирающийся в терминах «популярный» и «распространенный».

Что касается опыта в работе с БД, то я не DBA.

Если вам требуется квалифицированное мнение, то обратитесь на sql.ru. Там имеются специалисты более чем с 20-тилетним опытом работы с разными БД.

P.S. MySQL и SQL Server тоже находятся в разных весовых категориях, но вас это сравнение не смутило.
Нет никакого спора. Есть неудачник неразбирающийся в терминах «популярный» и «распространенный».

А я думаю все откуда такая агрессия, теперь понятно.


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

UFO just landed and posted this here

Спасибо за комментарий, действительно слишком пафосно фраза была построена, заменили на другую. По поводу вашего списка из википедии: с тем что вы привели в качестве своего дополнительного портфолио я тоже работал (SQLite так вообще огромный помощник в любом начинании) + еще DB2, Access (сколько он крови продолжает пить), FoxPro и прочие SAP творения, а вот остальные 3 (SQL Anywhere, dBase, Firebird) надо бы уже похоронить и не использовать в новых проектах (если вам повезло столкнуться с жестким легаси — сочувствую, понимаю эту боль).

Возможно, я заблуждаюсь, но кроме этих 4 баз данных, остальные на рынке представлены крайне мало, а SQLite вообще не нуждается в администрировании (файлик же).


На остальные можно в целом забить, как на погрешность.

Вы все же заблуждаетесь.


Остальные едят свой кусок пирога и пока умирать не собираются.


Даже прадедушка dBase, диалектом которого является Foxpro и о чем, к удивлению, не знает местный специалист по БД

Господин Fortop (к сожалению не знаю вашего имени) я уже признал ваше величие и мудрость, будьте снисходительны как вы любите выражаться к неудачникам. Мера моего незнания — бесконечна, не унижайте меня больше пожалуйста вашим бодрящим и искрометным сарказмом, для этого есть ресурс избранных sql.ru, который вы рьяно продвигаете. Вот лет через 10 если меня также сильно обидит жизнь я буду продолжать неустанно практиковаться, то может быть мне удастся влиться в сообщество мудрых, но самое главное добрых и отзывчивых людей, ярким представителем которого вы являетесь.

А еще лучше пойдите на встречу и сделайте первый шаг — начните Open Source проект, который поможет людям лучше разбираться в мире реляционных баз данных, выложите свой код на Github, чтобы было на что равняться или просто хотя бы улыбнитесь.
Когда закончите паясничать, тогда и поговорим.

Пока вы просто подтвердили свое качество специалиста своим шутовством и апломбом.

Начните с написания действительно полезных технических статей.
И будут вам почёт и уважение.

P.S. Ну и, да, профиль на github гуглится легко.
Правда вам это не поможет
Остальные едят свой кусок пирога и пока умирать не собираются.

Cobol все еще ест свой кусок пирога и умирать не собиратся. Prolog тоже.


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

Просто для информации MS Access вполне себе файловая СУБД, как вы изволили выразиться.
И даже по непонятным рейтингам опережает SQLite.

Я могу ошибатся, но MS Access скорее всего используются в тех же местах, что и MS Excel, просто что бы сделать excel с формочками.


Я за свою не очень долгую жизнь пока видел только такое применение. В IT проектах MS Excel как-то не видел.

Есть большое число «мелких» IT проектов где Excel это основной инструмент.

Что касается более крупных вещей, то практически каждая CRM/ERP система предусматривает выгрузку данных в него для дальнейшего анализа

Мне кажется довольно странным, когда вместо того, что бы использовать функционал CRM/ERP, ребята будут делать цепочку CRM/ERP -> Excel -> MS Access и нанимать для него еще разработчиков.


MS Access занимает только одну нишу — когда у вас нет CRM/ERP систем и вам не хочется тратить на нее деньги. В других случаях какой смысл его выбирать?

CRM/ERP система есть, но функциональность не устраивает до конца, доработка очень дорога, а возможность импорта/экспорта есть.

CRM/ERP, но не дорабатывается под нужны бизнеса, с большой долей вероятности — ее нет.


Ну или вам повезло)

Доработки могут быть очень дорогими и(или) не оперативными, по крайне мере если соблюдать лицензионные соглашения.

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

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

В других случаях какой смысл его выбирать?

Тогда когда эти системы избыточны для ваших нужд.

Инвентарный учет в мелком складе.
Частный предприниматель с его задачами и т.д. и т.п.
Да большинство мелких компаний с количеством работников до 100 человек.

Мне кажется довольно странным, когда вместо того, что бы использовать функционал CRM/ERP, ребята будут делать цепочку CRM/ERP -> Excel

Вот на этой цепочке и остановитесь.

Excel это чрезвычайно гибкий инструмент учета и анализа на низком уровне.
Да большинство мелких компаний с количеством работников до 100 человек.

У вас тут уже нужен онлайн-документ. Иначе будет больно)


Excel это чрезвычайно гибкий инструмент учета и анализа на низком уровне.

Против него я ничего не имею, но это не база данных. Зачем же MS Access?

Иначе будет больно

Как ни странно, но не будет.

Зачем же MS Access?


Затем что сам Excel при удобстве анализа и обработки предоставляет крайне слабые возможности по контролю целостности и корректности данных.
Access в этом плане намного мощнее
UFO just landed and posted this here
Достаточно сравнить стоимость «полноценной БД» и Access и свои нужды.
Очень часто мелкому и даже среднему бизнесу возможностей последнего достаточно. А разница в цене это практически годовая зарплата инженера достаточно неплохой квалификации.

Так что какие тут комплексы, если деньги :)
Access дешевле, чем SQL Server Express?
Несомнено.

Вы юзабилити того и другого сравнивали?
С формошлепством Access и SQL Server, который требует полноценного инженера.
Мне всегда странно читать такие заявления. Я c 2005 года работаю с СУБД, с остальными поверхностно — могу установить, настроить, написать запросы и т.д. С MS SQL работаю очень плотно и как а дмин и как разработчик и архитектор. И даже за 12 лет я как то не могу считать что я его на 100% ЗНАЮ. Там столько ньюнсов, а практика обычно столько не затрагивает, и даже узнав что то, но не используя в практике это забывается. А тут за 10 лет распыление на все БД. У меня вон замечательная память, и если я за месяц прочитаю кучу книг, то тоже смогу вести лекции, да тем более с готовыми примерами. А вот проявить себя как спец на практике уже вряд ли.
в тексте сказано «познакомился», а не «на все 100% знаю». Странная ветка. Придрались к фразе и развели пустую демагогию.
И даже за 12 лет я как то не могу считать что я его на 100% ЗНАЮ

Я же нигде такого не утверждал.


А тут за 10 лет распыление на все БД

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

То есть если нет и не планируется Windows, SSMS, PowerShell и C#, то переход на MS SQL приведёт к значительному усложнению разработки и администрирования СУБД?


По опыту работы с продуктами других вендоров, которые с большой задержкой стали делать Linux-версии, на помощь комьюнити тоже мало надежды. Оно зачастую даже не понимает абсолютно корректно и исчерпывающе поставленного вопроса типа "как подключить к системе XXX версии 8.3 с СУБД YYY версии 9.4 как внешний источник данных СУБД YYY версии 9.4. Всё под ОС ZZZ 7.0 крутится" — начинают рассказывать про "Пуск", реестр и т. п.

То есть если нет и не планируется Windows, SSMS, PowerShell и C#, то переход на MS SQL приведёт к значительному усложнению разработки и администрирования СУБД?

Я так понял вопрос касается эксплуатации SQL Server только в среде Linux? Если да, то:


  • Powershell уже как год кроссплатформенный (так что администрирование, которое очень удобно именно через Powershell за исключением некоторых ньюансов будет тем же)
  • SSMS с высокой долей вероятности портируют под Linux (как только это будет сделано для Visual Studio), также существуют альтернативы SSMS и под Linux

В целом же, согласен что на текущий момент времени разработка на Linux под SQL Server менее удобна чем в среде Windows, но Microsoft прикладывает огромные усилия для улучшения данной ситуации (например, совсем не давно вышли 2 новые утилиты DBFS и mssql-scripter


По опыту работы с продуктами других вендоров, которые с большой задержкой стали делать Linux-версии, на помощь комьюнити тоже мало надежды. Оно зачастую даже не понимает абсолютно корректно и исчерпывающе поставленного вопроса типа "как подключить к системе XXX версии 8.3 с СУБД YYY версии 9.4 как внешний источник данных СУБД YYY версии 9.4. Всё под ОС ZZZ 7.0 крутится" — начинают рассказывать про "Пуск", реестр и т. п.

А вот здесь, как не странно, все очень и очень не плохо. В последнее время обозначился очень активный тренд переноса всех наработок в области SQL Server в Open source в целом и на Github в частности (в статье есть ссылка на список очень хороших и полезных проектов на Github). Также сообщество у SQL Server очень отзывчивое, всегда придут на помощь и охотно делятся информацией.

Я так понял вопрос касается эксплуатации SQL Server только в среде Linux?

Правильно поняли. Но я не об использовании портированных с Windows инструментов, а об использовании классических для Linux подходов к администрированию — (ba)sh, конфиги и т. п. А так не удивлюсь, если MS вместе с MS SQL Server и Powershell MS портировала как их зависимости в каком-то виде и реестр, и (D)COM, и .Net, так что администрирование SQL будет не "ещё один SQL сервер под Linux", а "MS SQL Server под какой-то странной, но бесплатной Windows" :)

Да они (Microsoft) вроде наоборот Linux на Windows перетаскивают) Подробнее о принципах портирования SQL Server написано здесь — https://blogs.technet.microsoft.com/dataplatforminsider/2016/12/16/sql-server-on-linux-how-introduction/


Ну и разве не классно что теперь можно:


sudo apt-get install -y mssql-server

Судя по статье (я, конечно, прочитал ее только мельком) там все именно так, как и опасается VolCh.


. Creating SQLPAL enabled the existing Windows dependencies to be used on Linux with the help of parts of the Drawbridge design focused on OS abstraction while leaving the key OS services to SOS. We are also changing the SQL Server database engine code to by-pass the Windows libraries and call directly into SQLPAL for resource intensive functionality.

Они завезли свой шабаш с идеологически неправильной конфигурацией и, скорее всего, next-next-кликингом.


Может я и ошибаюсь, но пока похоже на это

apt мелочь по сравнению с конфигурированием. И да, по вашей ссылке получается, что они запускают SQL Server под прокладкой типа WINE, частично реализующей, частично транслирующей вызовы Win32 и ко в Линукс.

Но а что в этом плохого? Все равно SQL Server закрытый продукт, так что в любом случае это черный ящик, который хорошо должен делать свою работу, какая разница как он это будет делать в среде Linux если на выходе у конечного пользователя будет нужный результат?

Кроме конечного пользователя есть ещё разработчики и эксплуатация.

А вот здесь, как не странно, все очень и очень не плохо.

Open Source — не панацея, к сожалению. Основная проблема в сообществе, которое будет все равно советовать варианты в духе "Поставь powershell и вжух-вжух-вжух" и так далее, которые работают на Windows.

Это хорошо если сообразят, что powershell вообще ставить нужно.

Если кратно —
парни, очень хочется получить MVP по MS SQL
:)

Хочется, но для этого надо сделать гораздо больше всего, мне это еще долго не светит, но желание бесспорно имеется)


Есть такой замечательный профессионал в мире SQL Server — Дмитрий Пилюгин (крайне советую его грандиозный блог по внутренностям SQL Server — http://www.queryprocessor.com/, есть русская версия http://www.queryprocessor.ru, но она к сожалению реже обновляется в связи с низким интересом в зоне .ru к SQL Server), так вот он проделывает огромную работу по анализу и популяризации SQL Server и у него все 3 MVP (всего — потому что у него больше половины статей заслуживают звания MVP).

У вас ошибочное понимание звания MVP. Это не признание знаний, это признание активности…
К сожалению, ценность данного звания не очень высока. Есть люди без этого звания, с грандиозными знаниями в этой области — например, Brent Ozar.
Есть люди без этого звания, с грандиозными знаниями в этой области — например, Brent Ozar.

Brent Ozar очень не удачный пример — у него аж 7 MVP на текущий момент (это конечно сильно меньше чем 20 у легендарного в определенных кругах Aaron Bertrand), и да, они очень крутые (это не совсем один человек — это команда под его именем для тех кто не в теме), чего стоят только их статьи и курсы, я уже не говорю про SQL Server First Responder Kit.


К сожалению, ценность данного звания не очень высока

Ценность в данном случае понятие относительное — статус MVP не сделает тебя богатым или знаменитым, это признание твоих заслуг со стороны людей, для которых стэк Microsoft помогает зарабатывать деньги. И я не в коем случае не причисляю себя к данным людям, просто стараюсь по мере своих сил вести популяризацию SQL Server, т.к. данная база лично мне помогает уже более 5 лет выполнять мои служебные обязанности.


Еще полезный список SQL Server профессионалов я веду здесь или без сортировки и поиска на github: удобно сразу вставить твиттер или блог если надо сослаться на кого-то из них.

Это признание исключительно со стороны MS, стоит тебе поругать MS или что-то с ним связанное и твое звание отзовут.
С Брентом вышел промах, согласен… Кстати, такое ощущение что люди там меняются, мне казалось что там раньше была Kenda Little.
Это признание исключительно со стороны MS, стоит тебе поругать MS или что-то с ним связанное и твое звание отзовут.

Ну насчет этого не знаю, не слышал чтобы кого-то лишали звания MVP, интересно было бы прочитать про такое событие.


Кстати, такое ощущение что люди там меняются, мне казалось что там раньше была Kenda Little.

Да, она и еще Jeremiah Peschka более года назад покинули его команду. Kenda Little помимо своего интересного блога пробует запустить собственный проект по обучению SQL Server и он пока до конца года абсолютно бесплатен — https://sqlworkbooks.com, а Peschka ударился в Rust и выпал из моего поля зрения. Но к ним на замену пришли очень хорошие специалисты — Tara Kizer и Richie Ramp (https://www.brentozar.com/team/), последний кстати один из главных создателей PasteThePlan — удобного сервиса по обмену планов выполнения запросов SQL Server.

Это признание исключительно со стороны MS, стоит тебе поругать MS или что-то с ним связанное и твое звание отзовут.
С Брентом вышел промах, согласен… Кстати, такое ощущение что люди там меняются, мне казалось что там раньше была Kenda Little.
По поводу тезиса «Oracle сильно дороже MSSQL» — неплохо-бы какие-то цифры привести, т.к. в последнее время с ростом функционала MS сильно поднимал и цены — на сегодня я не уверен в его «дешевизне».
По поводу тезиса «Oracle сильно дороже MSSQL» — неплохо-бы какие-то цифры привести

Спасибо за замечание. Я не занимаюсь отслеживанием динамики цен на данные продукты, но мою оценку я взял из этой статьи Please, Please Stop Complaining about SQL Server Licensing Costs and Complexity от августа 2016 года. Также есть похожая статья, но уже сравнение DB2 с Oracle: Tired of Oracle’s exorbitant pricing? Try IBM’s DB2 v10.5 on Power8!, поверхностно посмотрев цены Microsoft я сделал вывод что они сопоставимы с DB2. Oracle я подробно не разбирал, доверившись цифрам приведенным в статьях.

Крайне некорректное сравнение.
Да, Oracle лицензирует все опции отдельно, но по факту все они редко когда нужны. А к MS SQL нужно автоматом добавлять и стоимость Windows.
В базе — лицензия Oracle дороже в два раза в пересчете на ядро, но при лучшей производительности, при возможности работать на более быстрых ядрах (в сравнении с Intel) разница не просто нивелируется, но и наоборот.


Во вторых, опции сравнивать один в один нельзя, они не являются идентичными.
Ну и в-третьих, если переформулировать, то при тех же возможностях, что и Oracle DB, MSSQL… пока еще не придумал аналогов (например, оптимизация SW и HW на низком уровне).


В общем, считать на стоимость ядра нужно, а стоимость решения аналогичной задачи.
И в этом случае перевес может быть как в сторону MS SQL, так и в сторону Oracle, MySQL, PosgreSQL и пр.

Крайне некорректное сравнение.

После такого начала ждешь ссылки на проведенные исследования, чей-то подробно описанный опыт, когда Oracle оказался по цене сопоставим с SQL Server или DB2, а получаешь дальше вот что:


Да, Oracle лицензирует все опции отдельно, но по факту все они редко когда нужны.

А если все таки нужны?


А к MS SQL нужно автоматом добавлять и стоимость Windows.

Может быть вы немного пропустили, но вот уже есть SQL Server 2017 (правда пока только CTP 2.1), цель которого как раз оказать конкуренцию Oracle и PostgreSQL на Linux. Но даже не в этом суть, вы же наверное посмотрели цифры, приведенные в моих ссылках (или сразу минус влепили — про минус это мое предположение)? В первой из них стоимость SQL Server Core Engine (16 cores) — $109,980.00, Oracle Database Engine — $380,000.00, стоимость лицензии на Windows Server 2016 — в районе ₽40,000 (можно округлить до $3,000 если нужно много CAL), внимание вопрос: не кажется ли что стоимость Windows Server в большинстве случаев настолько мала по сравнению со стоимостью базы данных, что ею можно пренебречь?


Во вторых, опции сравнивать один в один нельзя, они не являются идентичными.

Абсолютно согласен что в один в один нельзя, но почему оценочно нельзя сравнивать? Если мне допустим для проекта просто жизненно необходим Columnstore, то разве это не аргумент оценочно равный $184,000.00 в пользу SQL Server?


В общем, считать на стоимость ядра нужно

Я посчитал чуть выше (основываясь не на своих цифрах, но по мне они близки к реальности), можете привести свой расчет?


Ну и в-третьих, если переформулировать, то при тех же возможностях, что и Oracle DB, MSSQL… пока еще не придумал аналогов (например, оптимизация SW и HW на низком уровне).

Про оптимизация SW и HW на низком уровне в Oracle ничего толкового не знаю, не могли бы вы дать больше информации (насколько они сильно помогают)? И какие еще уникальные возможности есть в Oracle (интересно было бы прочитать про их выгоду на реальных проектах), оправдывающие его цену?


а стоимость решения аналогичной задачи

Помогите пожалуйста хотя бы ссылками как правильно сравнивать по стоимости разные базы данных (интересует четверка Oracle, MySQL, PostgreSQL, SQL Server), меня этот вопрос действительно интересует.


В целом у вас очень выигрышная позиция: для каждой задачи нужно использовать свой инструмент (гвозди и молотки), я с ней абсолютно согласен. Но пожалуйста приведете таблицу обоснованных цифр, которые опровергнут мое высказывание Oracle сильно дороже MSSQL? Можно прям какой-нибудь очень специализированный проект где такое событие произошло.


Я никак не связан с Microsoft и даже не знаю не одного человека, работающего в нем, мне действительно интересно почему в приведенных мною ссылках выше Oracle получается в среднем в 10 раз дороже DB2 и SQL Server?

пара комментов:
1.
стоимость MS SQL ~ 1,5 млк руб ~ $25 k (поправьте меня, но вроде ценник такой, там в рублях рост по 15% в год, если не ошибаюсь)
16 ядер = 8 CPU = $200k
это половина от стоимости Oracle

2. Про Linux — ну вы же не серьезно. Пока это не боевой вариант, но скоро — да, будет альтернатива.
ну а про Unix — это только в мечтах.
поэтому платформы типа Sparc и Power — без варинтов.
частота Sparс сейчас в два разы выше, памяти там тоже больше ощутимо.
т.е. даже по физике они существенно обходят интел

3. про интеграции SW и HW — вот можно почитать:
https://habrahabr.ru/company/muk/blog/307082/
это маркетинг, конечно, но суть верная
а суть в том, что Oracle часть операций выполняет на сопроцессоре, и это ускоряет аналитические запросы, например, в десятки раз (опять же, просто физика)

4. Базы сравнивать — дело неблагодарное, как и машины — кому-то седан, кому-то кроссовер.
для сайта вы возьмете одну, для КХД — другую, под 1С — третью, для самописных изысканий — четвертую
и всегда это будут лучшие варианты.

Мы побеседовали с Константином Тарановым, разработчиком и администратором баз данных в компании Газэкономика ...

Я думал, что разработчик БД и АБД в одном флаконе — это удел только микрокомпаний, чья основная деятельность далека от ИТ.
UFO just landed and posted this here
UFO just landed and posted this here
А тут за 10 лет распыление на все БД

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


Есть какой то антагонизм?

Нет. В данном топике был антагонизм по отношению к пользователю Fortop, т.к. он слишком грубо по моему субъективному мнению раздает ярлыки "неудачники" и непрофессионалы. Вот он как раз привел в пример хорошего сообщества sql.ru, что в совокупности с предыдущими отзывами привело к излишней агрессии с моей стороны.


Почему почти все ссылки только на англоязычные ресурсы?

Дайте мне ссылки на русские ресурсы, я с удовольствием их добавлю. Кроме русскоязычного блога Дмитрия Пилюгина (который он в свое время даже забросил из-за низкого интереса русскоязычных читателей) ничего толкового не находил (но это мое опущение, особо не старался найти, если вы посоветуете хорошие ресурсы, то буду очень благодарен). У меня сложилось впечатление, что SQL Server очень не популярен в России, что я и пытаюсь в меру своих сил немного исправить.


Из того что мне удалось найти:


Вот он как раз привел в пример хорошего сообщества sql.ru


Ну-ну.
А между тем я приводил его как место где легче можно найти профессионала в теме.

Вы же умудрились прочитать про какую-то «хорошесть» сообщества. Что в очередной раз демонстрирует ваши личные когнитивные качества.

Для личных оскорблений отлично подходит личка. Соревнование в остроумности "завуалированных" оскорблений и выглядит нелепо, и приводит к результату прямо противоположному ожидаемому ;)

Я даже стесняюсь спросить.


Какой по вашему мнению я ожидал результат?

Со стороны больше всего похоже на банальнейший троллинг.
Его цели слишком хорошо известны чтобы еще и их обсуждать.

Сентенции «неудачник» «я не дба» «акцесс рулит» «идите на sql.ru» и наконец из последнего «Что в очередной раз демонстрирует ваши личные когнитивные качества.» ни малейшего отношения к тематике основного пиара статьи не имеют.

Более того, боюсь вам все равно на кого изливать сие, так что заранее откланиваюсь.

Человек действительно неудачник запутавшийся в терминах популярные и распространенные :)


Не DBA — чёткое ограничение уровня уже моей компетенции.


Access не рулит, но имеет свою весьма широкую область применения.
Отрицать которую могут только недостаточно компетентные в этом вопросе люди.


sql.ru профильный ресурс по базам данных с достаточно широким кругом хороших специалистов по обсуждаемой теме.


И вам это все так не понравилось, что вы приняли это близко к сердцу? :)

Sign up to leave a comment.