What is the meaning of step in ERA reanalysis data?
The "step" is the number of hours the ERA re-forecast has been run into the future from the "time" of the re-analysis.

For example, asking for ERA data with time = 12:00 and step = 0 means asking for data valid at 12:00 based on a re-analysis for 12:00. But asking for data with time = 12:00 and step = 6 means asking for data valid at 18:00, i.e. for data produced by a 6 h model run based on the 12:00 re-analysis.

To fill the gaps between the analysis times one can use steps from a forward run. Forward runs are needed to get parameters like time accumulated precipitation, which would not be available from an analysis. Sometimes a combination of steps and times might be appropriate for a joint analysis of instantaneous and time averaged parameters, i.e. to stagger them correctly in time.

Data valid 00:00 deviate less from the observations if they come from a 00:00 analysis compared to data from step 12 of the 12:00 analysis. But a series of steps from one initialization time should be more consistent in time compared to a series of independent analyses.