Я делаю почти то же самое, что и вы, с данными управления процессом с удаленных оконечных устройств и компьютеров с электронным потоком, за исключением того, что я буферизирую данные триггера в очереди брокера служб SQL, а затем отправляюсь в мир IOT.
. Вы можете использовать .Net MQTT-клиент прямо внутри SQL Server, но я бы не рекомендовал его, поскольку SQL Server будет выгружать сборку всякий раз, когда ему это нравится, и осиротит все сокеты, и они будут находиться в подвешенном состоянии до перезапуска сервера. .
Способ обойти это - создать службу Windows, в которой размещается служба WCF, которая содержит экземпляр клиента MQTT и предоставлять методы WCF для публикации или подписки (попробуйте использовать MQTTNet - https://github.com/chkr1011/MQTTnet).
Как только ваш сервер WCF будет завершен, вам нужно будет создать сборку SQL CLR (https://code.msdn.microsoft.com/Calling-WCF-Service-from-a-8071ceaa) для вызова службы WCF, не забывайте, что в SQL 2017 для вас будет необходимо иметь строгое имя сборки для установить правильно.