Spikes are time-boxed short efforts conducted to investigate and reduce the risk. Spikes allow to check if the project worth investment, make a better estimation of the work, and make experiments with the existing options to conduct the work.
Spikes are especially useful when an agile team is unfamiliar with or wants to try a new technique, technology or tool.
An architectural spike is a special spike that is performed as a proof-of-concept and an analysis of architectural options and their feasibility to test the approach. Architectural Spikes are performed as part of iteration Zero or several weeks before the release planning.