My database setup is using NDB cluster with 2-3 nodes, on CentOS. While trying to test out the performance, i tried to store ~7mil records (around 2GB size) into one of the table. at around ~200k, it failed with notification:
ERROR 1114 (HY000): The table 'my_request' is full
These are the LOGFILE GROUP and TABLESPACE:
CREATE LOGFILE GROUP lg_1
ADD UNDOFILE 'undo_1.log'
ENGINE NDBCLUSTER;
ALTER LOGFILE GROUP lg_1
ADD UNDOFILE 'undo_2.log'
ENGINE NDBCLUSTER;
CREATE TABLESPACE ts_1
ADD DATAFILE 'data_1.dat'
USE LOGFILE GROUP lg_1
ENGINE NDBCLUSTER;
ALTER TABLESPACE ts_1
ADD DATAFILE 'data_2.dat'
ENGINE NDBCLUSTER;
Suspecting the problem lay in DATAFILE, i added 2 more into it: data_3.dat
and data_4.dat
, which solve the problem.
So according to this page, AUTOEXTEND_SIZE
and MAX_SIZE
are ignored in my current version. That table is expected to hold 700GB+ data before getting dumped into disk after pre-determined time. Therefore, Are there any way to setup the size of this DATADISK to calculate the future usage of it? Where is this data stored? (I tried to check in datadir
, exec find
, but found nothing). Would be really grateful if you can share some good information/strategy which explain how to work with NDB.
Note: Not an expert in NDB, please assume i know nothing when explaining. big ty.