|
devvvy wrote: hi... is there a max limit to throughput of Microsoft SQL Server cluster in terms of how many request (or... *simple* query) the cluster can take per minute?
Everything in computing has limits but I doubt that has anything to do with your question.
Presumably you or someone else you know thinks that X is 'better' than SQL server without even doing any real analysis.
Here is an example of someone using SQL Server
http://highscalability.com/blog/2014/7/21/stackoverflow-update-560m-pageviews-a-month-25-servers-and-i.html[^]
Myself I was tasked with doing performance tests using the application that I was working on, and at the time the application server could handle 100+ TPS a second sustained where I estimated that the entire US market for that business domain was only 2000 TPS.
And during that test I couldn't get SQL Server to even provide any real CPU/Memory load on some pretty crappy equipment. Consequently my conclusion was that for any conceivable reality a single SQL server instance would serve the needs of the company.
Now it is certainly possible that you have a business domain that has some very specific data needs based on the business needs. Not hypothetical tech arguments. If so then you need to do the following
- Collect the actual business requirements that might lead to performance problems.
- Collect the actual market potential of business. One might reasonably claim as a top level that owning the entire market in the world is the goal but claiming astronomical numbers without any real world basis is foolhardy. So is making up numbers without looking at markets at all.
- Do an analysis of likely transaction flows based on the first item.
- Identify possible bottle necks.
- AFTER doing the above then look for solutions that will solve any bottle necks at the data persistence layer.
Finally expect that if you have bottle necks at the data persistence layer then you MUST expect that you are going to need to have other architectural changes necessary to deal with that. A specific type of data persistence server will NOT solve problems of this sort.
|
|
|
|
|
Make that the visible universe.
|
|
|
|
|
thanks I just saw a tweet yesterday claiming MongoDB can take few million hits over few minutes duration. I just want to know if, for example, on an average machine or even workstation, what kind of hits Microsoft SQL server can process?
dev
|
|
|
|
|
There's such a thing called Transaction Processing Performance Council[^], they have many different lists of test all adjusted to get a different vendor on the top, but they will still give you an idea of what to expect.
|
|
|
|
|
devvvy wrote: I just saw a tweet yesterday claiming MongoDB can take few million hits over few minutes duration
And I believe I saw an article where someone was getting something like 1 million TPS on something.
But still pointless unless there is a real potential for that sort of traffic.
|
|
|
|
|
yes many false claims, #bigclaims everywhere
dev
|
|
|
|
|
devvvy wrote: yes many false claims, #bigclaims everywhere
Given the site I suspect it is rather likely that the throughput was valid.
http://highscalability.com/[^]
|
|
|
|
|
Hello
In the query below, since I am using a LEFT JOIN I would expect all rows from podetm to be returned. This is true as long as the line that is commented out is not included. As soon as I include a predicate from the joined table, I seem to get only rows that exist in stockm in the result set. Why?
select * from scheme.podetm d
left join scheme.stockm s on s.warehouse+s.product = d.warehouse+d.product
where d.qty_received >0 and d.inv_value_posted =0
|
|
|
|
|
Yes, you're effectively turning it into a normal join in this case.
Think about it, when you add the line and s.analysis_a not in ( 'LNG', 'INFANTRUST') you're telling it to give you all records where s.analysis_a does not contain 'LNG' or 'INFANTRUST'.
You didn't tell it to give you records where s.analysis_a is null.
So try this:
select * from scheme.podetm d
left join scheme.stockm s on s.warehouse+s.product = d.warehouse+d.product
where d.qty_received >0 and d.inv_value_posted =0
and (s.analysis_a not in ( 'LNG', 'INFANTRUST') OR s.analysis_a IS NULL)
|
|
|
|
|
|
|
I was looking at yours.
|
|
|
|
|
Jorgen, as usual... Thanks for the clear explanation
Getting all the required rows after following your suggestion.
|
|
|
|
|
If you want to include that condition then include that in the Join like
left join scheme.stockm s on s.warehouse+s.product = d.warehouse+d.product and s.analysis_a not in ( 'LNG', 'INFANTRUST')
Else you will face that issue
|
|
|
|
|
try it:
select * from scheme.podetm d
left join scheme.stockm s on s.warehouse+s.product = d.warehouse+d.product
where d.qty_received >0 and d.inv_value_posted =0
and (s.analysis_a not in ('LNG','INFANREUST')
or s.analysis_a is null)
|
|
|
|
|
I'm going to be developing a WPF/C# app that will run on single PC's/Laptops.
I have extensive experience with SQL Server, but now I need a replacement DB that I can install and use on the target environment.
Again, something similar to SQL would be nice so I keep the learning curve to a minimum.
Thanks
If it's not broken, fix it until it is
|
|
|
|
|
How about CE[^], some limitations and no stored procs but...
Never underestimate the power of human stupidity
RAH
|
|
|
|
|
Never used it. I'll take a look
If it's not broken, fix it until it is
|
|
|
|
|
Know of any tutorials to get me up & running quickly?
Thanks!
If it's not broken, fix it until it is
|
|
|
|
|
Sorry, I started using it for a training app and chucked it because I am so reliant on stored procs it irritated the hell out of me. Coding up all the queries in c# as strings was excruciating. I would seriously look at EF if I had to use it, and I hate EF!
Never underestimate the power of human stupidity
RAH
|
|
|
|
|
Query strings???
Use Linq to SQL.... no query strings. No sprocs.
If it's not broken, fix it until it is
|
|
|
|
|
Never used Linq to SQL so I have no opinion, but does that not emit a Tsql query.
I don't have a problem with CRUD coming from the DAL but I end up doing a lot of processing in procs, the industry I am in I guess.
Never underestimate the power of human stupidity
RAH
|
|
|
|
|
Have a look at SmartPaster[^].
It allows you to build the query in your favourite tool and paste it as a stringbuilder in VS.
If you ever get the idea to try again that is.
|
|
|
|
|
SQL CE is pretty close to SQL server in terms of the actual queries you write. If you know one you should easily get to grips with the other.
|
|
|
|
|