جناب جسارته حق با شماست سرعت کار این تابع file_get_contents بالاست اما به دلیل اینکه تمامی محتویات فایل رو در رم buffer میکنه مصرف رم خیلی زیادی می تونه در فایل های حجیم داشته باشه.
برای همین اکثراً در کار با فایل های حجیم در PHP پیشنهاد میکنن که به جای file_get_contents از تابع fopen برای ایجاد یک file pointer و سپس از تابع fgets برای خواندن تیکه تیکه فایل (مثلاً خط به خط) استفاده کنن.
چون اینطوری تابع fgets فقط همون مقدار از فایل که نیازه رو تو مموری بافر میکنه و نه ممکنه که اخطار سر ریز بافر در حجم های خیلی بالا پیش بیاد و نه مشکل مصرف بیش از حد رم داره.
نمونه کد در این لینک:
http://stackoverflow.com/questions/1...e-files-in-php که البته طبق گفته این لینک که درست هم هست علاوه بر مشکل سرعت و بافر در حجم های خیلی زیاد ممکنه مشکل Time Out هم پیش بیاد.
همچنین درباره سرعت دیتابیس نسبت به فایل هم پیشنهاد میکنم لینک های زیر رو مطالعه کنید:
http://stackoverflow.com/questions/6...database-speed
http://stackoverflow.com/questions/8...e-access-speed
درسته فایل دسترسی سریع تری داره اما در مقیاس اطلاعاتی خیلی زیاد برای خود مدیر سایت مشکل ساز میشه و حتی بعداً اگه بخواد سایت رو بفروشه نمی تونه.