У меня простая конфигурация Master/Slave. У меня 8 ГБ ОЗУ на обеих моих производственных коробках. Я использовал Master только для записи и slave только для чтения. Но на выходных я выполнил одно задание, которое заключалось в том, чтобы вставить данные на главный сервер, которые должны быть реплицированы на подчиненный. Из-за чего мой слейв отставал от мастера почти на 15-16 часов, что создавало большие проблемы для моих отчетов, так как я читал их с слейва, а слейв не обновлял информацию.
В связи с этим у меня есть несколько вопросов:
Существуют ли какие-либо обоснованные причины, по которым следует использовать ведомое устройство для чтения, а не ведущее устройство (мой мастер записывает через очень 5 минут), а некоторые задания запланированы для чтения с ведомого устройства.
У меня есть таблица размером 100 ГБ, и каждый день я вставляю миллион записей в одну и ту же таблицу. Все выборки и вставки происходят в этой таблице. Я выбрал способ разделения данных по годам из этой таблицы на несколько таблиц, чтобы оптимизировать эту таблицу. Есть ли какой-либо другой способ, которым я могу оптимизировать и ускорить выполнение этой таблицы.
Пожалуйста, дайте мне знать, если я оставил что-то неясным.
Ниже представлен дизайн таблицы:
+----------------+------------------+------+-----+---------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------------+------------------+------+-----+---------------------+----------------+
| test_id | int(11) unsigned | NO | PRI | NULL | auto_increment |
| prime_id | int(11) unsigned | NO | MUL | 0 | |
| prime2_id | int(11) unsigned | NO | MUL | 0 | |
| timestamp | datetime | NO | MUL | 0000-00-00 00:00:00 | |
| test_time | int(11) | NO | | 0 | |
| status | int(11) | NO | | 0 | |
| component | int(11) unsigned | NO | | 0 | |
| c_component | int(11) unsigned | NO | | 0 | |
| C2_component | int(11) unsigned | NO | | 0 | |
| C3_component | int(11) unsigned | NO | | 0 | |
| rt_component | int(11) unsigned | NO | | 0 | |
| code | int(11) unsigned | NO | | 0 | |
| ip | int(11) unsigned | YES | | 0 | |
| step_id | int(11) unsigned | YES | | NULL | |
+----------------+------------------+------+-----+---------------------+----------------+
This is the index information of the table:
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+-------+------------+-----------------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
| tests | 0 | PRIMARY | 1 | test_id | A | 629448388 | NULL | NULL | | BTREE | |
| tests | 1 | ixf_prime_id | 1 | prime_id | A | 14 | NULL | NULL | | BTREE | |
| tests | 1 | ixf_prime2_id | 1 | prime2_id | A | 14 | NULL | NULL | | BTREE | |
| tests | 1 | ix_timestamp | 1 | timestamp | A | 157362097 | NULL | NULL | | BTREE | |
| tests | 1 | ix_prime_id_timestamp | 1 | prime_id | A | 14 | NULL | NULL | | BTREE | |
| tests | 1 | ix_prime_id_timestamp | 2 | timestamp | A | 629448388 | NULL | NULL | | BTREE | |