MariaDB Federated FederatedX

У меня вопрос, чтобы узнать, какое решение лучше выбрать.

У меня есть две базы данных MariaDB на разных машинах в одной гигабитной сети, обе работают под управлением MariaDB 10.1.8 на centos 7

Одна - это веб-база данных, а другая - база данных FreeRadius.

Веб-база данных составляет около 8 ГБ, а с помощью рабочей среды я вижу около 18 записей InnoDB в секунду. Машина веб-базы данных имеет диск 50 ГБ, 8 Гб оперативной памяти, 4xCPU. На PRTG датчик выбора веб-базы данных задерживается в диапазоне 140 мс-203 мс.

База данных Radius составляет около 20 ГБ, а с помощью рабочей среды я вижу около 28 записей InnoDB в секунду. Машина базы данных Radius имеет диск 100 ГБ, 16 ГБ оперативной памяти, 6xCPU. На PRTG датчик выбора веб-базы данных задерживается в диапазоне от 140 мс до 300 мс.

Я думаю, что база данных Radius обычно используется чаще, чем веб-база данных.

Теперь вопрос в том, что мне нужно создать таблицу с посещениями пользователей по дням.

Мне нужно, чтобы эта таблица использовалась двумя базами данных и чтобы можно было вставлять данные с обеих машин.

Иногда веб-сервер будет вставлен первым, а иногда будет радиус-сервером, который их вставит. Radius Server выполнит большую часть вставок в эту таблицу. Это таблица, которую мне нужно заполнить

CREATE TABLE `visitas` (
  `idUsuario` int(10) unsigned NOT NULL,
  `idInstalacion` int(10) unsigned NOT NULL,
  `fVisita` date DEFAULT NULL,
  `tAcceso` varchar(25) DEFAULT NULL,
  `nUpdates`  int(10) unsigned NOT NULL,
  UNIQUE KEY `Visitas` (`idUsuario`,`idInstalacion`,`fVisita`),
  KEY `idUsuario` (`idUsuario`),
  KEY `idInstalacion` (`idInstalacion`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

Итак, я создал TRIGGER на радиус-сервере для вставки при посещениях (с обновлением дублированного ключа). Это работает отлично.

DELIMITER $$;
create TRIGGER UpdateVisitas AFTER INSERT ON radacct
FOR EACH ROW 
BEGIN
    INSERT into visitas (
       select u.department as idUsuario,u.company as idInstalacion,DATE(r.acctstarttime) as fVisita,'Radius' as tAcceso,0 as nUpdates    from radacct r,userinfo u where r.username=u.username  and r.radacctid=NEW.radacctid     
    ) ON DUPLICATE KEY UPDATE visitas.tAcceso='Radius',nUpdates=(1+nUpdates) ;
END$$

Теперь вопрос мне нужно FEDERATEDX эту таблицу, чтобы иметь возможность вставлять с радиус-сервера и веб-сервера и соединяться с другими таблицами с веб-сервера.

Вставка будет производиться в основном из Radius, а выбор с объединениями для статистики будет производиться в основном из Интернета.

Итак, согласно всей этой информации, что лучше всего создать таблицу посещений на Radius Server и объединить ее на веб-сервере иным способом.

Дайте мне знать, если вам нужна дополнительная информация.

большое спасибо!.

0 ответов

Другие вопросы по тегам