MySQL has it's pros / cons. The best things about MySQL are that it is open-source/free and has such a vast community of users. If you want a free database MySQL is the quickest to use, but if you're trying to build a strong foundation for your company, I prefer Postgres. If …
Postgres, SQL Server, DB2, Oracle, DashDB, MongoDB, RedShift - all of them have their strengths and weaknesses. I will say this about MySQL though, it is generally the first database chosen by a startup. It's easy to use, easy to deploy, free, and it just works.
Compared to Oracle Data Warehouse, Redshift is a better data warehouse. However, this comes at a cost of advanced functionality and the ability to do OLTP style processing. What you gain is faster querying time and better scalability.
Its definitely an improvement on all fronts for our business needs. Again, our MySQL server was really slow and we needed a more efficient solution. It was a major upgrade, but it is much more expensive than an in house server. It was expected but I'd say that lots of headaches …
MySQL is best suited for applications on platform like high-traffic content-driven websites, small-scale web apps, data warehouses which regards light analytical workloads. However its less suited for areas like enterprise data warehouse, OLAP cubes, large-scale reporting, applications requiring flexible or semi-structured data like event logging systems, product configurations, dynamic forms.
If the number of connections is expected to be low, but the amounts of data are large or projected to grow it is a good solutions especially if there is previous exposure to PostgreSQL. Speaking of Postgres, Redshift is based on several versions old releases of PostgreSQL so the developers would not be able to take advantage of some of the newer SQL language features. The queries need some fine-tuning still, indexing is not provided, but playing with sorting keys becomes necessary. Lastly, there is no notion of the Primary Key in Redshift so the business must be prepared to explain why duplication occurred (must be vigilant for)
[Amazon] Redshift has Distribution Keys. If you correctly define them on your tables, it improves Query performance. For instance, we can define Mapping/Meta-data tables with Distribution-All Key, so that it gets replicated across all the nodes, for fast joins and fast query results.
[Amazon] Redshift has Sort Keys. If you correctly define them on your tables along with above Distribution Keys, it further improves your Query performance. It also has Composite Sort Keys and Interleaved Sort Keys, to support various use cases
[Amazon] Redshift is forked out of PostgreSQL DB, and then AWS added "MPP" (Massively Parallel Processing) and "Column Oriented" concepts to it, to make it a powerful data store.
[Amazon] Redshift has "Analyze" operation that could be performed on tables, which will update the stats of the table in leader node. This is sort of a ledger about which data is stored in which node and which partition with in a node. Up to date stats improves Query performance.
Learning curve: is big. Newbies will face problems in understanding the platform initially. However, with plenty of online resources, one can easily find solutions to problems and learn on the go.
Backup and restore: MySQL is not very seamless. Although the data is never ruptured or missed, the process involved is not very much user-friendly. Maybe, a new command-line interface for only the backup-restore functionality shall be set up again to make this very important step much easier to perform and maintain.
We've experienced some problems with hanging queries on Redshift Spectrum/external tables. We've had to roll back to and old version of Redshift while we wait for AWS to provide a patch.
Redshift's dialect is most similar to that of PostgreSQL 8. It lacks many modern features and data types.
Constraints are not enforced. We must rely on other means to verify the integrity of transformed tables.
For teaching Databases and SQL, I would definitely continue to use MySQL. It provides a good, solid foundation to learn about databases. Also to learn about the SQL language and how it works with the creation, insertion, deletion, updating, and manipulation of data, tables, and databases. This SQL language is a foundation and can be used to learn many other database related concepts.
I give MySQL a 9/10 overall because I really like it but I feel like there are a lot of tech people who would hate it if I gave it a 10/10. I've never had any problems with it or reached any of its limitations but I know a few people who have so I can't give it a 10/10 based on those complaints.
Just very happy with the product, it fits our needs perfectly. Amazon pioneered the cloud and we have had a positive experience using RedShift. Really cool to be able to see your data housed and to be able to query and perform administrative tasks with ease.
We have never contacted MySQL enterprise support team for any issues related to MySQL. This is because we have been using primarily the MySQL Server community edition and have been using the MySQL support forums for any questions and practical guidance that we needed before and during the technical implementations. Overall, the support community has been very helpful and allowed us to make the most out of the community edition.
The support was great and helped us in a timely fashion. We did use a lot of online forums as well, but the official documentation was an ongoing one, and it did take more time for us to look through it. We would have probably chosen a competitor product had it not been for the great support
MongoDB has a dynamic schema for how data is stored in 'documents' whereas MySQL is more structured with tables, columns, and rows. MongoDB was built for high availability whereas MySQL can be a challenge when it comes to replication of the data and making everything redundant in the event of a DR or outage.
Than Vertica: Redshift is cheaper and AWS integrated (which was a plus because the whole company was on AWS). Than BigQuery: Redshift has a standard SQL interface, though recently I heard good things about BigQuery and would try it out again. Than Hive: Hive is great if you are in the PB+ range, but latencies tend to be much slower than Redshift and it is not suited for ad-hoc applications.
Redshift is relatively cheaper tool but since the pricing is dynamic, there is always a risk of exceeding the cost. Since most of our team is using it as self serve and there is no continuous tracking by a dedicated team, it really needs time & effort on analyst's side to know how much it is going to cost.
Our company is moving to the AWS infrastructure, and in this context moving the warehouse environments to Redshift sounds logical regardless of the cost.
Development organizations have to operate in the Dev/Ops mode where they build and support their apps at the same time.
Hard to estimate the overall ROI of moving to Redshift from my position. However, running Redshift seems to be inexpensive compared to all the licensing and hardware costs we had on our RDBMS platform before Redshift.