Oracle 5.0 Reference Manual page 2904

Table of Contents

Advertisement

For more detailed information concerning the level of support which is offered for MySQL Cluster on
various operating system versions, operating system distributions, and hardware platforms, please
refer to
http://www.mysql.com/support/supportedplatforms/cluster.html
B.10.9: What are the hardware requirements for running MySQL Cluster?
MySQL Cluster should run on any platform for which NDB-enabled binaries are available. For data
nodes and API nodes, faster CPUs and more memory are likely to improve performance, and 64-
bit CPUs are likely to be more effective than 32-bit processors. There must be sufficient memory on
machines used for data nodes to hold each node's share of the database (see How much RAM do
I Need? for more information). For a computer which is used only for running the MySQL Cluster
management server, the requirements are minimal; a common desktop PC (or the equivalent) is
generally sufficient for this task. Nodes can communicate through the standard TCP/IP network and
hardware. They can also use the high-speed SCI protocol; however, special networking hardware and
software are required to use SCI (see
Cluster").
B.10.10: How much RAM do I need to use MySQL Cluster? Is it possible to use disk memory at
all?
In MySQL 5.0, Cluster is in-memory only. This means that all table data (including indexes) is stored
in RAM. Therefore, if your data takes up 1 GB of space and you want to replicate it once in the cluster,
you need 2 GB of memory to do so (1 GB per replica). This is in addition to the memory required by the
operating system and any applications running on the cluster computers.
If a data node's memory usage exceeds what is available in RAM, then the system will attempt to use
swap space up to the limit set for DataMemory. However, this will at best result in severely degraded
performance, and may cause the node to be dropped due to slow response time (missed heartbeats).
We do not recommend on relying on disk swapping in a production environment for this reason. In any
case, once the
DataMemory
inserts) will fail.
We have implemented disk data storage for MySQL Cluster in MySQL 5.1 and later but we have no
plans to add this capability in MySQL 5.0. See
You can use the following formula for obtaining a rough estimate of how much RAM is needed for each
data node in the cluster:
(SizeofDatabase × NumberOfReplicas × 1.1 ) / NumberOfDataNodes
To calculate the memory requirements more exactly requires determining, for each table in the cluster
database, the storage space required per row (see
for details), and multiplying this by the number of rows. You must also remember to account for any
column indexes as follows:
• Each primary key or hash index created for an
These indexes use IndexMemory.
• Each ordered index requires 10 bytes storage per record, using DataMemory.
• Creating a primary key or unique index also creates an ordered index, unless this index is created
with
HASH. In other words:
USING
• A primary key or unique index on a Cluster table normally takes up 31 to 35 bytes per record.
• However, if the primary key or unique index is created with
to 25 bytes per record.
Note that creating MySQL Cluster tables with
will generally cause table updates to run more quickly—in some cases by a much as 20 to 30 percent
faster than updates on tables where
This is due to the fact that less memory is required (because no ordered indexes are created), and that
MySQL 5.0 FAQ: MySQL Cluster
Section 17.3.5, "Using High-Speed Interconnects with MySQL
limit is reached, any operations requiring additional memory (such as
MySQL Cluster Disk Data
Section 11.2, "Data Type Storage
NDBCLUSTER
USING HASH
was not used in creating primary and unique keys.
USING HASH
2884
Tables, for more information.
table requires 21–25 bytes per record.
HASH, then it requires only 21
USING
for all primary keys and unique indexes
.
Requirements",

Advertisement

Table of Contents
loading

This manual is also suitable for:

Mysql 5.0

Table of Contents