Yes, in many cases pub/sub protocols that are initiated from the device to the cloud (like MQTT) are used.
With things like persistent subscriptions and message queuing for offline clients it means that updates/commands will reach when it comes back online and it provides a way for the device to also publish it's state and any sensor readings back up to the ...
why and when to use MQTT:
When you have a server capable to run MQTT Broker/server (obviously). You can install on raspberry pi or compile Erlang MQTT broker on any other SBC with ARM linux.
When you are going to make use of the topic wildchars. Explained in Goufalite answer.
When you are going to make use of the persistent feature. For example publish with ...
I think @hardillb is covering the details pretty well.
I'd like to provide some insight regarding the overall architecture.
Regardless of what the RDBMS guys keep repeating, as soon as the data exploded back in early 2000 there has been an uprising of "no-sql" data stores. RDBMs do a lot of things good but they are far from being the only ...