1 Requirements
What are some of the database management Systems (DBMS) on the market today, and what are their characteristics? What are the advantages and disadvantages between them? What are their use cases, respectively?
1.1 What kind of database management system (DBMS) is present on the market?
The most common brands of database management Systems (DBMS) on the market today are: Oracle, Sybase, Informix, Microsoft SQL Server, Microsoft Access, Visual FoxPro, PostgreSQL, MySQL, DB2, Ingres, MongoDB, Dameng (DM) databases.
1.2 What are their characteristics? What are the advantages and disadvantages between them?
In general, these databases can be divided into commercial databases and open-source databases in two categories. The current mainstream business databases are Oracle, Microsoft SQL Server, IBM DB2, and sybaseadaptive SQL Server. In terms of open source, there are mainly three main databases: MySQL, PostgreSQL and Ingres. Both types of databases have proven themselves to be competent for data storage and management. But in contrast to commercial databases, open-source databases can be a relatively low number of data processing, lack of functionality, limited graphical management, lower security, or something that some other business database has that the open source database does not have.
2 Business database and open source database Overview
2.1 The Business database Oracle
Oracle is a representative of a business database with a wide range of features, extensive platform support, and a number of additional features. In one IDC survey, Oracle accounted for 44% of the database market, an increase of 14%.
Oracle's capabilities range from table partitioning and a number of statistical functions to high-availability features such as local replication, data mirroring, and application Clustering (Real application Clusters,rac).
Another powerful feature of Oracle is online tables and index rebuilds. In many databases, rebuilding is done offline, that is, when the index is rebuilt, access to the data is not allowed because the operation requires exclusive access to the object. Of course, this is not the full functionality of Oracle, just some examples of the advanced features it can provide.
2. IBM DB2 of 2 business databases
In 2004, sales of the DB2 database were mainly focused on IBM mainframes and their own as/400 series systems. Despite the 2006 IDC survey, DB2 has a second-largest market share, but it has a much lower sales and market share than Oracle.
Now, in addition to IBM's proprietary operating system, DB2 can be run on Windows, Linux, and UNIX platforms. The new version of DB2 V9 has a great improvement in XML processing. In my most recent project that used other databases, we did a lot of extra work on planning XML. If the database we are using has the corresponding function of DB2 V9, there may not be so much trouble.
In addition, IBM is entering the mobile sector through its DB2 everyplace, which currently supports PDAs and smartphones.
2.3 Business Database of Microsoft SQL Server
All along, Microsoft SQL Server can only run on its Windows operating system platform, but in the last year today, March 8, 2016, announced the launch of a Linux system can run under the SQL Server database. The market share of SQL Server will grow faster.
According to IDC, Microsoft's SQL Server is the fastest growing market share of the database, the market share second only to DB2, ranked third.
In the latest version of SQL Server 2005, many new features have been added to make it a further threat to Oracle. These include table partitioning, online index operations, and many other management functions. As you'll see later, many users have deep support for the intuitive, easy-to-use management interface of SQL Server.
2.4 Sybase of Business database
The latest version of Sybase Adaptive Server has a richer set of features compared to previous versions, but it is still a lot less than Oracle and DB2 two commercial databases above, for example, it lacks support for highly available clusters and online index rebuilds. That may be why, in an IDC survey, it only ranked fourth, with a poor 3.2% market share.
Sybase's strong place is in its low share of resources. In this regard, Sybase 15 also introduces a new "patented query process technology" that shows enhanced performance and reduced hardware resource consumption. On the other hand, Sybase is entering the mobile realm through its SQL anywhere database server. One of the SQL anywhere features is its resident memory database management system that can run on Windows Mobile, Windows, Palm? OS and Symbian on.
There is also an interesting historical episode of Sybase, where Microsoft's SQL Server was developed from Sybase. Microsoft and Sybase have signed a contract that Microsoft is authorized to sell a repackaged Sybase or develop its own version on its basis. Although Microsoft has made a lot of changes to it, you can still see the origin of the two in the command composition of SQL Server.
2.5 The Open source database MySQL
MySQL is a leader in open source databases, with the largest number of users in the same open source database, which can be used by small startups or by large Web sites with operating system clusters.
MySQL has a number of plug-in storage engines that provide users with different functions, rather than having full functionality by default. This is another reason why MySQL has the best performance in data recovery operations.
Since the first version of MySQL was released, a storage engine interface has been provided. It allows the user to select the data storage engine as needed. MySQL has both a transaction-safe (acid-compatible) storage engine (such as InnoDB, Falcon), a storage engine that does not support transactional processing (MyISAM), a log engine (cannot be updated or deleted, Archive), and clustering technology for high availability through a shared-nothing architecture, MySQL also has proprietary third-party engines, such as Infobright and Nitro.
MySQL has many storage engines that implement specific features, but it is not recommended that you install them all. Companies like Google have written their own storage engines to speed up their common operations.
One of the advantages of MySQL compared to Oracle is that it consumes very little resources. MySQL is the fastest database for data recovery, but it does lack some functionality in Oracle.
MySQL never thought that with other databases on a higher number of features, MySQL's goal is ease of use, stability and performance. MySQL is now rich in functionality and has been supported by many developers.
2.5 PostgreSQL The Open source database
In an open source database, PostgreSQL is particularly prominent with its rich capabilities, including stored procedures, table partitioning (partitioning), multi-process language support, and support for multiple data types and indexes. In addition, PostgreSQL's standard compatibility and strict security features are also praised by many users. PostgreSQL's online transaction processing (OLTP) is its most popular feature, and its data warehouse is the best in the open source database.
Because PostgreSQL is a community-controlled open-source project supported by different companies, many companies provide support for it, such as Sun, Fujitsu, SRA, and Red Hat, and many emerging companies and consulting firms. Postgrefsql's market situation in Japan is very good, after Oracle.
2.7 Ingres of Open source database
A number of new features have been introduced in Ingres 2006, some of which are related to large-scale deployment, such as key range table partitioning (key ranges, table partitioning) and parallel query support. In addition, features such as stored procedures, triggers, and views are already supported by Ingres, but Ingres does not now support internal tasks.
2.8 Embedded database Application
A more specific application case for a database is an embedded application, in which low resource occupancy becomes a required requirement.
Because of its design concept, MySQL is used more in this respect. Microsoft's SQL Server 2005 Express Edition is also used as an embedded database, which is considered the next version of the Microsoft Database Engine (MSDE), and it is completely free. Oracle then uses the acquired TimesTen memory database to satisfy embedded applications.
Linux is the preferred operating system for open source databases because they are open source and completely free products. Today's consumer electronics market, the Linux variant has been widely used. This also allows open source databases to benefit from embedded applications.
3 What are the use cases for these database management systems?
This question, I would like to "How to choose the right database for their way?" "To answer.
3.1 Choose according to demand
In fact, there is no perfect database, whether it is a business database or an open source database. We found that the main reason to choose a database is whether its functionality is good enough to support your application. The tasks that people usually do with databases are: support for Web, transactional, text search, and in some cases replication is an important requirement. In terms of transactional processing, Oracle appears to have a more advanced edge, followed by Microsoft's SQL Server. None of the open source databases have transactional capabilities comparable to Oracle.
Open-source databases have no advantage over commercial databases in those demanding feature-rich scenarios. The advantages of business databases often mentioned are stored procedures, triggers, and some security features.
However, as we mentioned above, triggers and stored procedures have been supported since the advent of Ingres. PostgreSQL has long supported these features as well. The new version of MySQL also recently added the stored procedures and triggers feature. For web-enabled applications, MySQL looks better than other opponents. A Web application is primarily a read operation on a database. MySQL is fast-growing in this area. Some users say that MySQL is at least as bad as Oracle for fast reading operations. However, when a task moves from a reading database to a customer purchase operation, the user may prefer Oracle to MySQL. In the replication and clustering features, MySQL gives a very different impression. One-way replication in MySQL is amazing, but the MySQL cluster feature isn't being applied much because it's just memory-based.
3.2 Select by ease of use and management
Open source databases are primarily managed by command-line tools. Although there are some graphical tools available, they are not flexible and stable compared to the graphics management tools that are brought with business databases such as Oracle. The winner in graphical management is undoubtedly Microsoft. Microsoft's SQL Server Management tool is not browser-based, but a terminal platform that comes with it. This makes it capable of accomplishing some of the power that a Web browser cannot achieve. Some users want the management functionality in Oracle to be as good as in SQL Server.
3.3 Select by Support
The most frequent question we hear when discussing open source software is, "where can we get support?" MySQL provides 24*7, 30-minute response time support for its own customers. There are also many different levels of paid support in their unlimited services. As mentioned above, PostgreSQL's support comes from different platform vendors, and the content, cost, region and requirements of support vary from vendor to manufacturer. Due to the source code of the Open sources database can be viewed and modified by anyone, which leads to several potential problems. What happens to a legitimate customer who modifies the database? Sun does not support this situation, and MySQL will provide support, but some specific conditions and circumstances need to be met. In fact, the number of customers who can make changes to these open source products is very small--which is related to the complexity of the product. Another problem with open source software is that the reality that anyone can make changes to a product poses some potential vulnerabilities or security issues. Such things have happened, customers need to be sure to download these products from the familiar website and confirm that they can be verified by MD5.
3.4 Select by cost factor
The cost factor in the database is very simple. For open-source databases, you can get authorization for free, but at the same time you sacrifice some features. For business databases, you can use more powerful features, but you'll need to pay the licensing fees per copy or per CPU. For an open source database, in terms of maintenance costs, although it seems like you can choose not to buy a support contract from the vendor, because you have the source code, it's not as simple as it really is.
Although you can choose to modify the source code, but when the new version of the database, your changes have to be re-implemented, and you have made changes may not be necessary, because the new version of the corresponding features added. The only practical thing for us to do is to be a part of this database development community, which may require you to invest a lot of time, which may cost more than buying a support contract. For business databases, you only have a choice, and if you want to get maintenance support from them, buy their support contracts.
4 Conclusion
Overall, choosing what kind of database to look for needs of your application. MySQL is undoubtedly the best choice if it is a Web application based on a reading database. And if you need those transactional processing and complex database functionality, it could be the site of Oracle and Microsoft's SQL Server. If you need some high-level work on a business database, but don't want to pay for a licensing fee, take a look at PostgreSQL or Ingres. For embedded database applications, MySQL and Sybase have the fewest system resources.
Brush fans: I think the article is also a line of children's shoes please pay attention to me,
Your attention is my greatest motivation!
What are some of the database management Systems (DBMS) on the market today, and what are their characteristics? What are the advantages and disadvantages between them? What are their use cases, respectively?