I know there are many posts on this topic, but I've been really pouring over this one lately and wanted to hear the conclusion of some others who have been doing the same. I started just using the Graph API using the Graph style of getting data...

$facebook->api('/me/posts');

The problem is, it seemed pretty sluggish, but it was reliable. When I set a limit of 100 posts per query, I received those 100 posts, and was even given a friendly little paging link to get the next set.

But like I said, the query was sluggish, so I tried out FQL, which seemed to process things much faster, and gave me a far stronger bit of control over the data I was requesting, and gave me some real freedoms in what data I wanted specifically. But FQL sucks on reliability. I could craft a query asking for 1000 results and only get 93 results. I read that facebook grabs the 1000 then takes out the ones I shouldn't be seeing for various reasons, and gives me the left overs, which makes any sort of stepping difficult, and the results, while a little faster, pretty inaccurate.

That massive query only did get me 95 posts, and managed to get almost six months back in time.

I'll admit I'm still picking up the very finer in's and outs of FQL, but SQL is something I'm well versed in.

So my question is, should I stick with the tediousness of FQL and keep fine tuning those requests, or should I just come to terms with the lack of control and slightly slower speeds of using the friendly facebook Graph?