I used osm2pgsql to convert osm data to postgresql. Now I have a table with edges and they have geometry like multilinestring. I am not sure what is meant be geometry of an edge. An edge is supposed to be a line between two points/nodes(start and end). How does the geometry thing come in? Can anyone please elaborate? And I want to know if routing functions like pgRouting actually use this geometry when calculating/displaying the shortest route?
An edge contains a source and target, which describes your route-able network. For Dijkstra algorithm this is sufficient. A-Star and Shooting Star algorithm have a heuristic component and make use of the geometry of source and target (x1,y1 and x2,y2). Source and target coordinates are pre-calculated for better performance.
The geometry (ie. multilinestring) is necessary for example to render the route, or to extract source and target points. It is not necessary for the shortest path algorithm.