Hery Ramilison
2014-09-26 10:51:15 UTC
Dear MySQL users,
MySQL Cluster 7.4.1 (Milestone Release) is the first public milestone
release for MySQL Cluster 7.4.
The MySQL Cluster 7.4.1 DMR can be downloaded from the ĀDevelopment
ReleasesĀ tab at http://dev.mysql.com/downloads/cluster/ where you
will also find Quick Start guides to help you get your first MySQL
Cluster database up and running.
MySQL Cluster is the distributed, shared-nothing variant of MySQL.
This storage engine provides:
- Real-time performance based on in-memory storage (with
checkpointing to disk)
- Read & write scalability through transparent auto-sharding
- 99.999% High Availability with no single point of failure and
on-line maintenance
- SQL and NoSQL API (including C++, Java, http, Memcached and
JavaScript/Node.js)
- Active-Active/Multi-Master geographic replication
MySQL Cluster 7.4 makes significant advances in performance;
operational efficiency (such as enhanced reporting and faster restarts
and upgrades) and conflict detection and resolution for active-active
replication between MySQL Clusters.
The release notes are available from:
http://dev.mysql.com/doc/relnotes/mysql-cluster/7.4/en/index.html
MySQL Cluster enables users to meet the database challenges of next
generation web, cloud, and communications services with uncompromising
scalability, uptime and agility.
As with any other pre-production release, caution should be taken when
installing on production level systems or systems with critical data.
More information on the Development Milestone Release process can be
found at
http://dev.mysql.com/doc/mysql-development-cycle/en/development-milestone-releases.html
Note that 7.4.1 includes all features from MySQL Cluster 7.3.
More details can be found at
http://www.mysql.com/products/cluster/
Enjoy!
Changes in MySQL Cluster NDB 7.4.1 (5.6.20-ndb-7.4.1 2014-09-25)
MySQL Cluster NDB 7.4.1 is a new Developer Milestone release
of MySQL Cluster, based on MySQL Server 5.6 and previewing
new features under development for version 7.4 of the NDB
storage engine.
Obtaining MySQL Cluster NDB 7.4. MySQL Cluster NDB 7.4
source code and binaries can be obtained from
http://dev.mysql.com/downloads/cluster/.
For an overview of changes made in MySQL Cluster NDB 7.4, see
MySQL Cluster Development in MySQL Cluster NDB 7.4
(http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-development-5-6-ndb-7-4.html).
This release also incorporates all bugfixes and changes made
in previous MySQL Cluster releases, as well as all bugfixes
and feature changes which were added in mainline MySQL 5.6
through MySQL 5.6.20 (see Changes in MySQL 5.6.20 (2014-07-31)
(http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-20.html)).
Functionality Added or Changed
* Performance: Several internal methods relating to the NDB
receive thread have been optimized to make mysqld more
efficient in processing SQL applications with the NDB
storage engine. In particular, this work improves the
performance of the NdbReceiver::execTRANSID_AI() method,
which is commonly used to receive a record from the data
nodes as part of a scan operation. (Since the receiver
thread sometimes has to process millions of received
records per second, it is critical that this method does
not perform unnecessary work, or tie up resources that
are not strictly needed.) The associated internal
functions receive_ndb_packed_record() and
handleReceivedSignal() methods have also been improved,
and made more efficient.
* Performance: A number of performance and other
improvements have been made with regard to node starts
and restarts. The following list contains a brief
description of each of these changes:
+ Before memory allocated on startup can be used, it
must be touched, causing the operating system to
allocate the actual physical memory needed. The
process of touching each page of memory that was
allocated has now been multithreaded, with touch
times on the order of 3 times shorter than with a
single thread when performed by 16 threads.
+ When performing a node or system restart, it is
necessary to restore local checkpoints for the
fragments. This process previously used delayed
signals at a point which was found to be critical to
performance; these have now been replaced with
normal (undelayed) signals, which should shorten
significantly the time required to back up a MySQL
Cluster or to restore it from backup.
+ Previously, there could be at most 2 LDM instances
active with local checkpoints at any given time.
Now, up to 16 LDMs can be used for performing this
task, which increases utilization of available CPU
power, and can speed up LCPs by a factor of 10,
which in turn can greatly improve restart times.
Better reporting of disk writes and increased
control over these also make up a large part of this
work. A new ndbinfo view
disk_write_speed_aggreagate_node provides
information about the speed of disk writes for each
LDM thread that is in use. The
DiskRestartCheckpointSpeed and
DiskRestartCheckpointSpeedRestart configuration
parameters have been deprecated, and are subject to
removal in a future MySQL Cluster release. This
release adds the data node configuration parameters
MinDiskWriteSpeed, MaxDiskWriteSpeed,
MaxDiskWriteSpeedOtherNodeRestart, and
MaxDiskWriteSpeedOwnRestart to control write speeds
for LCPs and backups when the present node, another
node, or no node is currently restarting.
For more information, see The ndbinfo
disk_write_speed_aggregate_node Table
(http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-ndbinfo-disk-write-speed-aggregate-node.html)
, and the descriptions of the MySQL Cluster
configuration parameters named previously.
+ Reporting of MySQL Cluster start phases has been
improved, with more frequent printouts. New and
better information about the start phases and their
implementation has also been provided in the sources
and documentation. See Summary of MySQL Cluster
Start Phases
(http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-start-phases.html).
* Information about memory usage by individual fragments
can now be obtained from the memory_per_fragment view
added in this release to the ndbinfo information
database. This information includes pages having fixed,
and variable element size, rows, fixed element free
slots, variable element free bytes, and hash index memory
usage. For information, see The ndbinfo
memory_per_fragment Table
(http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-ndbinfo-memory-per-fragment.html).
* Cluster Replication: Using the ndb_slave_conflict_role
server system variable introduced in this release, it is
now possible to set the roles of primary and secondary
explicitly and dynamically when using conflict detection
and resolution with a circular or "active-active" MySQL
Cluster Replication setup. This variable can take any one
of the values PRIMARY, SECONDARY, PASS, or NULL (the
default). (PASS enables a passthrough state in which the
effects of any conflict resolution function are ignored.)
This can be useful when it is necessary to fail over from
the MySQL Cluster acting as the primary.
The slave SQL thread must be stopped when the value of
this variable is changed. In addition, it is not possible
to change it directly between PASS and either of PRIMARY
or SECONDARY.
For more information, see the description of
ndb_slave_conflict_role as well as MySQL Cluster
Replication Conflict Resolution
(http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-replication-conflict-resolution.html).
* Cluster Replication: A number of changes and improvements
have been made to exceptions tables for MySQL Cluster
Replication conflict detection and resolution. A reserved
column name namespace is now employed for metacolumns,
which allows the recording of an arbitrary subset of main
table columns that are not part of the table's primary
key. The names of all metacolumns in the exception table
should now be prefixed with NDB$.
It is no longer necessary to record the complete primary
key. Matching of main table columns to exceptions table
columns is now performed solely on the basis of name and
type. In addition, you can now record in the exceptions
table the values of columns which not part of the main
table's primary key.
Existing exceptions tables continue to be supported. For
additional information, see MySQL Cluster Replication
Conflict Resolution
(http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-replication-conflict-resolution.html).
On Behalf of the MySQL Cluster and the Oracle/MySQL RE Team
Hery Ramilison
MySQL Cluster 7.4.1 (Milestone Release) is the first public milestone
release for MySQL Cluster 7.4.
The MySQL Cluster 7.4.1 DMR can be downloaded from the ĀDevelopment
ReleasesĀ tab at http://dev.mysql.com/downloads/cluster/ where you
will also find Quick Start guides to help you get your first MySQL
Cluster database up and running.
MySQL Cluster is the distributed, shared-nothing variant of MySQL.
This storage engine provides:
- Real-time performance based on in-memory storage (with
checkpointing to disk)
- Read & write scalability through transparent auto-sharding
- 99.999% High Availability with no single point of failure and
on-line maintenance
- SQL and NoSQL API (including C++, Java, http, Memcached and
JavaScript/Node.js)
- Active-Active/Multi-Master geographic replication
MySQL Cluster 7.4 makes significant advances in performance;
operational efficiency (such as enhanced reporting and faster restarts
and upgrades) and conflict detection and resolution for active-active
replication between MySQL Clusters.
The release notes are available from:
http://dev.mysql.com/doc/relnotes/mysql-cluster/7.4/en/index.html
MySQL Cluster enables users to meet the database challenges of next
generation web, cloud, and communications services with uncompromising
scalability, uptime and agility.
As with any other pre-production release, caution should be taken when
installing on production level systems or systems with critical data.
More information on the Development Milestone Release process can be
found at
http://dev.mysql.com/doc/mysql-development-cycle/en/development-milestone-releases.html
Note that 7.4.1 includes all features from MySQL Cluster 7.3.
More details can be found at
http://www.mysql.com/products/cluster/
Enjoy!
Changes in MySQL Cluster NDB 7.4.1 (5.6.20-ndb-7.4.1 2014-09-25)
MySQL Cluster NDB 7.4.1 is a new Developer Milestone release
of MySQL Cluster, based on MySQL Server 5.6 and previewing
new features under development for version 7.4 of the NDB
storage engine.
Obtaining MySQL Cluster NDB 7.4. MySQL Cluster NDB 7.4
source code and binaries can be obtained from
http://dev.mysql.com/downloads/cluster/.
For an overview of changes made in MySQL Cluster NDB 7.4, see
MySQL Cluster Development in MySQL Cluster NDB 7.4
(http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-development-5-6-ndb-7-4.html).
This release also incorporates all bugfixes and changes made
in previous MySQL Cluster releases, as well as all bugfixes
and feature changes which were added in mainline MySQL 5.6
through MySQL 5.6.20 (see Changes in MySQL 5.6.20 (2014-07-31)
(http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-20.html)).
Functionality Added or Changed
* Performance: Several internal methods relating to the NDB
receive thread have been optimized to make mysqld more
efficient in processing SQL applications with the NDB
storage engine. In particular, this work improves the
performance of the NdbReceiver::execTRANSID_AI() method,
which is commonly used to receive a record from the data
nodes as part of a scan operation. (Since the receiver
thread sometimes has to process millions of received
records per second, it is critical that this method does
not perform unnecessary work, or tie up resources that
are not strictly needed.) The associated internal
functions receive_ndb_packed_record() and
handleReceivedSignal() methods have also been improved,
and made more efficient.
* Performance: A number of performance and other
improvements have been made with regard to node starts
and restarts. The following list contains a brief
description of each of these changes:
+ Before memory allocated on startup can be used, it
must be touched, causing the operating system to
allocate the actual physical memory needed. The
process of touching each page of memory that was
allocated has now been multithreaded, with touch
times on the order of 3 times shorter than with a
single thread when performed by 16 threads.
+ When performing a node or system restart, it is
necessary to restore local checkpoints for the
fragments. This process previously used delayed
signals at a point which was found to be critical to
performance; these have now been replaced with
normal (undelayed) signals, which should shorten
significantly the time required to back up a MySQL
Cluster or to restore it from backup.
+ Previously, there could be at most 2 LDM instances
active with local checkpoints at any given time.
Now, up to 16 LDMs can be used for performing this
task, which increases utilization of available CPU
power, and can speed up LCPs by a factor of 10,
which in turn can greatly improve restart times.
Better reporting of disk writes and increased
control over these also make up a large part of this
work. A new ndbinfo view
disk_write_speed_aggreagate_node provides
information about the speed of disk writes for each
LDM thread that is in use. The
DiskRestartCheckpointSpeed and
DiskRestartCheckpointSpeedRestart configuration
parameters have been deprecated, and are subject to
removal in a future MySQL Cluster release. This
release adds the data node configuration parameters
MinDiskWriteSpeed, MaxDiskWriteSpeed,
MaxDiskWriteSpeedOtherNodeRestart, and
MaxDiskWriteSpeedOwnRestart to control write speeds
for LCPs and backups when the present node, another
node, or no node is currently restarting.
For more information, see The ndbinfo
disk_write_speed_aggregate_node Table
(http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-ndbinfo-disk-write-speed-aggregate-node.html)
, and the descriptions of the MySQL Cluster
configuration parameters named previously.
+ Reporting of MySQL Cluster start phases has been
improved, with more frequent printouts. New and
better information about the start phases and their
implementation has also been provided in the sources
and documentation. See Summary of MySQL Cluster
Start Phases
(http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-start-phases.html).
* Information about memory usage by individual fragments
can now be obtained from the memory_per_fragment view
added in this release to the ndbinfo information
database. This information includes pages having fixed,
and variable element size, rows, fixed element free
slots, variable element free bytes, and hash index memory
usage. For information, see The ndbinfo
memory_per_fragment Table
(http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-ndbinfo-memory-per-fragment.html).
* Cluster Replication: Using the ndb_slave_conflict_role
server system variable introduced in this release, it is
now possible to set the roles of primary and secondary
explicitly and dynamically when using conflict detection
and resolution with a circular or "active-active" MySQL
Cluster Replication setup. This variable can take any one
of the values PRIMARY, SECONDARY, PASS, or NULL (the
default). (PASS enables a passthrough state in which the
effects of any conflict resolution function are ignored.)
This can be useful when it is necessary to fail over from
the MySQL Cluster acting as the primary.
The slave SQL thread must be stopped when the value of
this variable is changed. In addition, it is not possible
to change it directly between PASS and either of PRIMARY
or SECONDARY.
For more information, see the description of
ndb_slave_conflict_role as well as MySQL Cluster
Replication Conflict Resolution
(http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-replication-conflict-resolution.html).
* Cluster Replication: A number of changes and improvements
have been made to exceptions tables for MySQL Cluster
Replication conflict detection and resolution. A reserved
column name namespace is now employed for metacolumns,
which allows the recording of an arbitrary subset of main
table columns that are not part of the table's primary
key. The names of all metacolumns in the exception table
should now be prefixed with NDB$.
It is no longer necessary to record the complete primary
key. Matching of main table columns to exceptions table
columns is now performed solely on the basis of name and
type. In addition, you can now record in the exceptions
table the values of columns which not part of the main
table's primary key.
Existing exceptions tables continue to be supported. For
additional information, see MySQL Cluster Replication
Conflict Resolution
(http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-replication-conflict-resolution.html).
On Behalf of the MySQL Cluster and the Oracle/MySQL RE Team
Hery Ramilison
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/mysql
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe: http://lists.mysql.com/mysql