A key difference is that at Facebook, a query != keywords. The query consists of a User's social context + semi-structured profile + keywords. Currently, the typical query is a search for a person or group.
Computing the social context (FoaF graph) and using it during query processing is computationally challenging. They hint at this system for a future post.
The personal context is critical to their ranking and make search hard:
Since our most important ranking features depend on who the searcher is, all our feature generation and ranking happens as a part of the query execution workflow i.e. our indices can't store pre-ranked results to optimize lookups. Instead, we have to generate ranking features like is_same_high_school and num_mutual_connections on the fly for every potential result, and run them through our ranking model to find the best results
It will be interesting to see how Facebook search evolves as Facebook extends to an increasingly heterogeneous types of content beyond people and profiles.