ডাটা প্রিফেচিং স্বাধীন ডাটা ট্রান্সফার সেশন সংখ্যা কমিয়ে আনার একটি কার্যকর উপায়। প্রিফেচিং আপনাকে পূর্ণ ক্ষমতায়, একটি একক কানেকশনের জুরে, একটি একক বার্স্ট এর মধ্যে একটি প্রদত্ত সময়ের জন্য আপনার জন্য প্রয়োজনীয় ডাটা ডাউনলোড করতে দেয়।
আপনার ট্রান্সফার সম্মুখে লোড করার দ্বারা, আপনি ডাটা ডাউনলোড করতে প্রয়োজনীয় রেডিও একটিভেশনের সংখ্যা কমিয়ে দেন। ফলশ্রুতিতে আপনি শুধুমাত্র ব্যাটারি লাইফ সেভই করবেন না বরং আপনি লেটেন্সি উন্নতও করতে পারেন, প্রয়োজনীয় ব্যান্ডউইথড কমিয়ে দিতে পারেন এবং ডাউনলোড সময় কমিয়ে দিতে পারেন।
প্রিফেচিং এবটি একশন বা ডাটা ভিউ সম্পাদন কারর পূর্বে ডাউনলোড সম্পূর্ণ করার জন্য অপেক্ষার কারনে ইন-অ্যাপ লেটেন্সির দ্বারা একটি উন্নত ইউজার এক্সপেরিয়েন্স সরবরাহও করে।
কিন্তু, আক্রমনাতœকভাবে ব্যবহৃত হওয়া, প্রিফেচিং ব্যাটারি নিঃশেষ হওয়া এবং ব্যান্ডউইথ ব্যবহারের বৃদ্ধির ঝুকিকে প্রবর্তন করে- একইভাবে ডাউনলোড কোটা-ডাটা যেটা ব্যবহার হচ্ছে না সেটা ডাউনলোড করার মাধ্যমে। এটা নিশ্চিত করার জন্যও গুরুত্বপূর্ন যে প্রিফেচিং অ্যাপলিকেশনের শুরু করাটাকে বিলম্ব করায় না যখন অ্যাপ সম্পূর্ণ করার জন্য প্রিফেচের জন্য অপেক্ষা করে। ব্যবহারিক ভাষায় যা প্রগতিশীলভাবে ডাটা প্রক্রিয়াকরনকে বোঝাতে পারে, বা ধারাবাহিক ট্রান্সফার আরম্ভ করে অ্যাপলিকেশনের শুরু করার জন্য প্রয়োজনীয় ডাটার কোনটা ডাউনলোড হবে এবং কোন প্রসেস করা হবে সেটার গুরুত্ব অনুসারে।
আপনি কতটা আক্রমনাত্মকভাবে প্রিফেচ করছেন সেটা নির্ভর করে ডাউনলোড হওয়া ডাটার আকারের উপর এবং এটা কীভাবে ব্যবহৃত হচ্ছে তার উপর। একটি রাফ গাইড হিসাবে, উপরের বর্নিত স্টেট মেশিনের উপর ভিত্তি করে, ডাটার জন্য যার চলতি ইউজার সেশনের মধ্যে থেকে ৫০% ব্যবহৃত হওয়ার সুযোগ আছে, আপনি প্রচলিতভাবে প্রায় ৬ সেকেন্ডের জন্য প্রিফেচ করতে পারেন (প্রায় ১-২ MB) সম্ভাব্য ডাউনলোড করা অব্যবহৃত ডাটার খরচ, ডাউনলোড না হওয়া সেভ করা ওই ডাটা ম্যাচ করে শুরু করার পূর্বে ।
সাধারনভাবে বলতে, ঐ ধরনের ডাটা প্রিফেচ করা একটি ভালো চর্চা এমন যে প্রতি ২ থেকে ৫ মিনিটে আপনার অন্য ডাটা ডাউনলোড শুরু করার প্রয়োজন হবে এবং ১ থেকে ৫ মেগাবাইটস অনুযায়ী।
এই নিয়ম অনুসারে, বড় ডাউনলোড- যেমন ভিডিও ফাইল- নিয়মিত বিরতিতে একসাথে ডাউনলোড হওয়া উচিত (প্রতি ২ থেকে ৫ মিনিট), কার্যকরীভাবে কয়েক মনিটের মধ্যেই দেখা হবে শুধু এমন ভিডিও ডাটা প্রিফেচ করা।
উল্লেখ্য পরবর্তী ডাউনলোড বান্ডলড হওয়া উচিত, যা পরবর্তী অধ্যায়ে আলোচনা করা হয়েছে, Batch Transfers and Connections, এবং এই অনুমান কানেকশনের ধরণ এবং গতির উপর নির্ভর করে ভিন্ন হয়, যা Modify your Download Patterns Based on the Connectivity Type আলোচনা করা হয়েছে।
আসুন কিছু বাস্তব উদাহরণ দেখা যাক:
একটি মিউজিক প্লেয়ার
আপনি একটি সম্পূর্ণ এ্যালবাম প্রিফেচ করার জন্য পছন্দ করতে পারেন, কিন্তু উজার প্রথম গান শোনার পর শোনা বন্ধ করে দিতে পারে, সেক্ষেত্রে আপনি একটি বেশ কিছু ব্যান্ডউইথড এর পরিমান এবং ব্যাটারির লাইফ অপচয় করবেন।
এর চেয়ে ভালো পদ্ধতি হতে পারে একটি গান হচ্ছে তার সাথে একটি গানের বাফার রাখা। মিউজিক স্ট্রিমিং এর জন্য, একটি অবিরত স্ট্রিম যা সব সময় রেডিও একটিভ ধারন করে তার বদলে, বার্স্টে (bursts) অডিও স্ট্রিমটি প্রেরণ করতে HTTP লাইভ স্ট্রিমিং ব্যবহার করাটা বিবেচনা করুন, উপরে আলোচনা করা প্রিফেচিং পদ্ধতি অনুসরণ করুন।
একটি নিউজ রিডার
একটি ক্যাটাগরি নির্বাচিত (সিলেক্ট) করার পর শুধু হেডলাইন ডাউনলোড করার মাধ্যমে অনেক নিউজ অ্যাপ ব্যান্ডউইথড কমিয়ে আনার চেষ্টা করে, পূর্ন আর্টিকেল ডাউনলোড করে যখন ইউজার এটা পড়তে চায় এবং থাম্বনেইল (ছবি) দেকানো হবে শুধু মাত্র যখন তারা ভিউয়ে স্ক্রল করে ঢুকবে।
এই অ্যাপ্রোচ ব্যবহার করে, ইউজারের নিউজ রিডিং সেশনের জন্য রেডিও কে সক্রিয় থাকতে বাধ্য করে, যেহেতু তারা হেডলাইন স্ক্রল করে, ক্যাটাগরি পরিবর্তন করে, আর্টিকেল পড়ে। শুধু তাই নয়, প্রতিনিয়ত এনার্জি স্টেটের মধ্যে বদল হওয়া উল্লেখযোগ্য লেট্যান্সি তৈরী করবে যখন ক্যাটাগরি বা রিডিং আর্টিকেল পরিবর্তন হয়।
শুরুর সময়ে একটি যৌক্তিক পরিমান ডাটা প্রিফেচ করা একটি ভালো পদ্ধতি হতে পারে, নিউজ হেডলাইন এবং ছবির (থাম্বনেইল) প্রথম সেট দিয়ে শুরু করুন-একটি কম ল্যাটেন্সি শুুরর সময় নিশ্চিত করুন-এবং বাকী হেডলাইন এবং থাম্বনেইল জারি রাখুন একইভাবে নিদেন পক্ষে প্রাথমিক হেডলাইন তালিকা থেকে বিদ্যমান প্রতিটা আর্টিকেলের জন্য আর্টিকেল টেক্সট।
প্রতিটা শিরোনাম, থাম্বনেইল, আর্টিকেল টেক্সট এবং এমনকি হয়তো পূর্ন আর্টিকেল ছবি প্রিফেক্স করতে অন্য বিকল্প হচ্ছে- সাধারণত একটি পূর্ব নির্ধারিত সুচিতে ব্যাকগ্রাউন্ডের মধ্যে। এই পদ্ধতি যে কনটেন্ট কখনই ব্যবহৃত হয় নাই তা ডাউনলোড করে উল্লেথযোগ্য ব্যান্ডউইথড এবং ব্যাটারি লাইফ ব্যয় করার ঝুকি নেয়, তাই এটা সতর্কতার সাথে ব্যবহার করা উচিত।
ডাউনলোড করার পূর্ন শিডিউল তৈরী করার একটি উপায় হচ্ছে শুধূমাত্র তখন যখন ওযাই-ফাইয়ে যুক্ত হয়, এবং সম্ভবত ডিভাইস পরিবর্তন হচ্ছে শুধুমাত্র তখন। এটা Modify your Download Patterns Based on the Connectivity Type অধ্যায়ে আরো বিস্তারিত আলোচনা করা হয়েছে।