Densest Subgraph Discovery on Large Graphs: Applications, Challenges, and Techniques