Service-oriented architecture (SOA) is the main architectural style which is used in Cloud computing. Web services running on cloud servers using RESTful HTTP (Post, Get and etc) are using this architectural style.
Fog and Edge Computing: Raw data is gathered by nodes (Sensors, SoC or etc) and it would be more efficient to label or tag the data at the edge of the network and then send it to the cloud or data centres for further processing. Any computing and network resources between data sources and cloud is an edge. Fog computing uses edge devices to collect data locally and send it to the cloud.
Clusters, Grids and Clouds:
Clusters are commodity computers, Grids are High-end computers and Clouds can be both.
Clusters and Clouds have a single owner while Grids have multiple owners.
Clouds are owned by private Companies, Grids are owned by governments, universities, research centres and etc and Clusters can be owned by everyone.
Clusters are stand-alone or homogeneous computers, Grids are Heterogeneous servers or clusters and Clouds can be both.
The following paper contains more detailed information.
Article Cloud Computing and Emerging IT Platforms: Vision, Hype, and...