GPS, Compass, Heading Data?

I am tasked with learning how to use MarvelMind SuperBeacons as GPS for a flying drone.
I know nothing about these things. And that’s why I need to learn.
I don’t know if this is the right forum for this but it’s worth a shot.

Firstly, what is the difference between GPS and Compass ? Which one do I need in order to make the drone fly automatically ?

Secondly, what is heading data ? Does Arducopter handle this kind of data ?

I will eventually need to use a Marvelmind SuperBeacon as a GPS for a flying drone that has a CubeOrange with ArduCopter V4.0.7 firmware.
I also have DroneBridge on an ESP32 that I have no idea what is for.

What do you guys think ?

gps gives you position in 3D space (latitude, longitude and altitude) if you have a clear sky view and good GPS signal reception.

Compass gives orientation in 3D space (roll, pitch, yaw) if you have a good GPS signal reception, if you don’t it will just give you the north orientation.

You need both.

Heading data is the direction relative to north.

It handles it all.

This is for telemetry data communication.