noone mentioned JSP yet ? used jsp for a project in uni, it was fun
noone mentioned JSP yet ? used jsp for a project in uni, it was fun
Ok, first off MySQL is really the runt of the DB litter. If you get seriously big, it gets seriously expensive. I fail to see why anyone can advocate it as an alternative, other than saying "i've not used any others, and it works here".
Getting rid of it because your wanting to prove its a whole new system is one reason, because there are other vendors which allow you to do much much more is another reason.
Now, .Net is not a language, no sir, its a platform. It (unlike say java) is an ECMA standard, so anyone can implement a version, microsoft made a BSD version for educational use, and the nice people at mono have been busting their balls to implement an open source version which runs on linux. The intresting thing is mono have actually been making some enhancments which MS haven't been (Cecil is awsome). Competition is good!
throw new ArgumentException (String, String, Exception)
It has nothing in the box to help with clustering, if you want to get it set up, you have to purchase their enterprise support, their clustering stuff, which is all licensed PER SERVER.
Not to mention the fact its just not as fast as a well configed Oracle, MS SQL, Sybase.
It offers nothign over postgre.
I've worked for a firm where some muppet, who had never used it in the way we where going to have to had brought it in. Cherps of "oh google us it" and the like are the only recomendation. You know what? Most companies are NOTHING like google, most use expensive hardware that isn't going to fail, rather than just having thousands and thousands of cheap boxes.
I've yet to meet anyone who has scaled mysql above even just 0.5tb and said it wasn't hell.
throw new ArgumentException (String, String, Exception)
Wrongieo. You don't *need* a commercial license to use MySQL cluster. There's also the option of replication of data to other mysql machines/clusters and proxying pools of database servers to avoid loading MySQL with the same common queries over and over again. All freely available.
Extract from the MySQL Cluster downloda page:Really?.. Because Google is no slouch at looking up queries. Even the new JSON query suggestions are damn fast.MySQL Cluster is a real-time open source transactional database designed for fast, always-on access to data under high throughput conditions.
It is available as both open source and commercial editions. The Community (OSS) Edition is available from this page under the free software/opensource GNU General Public License (commonly known as the "GPL")
Performance and scalability?
Perhaps "most companies" could do with taking some lessons from Google, then. Just because hardware is silly expensive, it doesn't mean it will not fail. Also, MySQL will scale up with expensive, high-performance hardware too, it's heavily multi-threaded by design.
Then you've probably never met a MySQL database administrator. The guy 'who can install MS Office', whos duties extend to adding and removing users from an SBS box doesn't count.
You would try and cluster a database without support? Really? Ever used a clustered database?
Its not like i'm talking bollocks here, for the last 2 years i've always been black box consumer of:
Sybase
MS SQL (my favourate for simple projects)
MySQL
Oracle
Postgree
Vertica
And i can tell you that a badly configured Sybase put me off it for ages, not to mention the lacking native 2.0 .net drivers. Its horrifically expensive. However its just so damn fast it rediems itself completely.
MySQL, what is the possible pro for it? Its owned by sun and the price has dropped a lot for the enterprise version yes. But why exactly use it it fails to meet standards, its only had features in the last 3 years which have been normal to everyone else for 20 years.
http://www-css.fnal.gov/dsg/external...-vs-mysql.html
Now back on to target. Clustered set up for free is new to me, i thought it cost an enterpirse license.
Google example, think about what your saying, most companies aren't going to cluster beyound 50 live nodes, ever.
To them they do not need/want any of the bespoke stuff google has for this. Google accept a server dies every few hours because of their scaling. This is not what 99.9% of clients are like. Certainly not the OP.
Then look at the cost of say MS SQL. Its very cheap to begin with, free until you cross 4gb, then £500 until you go a clustering. It has a swarm of excellent features not available in MySQL yet, and is even a tiny bit more standard compliant if you ever wanted to migrate away!
As for if i've meet them, no it was all outsourced to prague. What i do know is they could run the Oracle,MS,Sybase far better than the MySQL stuff.
Not to mention even just on my windows laptop, Sql express floors mysql in simple performance (espesually repeated queries, RAM vrs laptop HDD speeds me thinks!).
So, once again back on topic, if the OP is going to go down the road of .Net for the web tech, with mono or ms hosting, and monorails say for the MVC you have absoletely no worries as to which database you use if you abstract your DL away properly, using Linq to Entities is a tempory measure, but if your going MS SQL, just use LINQ to SQL for low volume stuff it makes life so incredibly easy!
throw new ArgumentException (String, String, Exception)
Why would I?.. I don't need useless support contracts for my Operating Systems, why then, would I bother with useless support contracts for my database daemon, when I've already learnt how to use them?
In that, most companies don't have administrators with the expertise to run powerful HA software solutions. Yes. Other than that, google's solution is far superior.
Then give your MySQL daemon more memory to cache with. That's an option, you know.
Because its about risk, when some dev asks you to do something which causes something you don't understand. You can't afford to take that risk.
Depends, look at the added software cost. Its often cheaper to write software badly, and splurge on hardware for bespoke software. I had one project i was doing where the guy didn't want me to do any of my "multithreaded kung foo" ... i kid you not, that exact phrase.... because the guys doing maintance aren't very good at it, because there where VBA Access background..........In that, most companies don't have administrators with the expertise to run powerful HA software solutions. Yes. Other than that, google's solution is far superior.
The people costs in most companies are higher than the hardware. Take your average networking guru, £600-750 a day in London, if you have him for say 2 years, have about 150 employees, are you really going to have £250k+ off networking gear? HR costs as such are often one of the main drivers. When your a google however, that is totally differen't. This is something people always seam to forget when they say "oh but x/y/z use i/j/k".Its a laptop, it has like 2gig total. MS SQL managed ok!Then give your MySQL daemon more memory to cache with. That's an option, you know.
throw new ArgumentException (String, String, Exception)
this is absolutely correct - cost cutting on equipment doesn't save half as much money as escorting useless staff off siteThe people costs in most companies are higher than the hardware.
my Virtualisation Blog http://jfvi.co.uk Virtualisation Podcast http://vsoup.net
As I already said, I've learnt MySQL already, and anything I'm fuzzy with I can pick out of docs 10 times faster than it would take to go calling some support monkey who can hardly speak English, try to explain the problem, wait for him to go through his scripts, thank him ever so nicely for being useless, and completely wasting my time, and have to hit the docs and google anyway.
Lots of UNIX folk still don't bother with "multithreaded kung foo", because they can spawn extra processes and effectively get "multithreaded kung foo" for 'free'. However, it is more optimal to write multithreaded code. And MySQL supports it, so that, is as they say, that.
Which is why SMEs use consultants to setup complex systems like this. Day to day management is piss easy when it's done right.
I didn't say RAM, I said memory. As in controlled allocation of resources v.s. munching up every resource in sight.
Again you've got an arrogance that shocks even me. I'm guessing you've never really had to do any work like this, else you wouldn't be taking that i know it all risk. One of the nice things about a service contract is if you don't get it, you can pass the buck, and sue their sorry arse.
This is why we have 99.999% uptime SLAs, if my old desk (been now deskless) had any issues with our providers, we could sue their arse off (well their insurance firms), its kind of putting their money were their mouth is!
Relying on google and documentation seams odd to me.WTF?! IPC on unix is damn slow when compared with ! Threads been lightweight processes really don't help matters either, but this is completely besides the point. The point i was trying to make is that they have to consider the staff running costs, you can't take the risk that you have people unable to understand how to run/maintain systems. They can't pay me lots of money to maintain it, that costs too much. (this is also why Software as a Service is so damn popular now, despite the obvious risks).Lots of UNIX folk still don't bother with "multithreaded kung foo", because they can spawn extra processes and effectively get "multithreaded kung foo" for 'free'. However, it is more optimal to write multithreaded code. And MySQL supports it, so that, is as they say, that.
Until something changes. This is why people don't like paying people to do things their in house people can't understand.Which is why SMEs use consultants to setup complex systems like this. Day to day management is piss easy when it's done right.
Given how quickly RAM frees, it should use as much is it can, just be able to give it straight back to a certain minimum size? Or should it just sit there, fixed, hard coded?I didn't say RAM, I said memory. As in controlled allocation of resources v.s. munching up every resource in sight.
throw new ArgumentException (String, String, Exception)
I would recommend http://rubyonrails.org/. It seems a bit crazy that you have to completely change the whole programming language.
Unfortunately unless you're running apps that only make light or moderate use of the database then you can't afford to treat any RDBMS as a black box - you need to know what works best and you need to tune appropriately - and I don't just mean settings - you need to tune your SQL, indexing, partitioning and so on. If you're treating it as a black box and you're comparing one against the other all you're really doing is finding out which one is best suited OOTB to the way your application works.
Indexing and Partitioning are the same concepts on all of those except Vertica. It is expected of any half compitent dev to understand them.
You also have the job of the DBA who is ment to make sure the transaction logs go on seperate RAID to the actual database.
I've always been consuming the service as given to me by the DBA.
throw new ArgumentException (String, String, Exception)
There are currently 1 users browsing this thread. (0 members and 1 guests)