MySQL Cluster: the table is full

I have a problem with MySQL Cluster.

I've created a table to be able to store it on disk, but I think it's still stored in memory.

I have created a table with the query below:

            CREATE TABLE IF NOT EXISTS user (
`FIELD_KEY` varchar (255) NOT NULL,
The text `FIELD0`,
The text `FIELD1`,
The text `FIELD2`,
The text `FIELD3`,
The text `FIELD4`,
The text `FIELD5`,
The text `FIELD6`,
The text `FIELD7`,
The text `FIELD8`,
The text `FIELD9`,
PRIMARY KEY (YCSB_KEY)
) ENGINE = ndbcluster DEFAULT CHARSET = utf8 max_rows = 40000000
TABLESPACE ts_1 STORAGE DISK;


ALTER TABLE usertable4M PARTITION BY KEY () SHEET MUSIC 4

My environment (3 nodes in the same virtual machine):

MySQL Cluster 7.5

  • management nodes: 1
  • data node: 1
  • SQL nodes: 1

VM Config: 16 GB RAM, 100 GB hard drive

The parameters of MySQL Cluster (config.ini) are defined on:

[ndbd default]



noofreplicas = 1
DataMemory = 2048M
# Memory to allocate for index storage
IndexMemory = 1024M
# To support multi-threaded processors
MaxNoOfExecutionThreads = 2
FragmentLogFileSize = 256M
NoOfFragmentLogFiles = 12
# -------
RedoBuffer = 32M
SharedGlobalMemory = 256M
DiskPageBufferMemory = 4096M
NoOfFragmentLogParts = 4
# -------
[ndb_mgmd]
Host name = 192.168.1.10
DataDir = / var / lib / mysql-cluster

[ndbd]
Host name = 192.168.1.10
NodeId = 2
DataDir = / usr / local / mysql / data

[mysqld]
Host name = 192.168.1.10

In order to store data on disk, I created a LOGFILE and TABLESPACE file with the following queries:

CREATE LOGFILE GROUP ADD UNDOFILE & # 39; undo1.dat & # 39;
INITIAL_SIZE = 12288M
UNDO_BUFFER_SIZE = 32M
MOTOR = NDB;

CREATE TABLES SPACE ts_1
ADD DATAFILE & # 39; data1.dat & # 39;
USE THE GROUP LOGFILE lg
INITIAL_SIZE = 256M
MOTOR = NDB;

ALTER TABLESPACE ts_1 ADD DATAFILE & # 39; data2.dat & # 39; INITIAL_SIZE = 256M ENGINE = NDB;
.
.
.
ALTER TABLESPACE ts_1 ADD DATAFILE & # 39; data24.dat & # 39; INITIAL_SIZE = 256M ENGINE = NDB;

MemoryUsage Report

$ sudo ndb_mgm -e all the reports MemoryUsage & # 39;
Connected to the management server at: 192.168.1.10:1186
Node 2: The use of data is 94% (62259 32K pages out of a total of 65,536)
Node 2: The use of the index is 2% (2801 8K pages out of a total of 131104)

When I launched a query to insert 4000000 records (4 GB) into my table, the error message appears (the user's table is full) and I do not can no longer insert data into the table. Only 1611787 records have been inserted. I do not understand why it's like that.

Could someone explain me what is the situation? And how can I solve the problem.