Introduction
Often people in newsgroups ask about some comparison of Microsoft
SQL Server and Sybase Adaptive Server. In this article, I compare
SQL Server 2000 with Sybase Adaptive Server Enterprise 12.5
(Sybase ASE 12.5) regarding price, performance, platforms supported,
SQL dialects, and products limits.
Platform comparison
SQL Server 2000 only works on Windows-based platforms, including Windows 9x,
Windows NT, Windows 2000 and Windows CE.
In comparison with SQL Server 2000, Sybase ASE 12.5 supports all known
platforms, including Windows-based platforms, AIX-based systems, HP-UX
systems, Linux Intel, Sun Solaris and so on.
Hardware requirements
To install SQL Server 2000, you should have the Intel or compatible
platforms and the following hardware:
|
Hardware
|
Requirements
|
|
Processor
|
Pentium 166 MHz or higher
|
|
Memory
|
32 MB RAM (minimum for Desktop Engine),
64 MB RAM (minimum for all other editions),
128 MB RAM or more recommended
|
|
Hard disk space
|
270 MB (full installation),
250 MB (typical),
95 MB (minimum),
Desktop Engine: 44 MB
Analysis Services: 50 MB minimum and 130 MB typical
English Query: 80 MB
|
Sybase ASE 12.5 supports Windows-based platforms, AIX-based systems,
HP-UX systems, Linux Intel, Silicon Graphics, Sun Solaris and so on.
To install Sybase ASE 12.5 under the Windows-based platforms, you
should have the following hardware:
|
Hardware
|
Requirements
|
|
Processor
|
Pentium or Pentium compatible CPU
|
|
Memory
|
48 MB minimum for the Sybase ASE 12.5,
plus memory for the operation system and other programs.
|
|
Hard disk space
|
| Adaptive Server 12.5 |
110MB |
| jConnect 4.5 |
4.5MB |
| jConnect 5.5 |
4.5MB |
| jutilities (Cascade Gateway, jisql, Ribo) |
6MB |
| jConnect documentation |
0.5MB |
| Open Client/C |
133MB |
| Monitor Client Library |
4MB |
| Monitor Server 12.5 |
3.5MB |
| Historical Server |
6MB |
| Adaptive Server plug-in for Sybase Central |
13MB |
| Enhanced Full-Text Search |
70MB |
| EJB Server |
420MB |
|
To install Sybase ASE 12.5 under the AIX-based systems, you should
have the following hardware:
|
Hardware
|
Requirements
|
|
Processor
|
IBM RISC System 6000 32-bit,
IBM RISC System 6000, Model S70, 64-bit
|
|
Memory
|
64 MB for the Sybase ASE 12.5 (for IBM RS/6000 32-bit),
92 MB for the Sybase ASE 12.5 (for IBM RS/6000 64-bit),
plus memory for the operation system and other programs.
|
|
Hard disk space
|
| Adaptive Server 12.5 |
235MB |
| jConnect 4.5 |
5.5MB |
| jConnect 5.5 |
5.5MB |
| jutilities (Cascade Gateway, jisql, Ribo) |
6MB |
| jConnect documentation |
8MB |
| Open Client/C 12.5 |
115MB |
| Language Modules (Server 12.5) |
2-7MB per language |
| Language Modules (Open Client 12.5) |
3-6MB per language |
| Monitor Client Library 12.5 |
7.9MB |
| Monitor Server 12.5 |
4MB |
| Monitor Historical Server 12.5 |
6MB |
| Enhanced Full-Text Search |
75MB |
|
To install Sybase ASE 12.5 under the HP-UX systems, you should
have the following hardware:
|
Hardware
|
Requirements
|
|
Processor
|
HP 9000/800 32-bit, HP 9000/800 64-bit
|
|
Memory
|
64 MB minimum for the Sybase ASE 12.5 (for HP 9000/800 32-bit),
90 MB minimum for the Sybase ASE 12.5 (for HP 9000/800 64-bit),
plus memory for the operation system and other programs.
|
|
Hard disk space
|
| Adaptive Server 12.5 |
191MB |
| jConnect 4.5 |
4.5MB |
| jConnect 5.5 |
4.5MB |
| jutilities (Cascade Gateway, jisql, Ribo) |
6MB |
| jConnect documentation |
6MB |
| Open Client/C 12.5 |
244MB |
| Language Modules (Server 12.5) |
2-7MB per language |
| Language Modules (Open Client 12.5) |
3-6MB per language |
| Monitor Client Library 12.5 |
4MB |
| Monitor Server 12.5 |
3MB |
| Monitor Historical Server 12.5 |
6MB |
| Enhanced Full-Text Search |
70MB |
| EJB Server 32-bit platforms only |
420MB |
|
To install Sybase ASE 12.5 under the Linux Intel platform, you should
have the following hardware:
|
Hardware
|
Requirements
|
|
Processor
|
Pentium II, 230 MHz or higher
|
|
Memory
|
50 MB minimum for the Sybase ASE 12.5,
plus memory for the operation system and other programs.
|
|
Hard disk space
|
| Adaptive Server 12.5 |
115MB |
| Sybase Common package |
100MB |
| Open Client/C 12.5 |
120MB |
| Language Modules (Server 12.5) |
2-7MB per language |
| Language Modules (Open Client 12.5) |
3-6MB per language |
| Enhanced Full-Text Search |
65MB |
| Sybase-esql |
4MB |
| Sybase Openserver |
45MB |
|
To install Sybase ASE 12.5 under the Silicon Graphics platform, you
should have the following hardware:
|
Hardware
|
Requirements
|
|
Processor
|
MIPS IV or higher
|
|
Memory
|
32 MB minimum for the Sybase ASE 12.5 (for SGI IRIX 32-bit),
64 MB minimum for the Sybase ASE 12.5 (for SGI IRIX 64-bit),
plus memory for the operation system and other programs.
|
|
Hard disk space
|
| Adaptive Server 12.5 |
245-270MB |
| jConnect 4.2 |
5MB |
| jConnect 5.2 |
5MB |
| jutilities (Cascade Gateway, jisql, Ribo) |
6MB |
| jConnect documentation |
8MB |
| Open Client/C 12.5 |
117-130MB |
| Language Modules (Server 12.5) |
2-7MB per language |
| Language Modules (Open Client 12.5) |
3-6MB per language |
| Monitor Server 12.5 |
3.9MB |
| Monitor Historical Server 12.5 |
6.8MB |
| Sybase Central |
13MB |
|
To install Sybase ASE 12.5 under the Sun Solaris, you should have
the following hardware:
|
Hardware
|
Requirements
|
|
Processor
|
Sun Solaris 32-bit, Sun Solaris 64-bit
|
|
Memory
|
66 MB minimum for the Sybase ASE 12.5 (for Sun Solaris 32-bit),
92 MB minimum for the Sybase ASE 12.5 (for Sun Solaris 64-bit),
plus memory for the operation system and other programs.
|
|
Hard disk space
|
| Adaptive Server 12.5 |
155MB |
| jConnect 4.5 |
4.5MB |
| jConnect 5.5 |
4.5MB |
| jutilities (Cascade Gateway, jisql, Ribo) |
6MB |
| jConnect documentation |
0.5MB |
| Open Client/C 12.5 SDK |
183MB |
| Language Modules (Server 12.5) |
2-7MB per language |
| Language Modules (Open Client 12.5) |
3-6MB per language |
| Adaptive Server Monitor Server 12.5 |
3.5MB |
| Monitor Historical Server 12.5 |
6MB |
| Monitor Client Library 12.5 |
4MB |
| Enhanced Full-Text Search |
70MB |
| EJB Server 32-bit platforms only |
420MB |
|
Software requirements
SQL Server 2000 comes in six editions: Enterprise, Standard, Personal,
Developer, Desktop Engine, and SQL Server CE (a compatible version for
Windows CE) and requires the following software:
|
Operating System
|
Enterprise Edition
|
Standard Edition
|
Personal Edition
|
Developer Edition
|
Desktop Engine
|
SQL Server CE
|
|
Windows CE
|
No
|
No
|
No
|
No
|
No
|
Yes
|
|
Windows 9x
|
No
|
No
|
Yes
|
No
|
Yes
|
No
|
|
Windows NT 4.0 Workstation with Service Pack 5
|
No
|
No
|
Yes
|
Yes
|
Yes
|
No
|
|
Windows NT 4.0 Server with Service Pack 5
|
Yes
|
Yes
|
Yes
|
Yes
|
Yes
|
No
|
|
Windows NT 4.0 Server Enterprise Edition with Service Pack 5
|
Yes
|
Yes
|
Yes
|
Yes
|
Yes
|
No
|
|
Windows 2000 Professional
|
No
|
No
|
Yes
|
Yes
|
Yes
|
No
|
|
Windows 2000 Server
|
Yes
|
Yes
|
Yes
|
Yes
|
Yes
|
No
|
|
Windows 2000 Advanced Server
|
Yes
|
Yes
|
Yes
|
Yes
|
Yes
|
No
|
|
Windows 2000 DataCenter
|
Yes
|
Yes
|
Yes
|
Yes
|
Yes
|
No
|
|
Windows XP Professional
|
No
|
No
|
Yes
|
Yes
|
Yes
|
No
|
Sybase ASE 12.5 requires the following software:
|
Platform
|
Operating System Version
|
Required Patches
|
|
Windows-based
|
Windows NT 4.0
|
Service Pack 6 or higher
|
|
AIX-Based
|
AIX 4.3.3 (32-bit)
|
Maintenance Level 7 or later
|
|
AIX-Based
|
AIX 5.1
|
Not Necessary
|
|
HP-UX
|
HP-UX 11.0
|
64-bitDevLibs, HPUXEng64RT, Integ-Logon,
KernDev, MiscDiag, OnlineDiag,
UXCoreMedia, Y2K-1100, PHCO_13808,
PHCO_13809, PHCO_14733, PHCO_14786,
PHCO_14810, PHCO_15219, PHCO_15220,
PHCO_15221, PHCO_15235, PHCO_16021,
PHCO_16253, PHCO_16305, PHCO_16341,
PHCO_19047, PHCO_19391, PHNE_14479,
PHNE_16636, PHSS_18066, PHSS_18072,
PHSS_21950, PHSS_22217, PHSS_22272
|
|
Linux
|
kernel-2.2.14-5.0
|
Not Necessary
|
|
Silicon Graphics
|
SGI IRIX 6.5 (32-bit and 64-bit)
|
Not Necessary
|
|
Sun Solaris
|
Solaris 8 (32-bit and 64-bit)
|
patches 108434-04, 108435-04, 108528-12,
108827-12, 108991-18, 109210-12, 109384-02,
111177-06, 110648-13, 112138-01
|
Performance comparison
It is very difficult to make the performance comparison between
SQL Server 2000 and Sybase ASE 12.5. The performance of your
databases depends rather on the experience of the database
developers and database administrator, than on the database's
provider. You can use both of these RDBMS to build stable and
efficient systems. It is possible to define the
typical transactions, such as those used in inventory control systems,
airline reservation systems, and banking systems. After defining
these typical transactions, it is possible to run them under
different database management systems working on the different
hardware and software platforms.
TPC tests
The Transaction Processing Performance Council
(TPC.Org) is an independent
organization that specifies the typical transactions (transactions
used in inventory control systems, airline reservation systems and
banking systems) and some general rules these transactions should
satisfy.
The TPC produces benchmarks that measure transaction processing and
database performance in terms of how many transactions a given system
and database can perform per unit of time, e.g., transactions per
second or transactions per minute.
The TPC organization made the specification for many tests. There are
TPC-C, TPC-H, TPC-R, TPC-W and some old tests, such as TPC-A, TPC-B
and TPC-D. The most popular test is the
TPC-C test (OLTP test).
At the moment this article was written, SQL Server 2000 held the top
TPC-C by performance results with Distributed Partitioned Views-based
cluster systems.
See
Top Ten TPC-C by Performance Version 5 Results
At the moment this article was written, SQL Server 2000 held the top
TPC-C by price/performance results.
See Top Ten TPC-C by Price/Performance Version 5 Results
Note. Because most organizations really do not run very large databases,
the key points on which SQL Server 2000 won the TPC-C benchmarks
do not really matter to the vast majority of companies.
Price comparison
One of the main Microsoft SQL Server 2000 advantages in comparison with
Sybase ASE 12.5 is that SQL Server is cheaper.
SQL Server 2000 is currently available under two licensing options:
- Processor license.
- Server/per-seat client access license (CAL).
The processor license requires a single license for each CPU in the
computer running SQL Server 2000 and includes unlimited client access.
You can buy this license when you do not know the number of the clients
(for example, if your users will connect to SQL Server 2000 through
the internet). This license usually is cheaper than Server/Per-Seat CAL
when there are many users connected to SQL Server databases.
The Server/per-seat client access license (CAL) requires a license for
the server and licenses for each client device. You can use this
licensing option when the customers do not need access beyond the
firewall and the number of clients is low (for example, 10-20 users
for SQL Server 2000 Standard Edition or 30-40 users for SQL Server 2000
Enterprise Edition).
|
Licensing Options
|
SQL Server 2000 Standard Edition
|
SQL Server 2000 Enterprise Edition
|
|
Processor
|
$4,999 per processor
|
$19,999 per processor
|
|
Server/Per-Seat CAL
|
with 5 CALs - $1,489
with 10 CALs - $2,249
|
with 25 CALs - $11,099
|
Sybase ASE 12.5 is currently available as two main products:
- ASE Workplace
- ASE Enterprise
ASE Workplace includes machines running Windows NT, Netware, or SCO Unix
with four or fewer CPUs. ASE Enterprise includes machines running Windows NT,
Netware, or SCO Unix with more than four CPUs.
For other platforms, the classification into ASE Workplace or ASE Enterprise
is dependent on Total Processing Factor (TPF), which is based on the maximum
number of CPUs that a box can support multiplied by the processing power
(in megahertz) of each CPU. Machines that have a TPF of 2000 or less are
considered ASE Workplace while those above 2000 are considered ASE Enterprise.
Sybase ASE 12.5 is currently available under two main licensing options:
- Processor license.
- Server/Networked Seat.
The processor license is available under the ASE Enterprise 12.5 for LINUX
only. For other platforms, only the Server/Networked Seat licenses are available.
|
Licensing Options
|
Sybase ASE Workplace 12.5
|
Sybase ASE Enterprise 12.5
|
Sybase ASE Enterprise 12.5 for LINUX
|
|
Processor
|
Not available
|
Not available
|
$24,995 per processor
|
|
Server
|
$995
|
$3,995
|
$2,995
|
|
Networked Seat
|
$195
|
$795
|
$595
|
Note. This is not a full price comparison between SQL Server 2000 and
Sybase ASE 12.5. It is only a brief comparison. Discounts may apply and
the prices can be increased or decreased in the future.
See Microsoft and Sybase to get more information about the price
of their products.
Features comparison
Both SQL Server 2000 and Sybase ASE 12.5 support the ANSI SQL-92 entry
level and do not support the ANSI SQL-92 intermediate level. In the
Features comparison section of this article I want to make a brief
comparison of the SQL Server T-SQL with Sybase T-SQL dialect and show some
SQL Server 2000 and Sybase ASE 12.5 limits.
Microsoft T-SQL vs Sybase T-SQL
Microsoft SQL Server and Sybase ASE have a common heritage because,
until version 4.2, Microsoft simply licensed Sybase's database server
software. So these products had one kernel. After version 4.2, these
products have diverged. Microsoft has produced versions 6.0, 6.5, 7.0,
and 2000 of Microsoft SQL Server, while Sybase has produced versions 4.8,
4.9, System 10 and System 11 of Sybase SQL Server and versions 11.5,
11.9, 12, and 12.5 of Sybase Adaptive Server Enterprise.
Because Microsoft SQL Server and Sybase ASE had one kernel, they have
some similar features now. For example, the dialect of SQL supported by
both Microsoft and Sybase is called Transact-SQL (T-SQL). To distinguish
these dialects, we will call them Microsoft T-SQL and Sybase T-SQL
accordingly. Both of these dialects are very similar, so the migration to
SQL Server 2000 from the Sybase ASE 12.5 (or vice versa) can be made much
easier than the migration to SQL Server 2000 from Oracle 9i or IBM DB2 v8.1.
This is the brief comparison of Microsoft T-SQL and Sybase T-SQL:
|
Feature
|
Sybase T-SQL
|
Microsoft T-SQL
|
|
Indexes
|
B-Tree indexes
|
B-Tree indexes
|
|
Tables
|
Relational tables,
Temporary tables
|
Relational tables,
Temporary tables
|
|
Triggers
|
login triggers,
AFTER triggers
|
AFTER triggers,
INSTEAD OF triggers
|
|
Procedures
|
Sybase T-SQL statements,
SQLJ stored procedure (SQL
wrapper to a Java static method)
|
Microsoft T-SQL statements
|
|
User-defined functions
|
SQLJ functions (SQL wrapper
to a Java static method)
|
Scalar functions,
Inline table-valued functions,
Multistatement table-valued functions
|
|
Indexed Views
|
Not Supported
|
Supported
|
|
Multiple Triggers
|
Not Supported
|
Supported
|
|
Arrays
|
Not Supported
|
Not Supported
|
SQL Server 2000 and Sybase ASE 12.5 limits
Some SQL Server 2000 and Sybase ASE 12.5 limitations:
|
Feature
|
SQL Server 2000
|
Sybase ASE 12.5
|
|
database name length
|
128
|
30
|
|
table name length
|
128
|
30
|
|
view name length
|
128
|
30
|
|
column name length
|
128
|
30
|
|
index name length
|
128
|
30
|
|
triggers name length
|
128
|
30
|
|
procedures name length
|
128
|
30
|
|
defaults name length
|
128
|
30
|
|
rules name length
|
128
|
30
|
|
cursor name length
|
128
|
30
|
|
nested triggers levels
|
32
|
16
|
|
columns referenced by a view
|
4096
|
1024
|
|
columns per SELECT statement
|
4096
|
1024
|
|
max indexes per table
|
250
|
250
|
|
bytes per index
|
900
|
600 for 2K page,
1250 for 4K page,
2600 for 8K page,
5300 for 16K page
|
|
columns per index
|
16
|
31
|
|
parameters per stored procedure
|
1024
|
255
|
|
text of a stored procedure
|
250MB
|
16MB
|
|
nested stored procedure levels
|
32
|
16
|
|
nested subqueries
|
32
|
16
|
|
tables per SELECT statement
|
256
|
50
|
|
columns in GROUP BY, ORDER BY
|
Limited only by number
of bytes (8060)
|
31
|
Conclusion
It is not true that SQL Server 2000 is better than Sybase ASE 12.5 or vice
versa. Both products can be used to build stable and efficient systems and
the stability and effectiveness of your applications and databases depend
on the experience of the database developers and database administrator rather
than from the database's provider. But SQL Server 2000 has some advantages
in comparison with Sybase ASE 12.5 and vice versa.
The SQL Server 2000 advantages:
- SQL Server 2000 is cheaper to buy than Sybase ASE 12.5.
- SQL Server 2000 holds the top TPC-C performance and price/performance results.
- SQL Server 2000 is generally accepted as easier to install, use and manage.
The Sybase ASE 12.5 advantages:
- Sybase ASE 12.5 supports all known platforms, not only the
Windows-based platforms.
- More fine-tuning to the configuration can be done via start-up parameters.
Literature
1. SQL Server 2000 Books Online
2. How to Buy
3. Adaptive Server Enterprise
4. Installation Guide Adaptive Server Enterprise for Windows NT
5. Installation Guide Adaptive Server Enterprise for IBM RISC System/6000 AIX
6. Installation Guide Adaptive Server Enterprise for HP-UX
7. Installation Guide Adaptive Server Enterprise for Linux/Intel
8. Installation Guide Adaptive Server Enterprise for Silicon Graphics IRIX
9. Installation Guide Adaptive Server Enterprise for Sun Solaris
10. Top Ten TPC-C by Performance Version 5 Results
11. Top Ten TPC-C by Price/Performance Version 5 Results
»
See All Articles by Columnist Alexander Chigrik