Transactions and memory usage.
As noted elsewhere in this chapter, MySQL Cluster does not handle large transactions well; it
is better to perform a number of small transactions with a few operations each than to attempt a
single large transaction containing a great many operations. Among other considerations, large
transactions require very large amounts of memory. Because of this, the transactional behavior of a
number of MySQL statements is effected as described in the following list:
• TRUNCATE TABLE is not transactional when used on NDB tables. If a TRUNCATE TABLE fails to
empty the table, then it must be re-run until it is successful.
• DELETE FROM (even with no WHERE clause) is transactional. For tables containing a great
many rows, you may find that performance is improved by using several DELETE FROM ...
LIMIT ... statements to “chunk” the delete operation. If your objective is to empty the table, then
you may wish to use TRUNCATE TABLE instead.
• LOAD DATA statements. LOAD DATA INFILE is not transactional when used on NDB tables.
... zobacz całą notatkę