Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations SkipVought on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Convincing Boss of SQL Server over MySQL

Status
Not open for further replies.

shaunk

Programmer
Aug 20, 2001
402
0
0
AU
I have a new Boss who is an anti-Microsoft fanatic. He wants to setup a Java/MySQL environment in the middle of a MS stronghold. It's up to us to decide on the platform. We can isolate it from the rest of the network.
It's crucial that we can at least port our database to a Linux platform after development.
I'm trying to lead him away from MySQL onto SQL Server. On reading the literature, MS SQL is tops on price/performance. MySQL doesn't submit itself for benchmarking. MS SQL has stored procedures and DTS. MySQL doesn't support stored procedures. SQL Server is built for transaction processing, MySQL isn't. locally, we have a load of suport for MS SQL, nobody is developing in MySQL.
I believe Java can run on Windows and connect to SQL Server, and so can Linux.
Can anyone give me some leverage on the topic to head him in the right path, especially around portability to Linux.
 
If this is a public web application, there is a significant license cost for MS SQLServer. Personally, I don't think it's an unreasonable request unless you already have the license. The real question is, "can it be done with MySQL?"
-Karl

[red] Cursors, triggers, user-defined functions and dynamic SQL are an axis of evil![/red]
[green]Life's uncertain...eat dessert first...www.deerfieldbakery.com[/green]
 
Before you judge MySQL too harshly look at the book MySQL Enterprise Solutions. It discusses how some very large organizations are effectively using MySQL for their enterprise level servers. I am a MS SQL fan. I am a MS parner and I support many MS SQL implementations. So don't take this as coming from a MS hater.

Simply put there are uses for both servers. If money is a major factor, MySQL is a nice solution. I do believ in any DBMS decision you have to look at more than just the cost of the DBMS software though. You need to consider the cost of maintenance. For example, is there a large pool of MySQL developers in your area? Are they paid more or less the MS SQL developers. I know in our area, MS SQL developers and DBAs get less money than their Oracle counterparts. I believe MySQL developers and DBAs are hard to find and they get lower pay.

Another question is operation systems. Can you get support for Linux? If so, does the distro you are using affect your support? I personally, decided to ante up for SQL from Microsft because I couldn't find reliable support locally for the Linux platform. I know MySQL runs on Windows but all of the tunin and performance documentation is geared towards Linux.

Having said all of that, you need to outline what you need from your DBMS. I would suggest making a list of the features and functionality you must have, would like and don't need. Then compare that list to the available features and functionality in both MySQL and MS SQL.

 
It depends on what your applications are written in... If it's a pre-existing application using say VB and ODBC, then you should probably stick with with MS SQL...

It's pretty hard to beat MS SQL against other databases if you use their proprietary OLE-DB connection in VB/VB.NET/C++/C#, etc.

If your planning on using a new application from scrath, and are going w/ java... Then MySQL should be fine, but remember your going to be missing stored proceedures and views until MySQL 5 comes out.

Also, Linux is definately harder to manage from an IT standpoint since everytime a patch / new version comes out you have to re-compile a grip of stuff. :-(
 

bosses understand money

what you need to do is estimate the cost of training, the cost of additional support expertise, the extra cost of developing in a platform nobody there knows, heck, even the cost of hiring skilled developers

don't ever give the impression the boss is wrong

your job is to do what the boss wants, just make sure he knows what the costs will be up front

this is not a technical question, it is, plain and simple, a money question

and if the boss pays for the additional training, the additional support, and is happy with the inevitable slower project implementations as the existing staff gets comfortable with the new technology, then the problem is ...?



rudy | r937.com | Ask the Expert | Premium SQL Articles
SQL for Database-Driven Web Sites (next course starts March 6 2005)
 
Thanks for the reponses all.

This is a ground-up project with a heavy focus on statistics and large scale number crunching.
This is a two developer project (the boss and me) and neither he or I have experience in Linux. We will be both DBA, Developer and Sys Prog if we go to Linux.
The Linux support in the organisation is nil. The Linux support in the whole region is next to nil.
The My SQL support in the org is nil. In the region I don't know, although the local tech runs courses.
The organisation we sit in is MS support strong on all fronts and has a state wide licence on SQL Server that our unit probably won't have to pay for.
I have a modest skillset in SQL Server, the boss has none.

The only reason I'm entertaining his Linux/My SQL concept is because of the potential sales in the Hospital System in the USA, which from what I can gather is Linux orientated.
So portability is an issue.

Yep, its about money, but if we make the wrong techincal choice, then we pay through the nose down the track.
The other consideration is the learning curve on MySQL and Linux will be dramatic with no local support.
I can't see much argument for Linux (in this environment) , but I have been given enough points in favour of MS to mount an argument against the anti MS sentiment. The lack of stored procedures and views for a start.
 
Ahh. There's a marketing issue! Take this as an opportunity to learn MySQL and Linux.
-Karl

[red] Cursors, triggers, user-defined functions and dynamic SQL are an axis of evil![/red]
[green]Life's uncertain...eat dessert first...www.deerfieldbakery.com[/green]
 
Personally I used mySQL for 3 years. While v3.23 was fraggin shoebox (or better said dBase on roids), 4.1x under InnoDB is actually quite powerful. It supports referential integrity, subqueries, transactions and lotsa other things. Definitely way above web/hobbystic level (forums, banana CMS apps etc), though feature list is only one of many things to consider.
 
Do a formal decision analysis. Get with your boss and the customers of the system and decide what are the important factors in the decision, cost, portability, maintainability, speed, technical skills of staff etc. Place a weighting factor on each one from 1-5 with 5 being the the factors with the most critical importance. assign a rating value to each of the two choices as far as how well it meets each criteria. Again use 5 as the highest value. Multiply each product rating by the appropriate factor and sum the values for each product. You will clearly show which is the winner.

example:
Factor SQL Server MySQL
Speed (5) 5(25) 4(20)
Existing skills(2) 5(10) 1(2)
Cost (4) 5(20) 5(20)
Totals 55 42

This technique makes for an easy sell every time. Especially if you let the managers set up the rating factors for the decision factors. This gives them buy-in onthe final results. Usually I make up a list of the possible factors first and let them rate them and add any they think of that I missed. Generally I do the technical ratings of the alternatives myself and only once has anyone ever disagreed with one and asked to make it higher for an alternative. I have never failed to get the winning alternative chosen for implemetation by management using this technique.

Questions about posting. See faq183-874
Click here to learn Ways to help with Tsunami Relief
 
SQL Sister has the right idea, but take it even deeper. Way back when in the early 1990's we did a database evaluation for our application. Some things to consider:

= Support for standards such as SQL, ODBC, XML, Metadata.
= Cost and Annual maintenance.
= Training required (DBA, developer).
= Features desired and required:
cross platform joins, updatable views, triggers, replication, index types supported
= Support (priority, phone, online, etc)
= Add-ons (OLAP/analysis Services, DTS, data mining).
= Vendor aspects (reputation, financial stability, market share, etc)

There are articles on this stuff out there....








-------------------------
The trouble with doing something right the first time is that noboby appreciates how difficult it was.
- Steven Wright
 
johnherman

I quote
The trouble with doing something right the first time is that noboby appreciates how difficult it was.

and know look at your post. ;-)

Christiaan Baes
Belgium

If you want to get an answer read this FAQ faq796-2540
There's no such thing as a winnable war - Sting
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top