I obtained ADS-B raw messages for aircraft icao24='ae0943' on 9/9/2019 between hour>=1568037600 AND hour<=1568066400. After convert epoch to GMT, I sorted Position_data4 & Velocity_data4 together with respect to "mintime". For time period from 6:11:41pm to 6:11:44pm, receivers only received position message and from 6:11:45pm to 6:11:48pm they only received velocity message. How come ADS-B be transmitting only position or only velocity message for such a long period of time? My understanding is that ADS-B should transmit airborne position and velocity messages every 0.4 – 0.6 sec.
To further understand what's going on, may I know how OpenSky keeps track of mintime? and how could I figure out which receiver is receiving that raw message? Thank you in advance for helping me out!
You will see this a lot. The reason is simply the loss due to collisions on the 1090MHz channel. We've measured and published about this in 2014 when we started OpenSky  and it has been re-measured with the same results many times (e.g. ). While the concrete loss depends on type & number receivers, environments, number of aircraft etc. it is very practical to not receive a few position or velocity messages in a row.
You can find the sensors/times that received a message in the 'sensors' structure in the respective tables.
Thanks a lot!!! One more quick question, I tried to query information from "sensor_visibility_data3" to find the sensors/time information. However it seems to me that there's no information available after 04/27/2016. How may I find information for data during September/2019?
I'm hoping to figure out, for each raw message from position_data4, which OpenSky sensor is receiving and uploading that message.
There was a switch to a new table at that time, so everything older is in data_3, everything newer in data_4. However, as I said, you need to query the sensor data structure that is *in* the position/velocity_data4 tables. Or the serials array<int> in the state_vector_data4.