What is our primary use case?
We are a solution provider and SQL Server is one of the products that we implement for our clients. People use SQL Server primarily for business intelligence.
If you have Navision or Dynamics AX, and you need a data warehouse to be able to improve the performance of your business, then that is what our company does.
For this review I will describe one of our clients. They are a large company that owns convenience stores, and they do several billion euros a year in business world wide. The convenience stores are located in large travel hubs like airports, train stations, office buildings, and large supermarkets. Everyone who flies/travels a lot has shopped in their stores. In Romania, they have 300 stores and sell between 300,000 and 500,000 items a day across the network.
This customer is very mature and we have provided a lot of features. The most important is forecasting. When the store manager comes to the store in the morning they receive an order proposal dashboard from us. We will have taken the data from the close of business the night before, then built a forecast for the manager to help decide what to order the next day. This a very important application. We are able to calculate the orders across the network better than the ERP can.
Another use case has to do with the actual items in convenience stores. They sell products such as cigarettes, drinks, sandwiches, magazines, and more. In Eastern Europe, there's still a high percentage of people that smoke cigarettes, and what you want to do, as a retailer, is negotiate your contracts with the large vendors.
There are people called buyers, and they sign contracts with the major suppliers. Our use case provides a tablet with a very rich dashboard to show everything that is going on between the buyer and the vendors that they buy from. In those negotiations, especially when dealing with very larger vendors, you sell millions of euros of goods, such as cigarettes, each year. The goal is that you are trying to get the vendor to give you a lower price. At the same time, the vendor is trying to get you to pay a higher price. That's business.
In that discussion, the person with the best data gets the best price. Naturally, it's a high-conflict discussion and you have to have a way of taking out the conflict and replacing it with a more logical, rational argument. The person with the best data wins the argument and gets the best price. That capability is worth a lot of money. Although only a dozen people use it, it's one of the top applications used by that customer.
How has it helped my organization?
One of the most valuable features is partitioning because it helps to distribute the workload. Consider that you sell 400,000 or 500,000 items each day, and there are 10 years worth of history stored in the data warehouse. That is a lot of transactions. Partitioning allows you to split it up into smaller pieces so that the machine can be easily deal with it.
By default, SQL Server has relatively poor partitioning, and it only works properly if you buy the Enterprise Edition, which costs about $14,000 USD per core. Partitioning was only introduced in 2005 and because we were working with it from before that time, we had to do partitioning manually. With Standard Edition, the list price is $3,700 per core. So we still do partitioning manually.
With SQL Server SE, for a $50,000 USD or so license, we can get a 16 core server and manage data warehouses in the 15-20TB range. It runs really well.
By comparison, we had a large telecom client in 2004. We used an 18CPU Sun Server running Oracle and 15TB of EMC disk. That cost us nearly $2.5 million USD. Nowadays, we can do a great deal of what we did back then with $100,000 USD. This is amazing because in places like Eastern Europe where you have constrained budgets SE is a really good option. It's actually cheaper than running MySQL.
What is most valuable?
SQL Server is very popular in this region because of the price.
From version 2014 to version 2016, the performance really improved. We also moved to new hardware, resulting in a four-times speed-up of the processing. Now we can supply a 16-core, 15TB, data warehouse loading hundreds of thousands of transactions per day for $100,000 purchase or cheaper via hosting partners. The price of SE for the features it provides is why we use it so often.
What needs improvement?
There are a lot of things that it doesn't do in terms of business intelligence. However, you can live without a lot of them.
A lot of people want AI/ML features, but SQL Server does not really support that space. R is included but it's kind of clunky. That said, you're not going to do AI/ML with SQL Server because you're going to use Synapse, Databricks, or another similar tools.
SQL Server doesn't have proper bitmap indexing, a proper columnar database version, or proper implementation of materialized views. For example, if you want to do a materialized view, you can only do one on the base tables. You can't do a materialized view on top of another view. For us that makes materialized views useless.
Buyer's Guide
SQL Server
March 2023
Learn what your peers think about SQL Server. Get advice and tips from experienced pros sharing their opinions. Updated: March 2023.
690,226 professionals have used our research since 2012.
For how long have I used the solution?
I have been working with SQL Server for approximately 25 years. We began working with SQL Server version 6.
What do I think about the stability of the solution?
SQL Server is solid as a rock now. It never used to be. It was quite flakey in the past.
In fact, databases as a whole have matured very well. I used to work for IBM in the 1990s and I sold DB2. We had our share of problems, that's for sure.
What do I think about the scalability of the solution?
Many of my customers are using SQL Server 2019.
Today, a 15TB data warehouse is not very big. However, if you consider this customer has 300 stores nationally, selling up to half a million items per day, then that's a fairly substantial customer.
There are bigger customers that you need to worry about. They want more products and more speed, but they have more money.
The bottom line is that SQL Server is still an SMP database. Because we're only talking about data warehousing, there are some fairly simple rules to apply to get it to scale up quite well.
You can put two billion rows in a partitioned table. This customers largest partitioned table is more than three billion rows. That is 10 years of stock history. We use that for forecasting. That's quite a lot when you're only paying $50,000 for the database license. A similar machine, 15 years ago, would cost approximately $2 million.
Clearly, you can't compare how well a $100,000 SQL Server running on Windows compares with a shiny new million-dollar Yellowbrick server. They are completely different classes.
Ultimately SQL Server SE is most suitable for a small to medium-sized business. In a data warehousing scenario, you can do a very passable job with SQL Server SE for enterprises up to half a million transactions per day.
How are customer service and support?
The technical support that Microsoft provides is great. They have forums and things like that, and you can talk directly to a Microsoft SQL Server engineer on their forums if you have a problem. But we very rarely have serious problems. I have only spoken with a Microsoft engineer with a serious problem once in the last 17 years. That is amazing really. On one project I did in 2000 we actually had a paid microsoft engineer on site we had so many problems!
How would you rate customer service and support?
Which solution did I use previously and why did I switch?
I have been working in IT for 40 years and I've worked with all of the major databases for BI. These include Oracle, IBM Db2, Netezza, Sybase IQ, PostgreSQL, and MySQL.
PostgreSQL and MySQL are available to use free of charge. However, there is more to do in order to get things to work on those databases. This extra work costs money. Over a five-year period, SQL Server SE is cheaper.
I used to sell a lot of Sybase IQ to telecoms. The only choices were Oracle, Teradata and Sybase IQ at the high end. Oracle and Teradata were very expensive. Sybase IQ would run on a bunch of different platforms and we were charging $50,000 USD per core. We sold a lot of IQ.
Nowadays, we can do a lot of what we used to do on Sybase IQ on SQL Server SE for $3,700 per core. It's a big difference.
When you're living in Eastern Europe you can see that other databases have some better features, but you've still got to talk to the chief financial officer and ask for the money.
Today, we're working mostly with SQL Server SE because, in Romania, SQL Server is very popular because it is cheaper than the other solutions.
How was the initial setup?
If you know what you're doing then setting up SQL Server as a data warehouse is trivial. If you're setting it up properly, and know how to do so, it takes about a week to complete the deployment. The bit that takes the time is the creation of the partitions.
What about the implementation team?
We implement this solution for our customers, although we do not support the hardware. The hosting companies are available for that. When we move to cloud-based deployment, that will be handled by companies like Microsoft with Azure.
Our customers will also have the choice of a local hosting company that is cheaper than Azure. Most of our clients host their cloud-based solutions there because it's cheaper. They also look after the hardware, operating systems, and other such things. What we see is a remote desktop sitting on top of a server, and that is the starting point for us to deploy. If we want more memory or more CPU cores then we talk to the hosting company.
Pretty much all of our deployments run on VMs.
In terms of maintenance, it's normal. SQL Server has patches and updates. The hosting company is responsible for applying those. Then, you have new releases.
When there is a new release, we have to sit down and plan for those because they need to be properly tested. Occasionally, new releases cause problems and don't work.
When automatic updates happen, we don't let the system just update itself. We have particular times where we maintain things. We have to pick a slot where we cannot have people using it, which is usually on a Sunday or something else like that. Then, we'll apply the updates.
What was our ROI?
There are many areas we get very good ROI for BI projects. There are things that SQL Server SE is not going to do. If you want those things then you'll have to pay more money. But for up to 500,000 business transactions going in to the data warehouse per day? There is really nothing that some performance tuning will not get around.
What's my experience with pricing, setup cost, and licensing?
SQL Server SE is popular in Romania because of the price.
It doesn't do everything but for the price, it's fine.
The price for the Standard Edition is approximately $3,700 USD per core. Once you include technical support, SQL Server is cheaper than PostgreSQL and MySQL.
It is relevant to consider that the query optimizer works differently between the Standard Edition and the Enterprise Edition. The Standard Edition is cheaper but the Enterprise Edition has better performance. This is something that Microsoft had confirmed when we switched from 2008EE to 2014SE.
Another thing to consider is that some applications require a certain edition of the solution. Power BI Mobile, for example, will only run with the Enterprise Edition.
Which other solutions did I evaluate?
Compared to other databases, SQL Server SE rates ten out of ten in price to performance and features. If you wanted to compare SQL Server SE to YellowBrick for features SE is 5 or 6 and YellowBrick is a 10.
That said, Yellowbrick will cost a million dollars compared to $50,000 for SQL Server. It's not a fair comparison.
So nowadays we don't spend much time looking at other databases. If a customer wants PostgreSQL we will do that. If they want Oracle we will do that. But we prefer to work on SQL Server. It's also actually easier to work on.
What other advice do I have?
My advice for anybody who is implementing this solution is specific to data warehousing. I would recommend implementing manual partitioning. You'll be able to use the Standard Edition and you'll save money. If you've got plenty of money, implement the database partitioning and pay the extra $10,000 USD per core. With manual partitioning, you'll get 90% of the EE performance for $10,000 less per core. For a 16-core SQL Server, that's a savings of $160,000.
Considering SQL Server SE, and what it does for the price, I would rate this solution a ten out of ten.
Which deployment model are you using for this solution?
On-premises
Disclosure: I am a real user, and this review is based on my own experience and opinions.