তবে সম্প্রতি আমি একটি সার্ভারে কিছু ডাটাবেস জুড়ে এসেছি যেখানে প্রতিটি ডাটাবেসে একাধিক এমডিএফ ফাইল ছিল।
এটি ভুল নামকরণের কনভেনশনের কারণে। মাইক্রোসফ্ট বলেছে যে প্রতিটি ডাটাবেসে একটি প্রাথমিক ডেটা ফাইল থাকে তবে এর অর্থ এই নয় যে এটিতে কেবল একটি "এমডিএফ ডেটা ফাইল" থাকতে পারে, ডাটাবেসটিতে .mdf
এক্সটেনশন সহ অনেকগুলি ডেটা ফাইল থাকতে পারে তবে কেবল একটিই প্রাথমিক ডেটা ফাইল হবে। যথাযথ সীমাবদ্ধতার mdf
জন্য প্রাথমিক ডেটা ফাইল এবং ndf
মাধ্যমিক ডেটা ফাইলকে এক্সটেনশন দেওয়া ভাল তবে এটি কোনও কঠোর এবং দ্রুত নিয়ম নয় আপনি প্রাথমিক ডেটা ফাইলটিতে .abc এক্সটেনশনও দিতে পারেন যাতে আপনি যা দেখেছেন তা স্বাভাবিক। সত্য হিসাবে আপনি আপনার পছন্দ মতো কোনও এক্সটেনশন দিতে পারেন।
একটি ডাটাবেসের জন্য একাধিক .mdf ফাইল থাকার কোন জ্ঞান আছে?
আপনি যদি বলতে চান:
একটি ডাটাবেসের জন্য একাধিক প্রাথমিক ফাইল থাকার কোন জ্ঞান আছে ?
উত্তরটি হ'ল না, একটি ডাটাবেসে কেবল একটি প্রাথমিক ডেটা ফাইল থাকতে পারে।
তবে আপনি যদি বলতে চান:
ডাটাবেসের জন্য একাধিক ডেটা ফাইল (.mdf, .ndf, বা আলাদাভাবে নামকরণ) করার কোনও জ্ঞান আছে কি ?
এটি নির্ভর করে, আপনি একাধিক ডেটা ফাইলের সাথে সুবিধা পেতে এবং করতে পারেন না। এগুলি যদি বিভিন্ন শারীরিক ড্রাইভে ছড়িয়ে পড়ে থাকে (আমি স্পিন্ডলের কথা বলছি) আপনি লেখার নিবিড় প্রয়োগের সাথে কিছুটা সুবিধা দেখতে পাবেন। যদি তারা সমস্ত একই লজিক্যাল পার্টিশনে থাকে তবে এর কোনও লাভ হবে না কারণ অন্তর্নিহিত তারা সাধারণ সংস্থান ব্যবহার করবে। ফাইল এবং ফাইলগ্রুপগুলি ব্যবহার করে ডাটাবেসের কর্মক্ষমতা উন্নত হয়, কারণ এটি একাধিক ডিস্ক, একাধিক ডিস্ক নিয়ন্ত্রক বা RAID (স্বতন্ত্র ডিস্কের রিডানড্যান্ট অ্যারে) সিস্টেম জুড়ে ডেটাবেস তৈরি করতে দেয়। উদাহরণস্বরূপ, যদি আপনার কম্পিউটারে চারটি ডিস্ক থাকে, আপনি প্রতিটি ডিস্কে একটি ফাইল সহ তিনটি ডেটা ফাইল এবং একটি লগ ফাইল নিয়ে তৈরি একটি ডাটাবেস তৈরি করতে পারেন। ডেটা অ্যাক্সেস হওয়ার সাথে সাথে চারটি পঠন / লিখন শিরোনাম একই সাথে সমান্তরালে ডেটা অ্যাক্সেস করতে পারে।
যেমনটি এই দুটিই MSDN BOL নিবন্ধ
ফাইলগ্রুপগুলি প্রতিটি ফাইলগোষ্ঠীর মধ্যে থাকা সমস্ত ফাইল জুড়ে আনুপাতিক ভরাট কৌশল ব্যবহার করে। ফাইলগ্রুপে ডেটা লেখা হওয়ার সাথে সাথে এসকিউএল সার্ভার ডেটাবেস ইঞ্জিন ফাইলের গোষ্ঠীর মধ্যে থাকা প্রতিটি ফাইলে ফাইলের মুক্ত স্থানের সমানুপাতিক পরিমাণ লিখে দেয়, পরিবর্তে প্রথম ফাইলটিতে সমস্ত তথ্য লেখার পরিবর্তে। এটি পরবর্তী ফাইলটি লিখে দেয় writes উদাহরণস্বরূপ, যদি ফাইল এফ 1 এ 100 এমবি ফ্রি থাকে এবং ফাইল এফ 2-তে 200 এমবি ফ্রি থাকে তবে একধরনের ফাইল এফ 1 থেকে বরাদ্দ করা হয়, ফাইল এফ 2 থেকে দুটি এক্সটেন্টস এবং আরও অনেক কিছু। এইভাবে, উভয় ফাইলই প্রায় একই সময়ে পূর্ণ হয়ে যায় এবং সাধারণ স্ট্রাইপিং অর্জন করা হয়।
আমি জানি যে অন্য সুবিধাটি 1 টিবি ডাটাবেস বিবেচনা করে যদি এটির জন্য আপনার একক ডেটা ফাইল থাকে এবং আপনি অন্য কোনও সার্ভারে এই ডাটাবেসটি পুনঃস্থাপন করতে চান তবে আপনার কাছে 1 টিবি ফাঁকা জায়গা থাকতে পারে। এখন যদি একই ডাটাবেসটি প্রতিটি 250 মাপের আকারের বিভিন্ন ফাইলে ছড়িয়ে দেওয়া হয় তবে এটি পুনরুদ্ধারে সহজ হয়ে যায়। এটি আসলে আপনার দৃশ্যপট নাও হতে পারে তবে এটি 1 টিবি ড্রাইভের চেয়ে চার 250 জি ড্রাইভ সহ একটি সার্ভার সন্ধান করা অনেক সহজ করে তোলে
আমি বলব অনেকগুলি ডাটা ফাইলের পরিবর্তে আলাদা আলাদা ফাইল গ্রুপ থাকা ভাল তবে আবার কোনও পরিবেশ নেই। একাধিক ফাইলগ্রুপের সমন্বয়ে গঠিত ডেটাবেসগুলি টুকরোয়াল পুনরুদ্ধার হিসাবে পরিচিত প্রক্রিয়া দ্বারা পর্যায়ে পুনরুদ্ধার করা যেতে পারে। পিসিমিল রিস্টোর সমস্ত পুনরুদ্ধার মডেলগুলির সাথে কাজ করে, তবে সাধারণ মোডের চেয়ে পূর্ণ এবং বাল্ক-লগড মডেলগুলির জন্য আরও নমনীয়। একটি ডাটাবেসে ফাইল বা ফাইলগোষ্ঠীগুলি পৃথকভাবে ব্যাক আপ এবং পুনরুদ্ধার করা যায়। এটি আপনাকে বাকী ডাটাবেসটি পুনরুদ্ধার না করে কেবল ক্ষতিগ্রস্থ ফাইলগুলিকে পুনরুদ্ধার করতে দেয়। ফাইলগ্রুপ ব্যাকআপের ফাইলগুলি পৃথকভাবে বা গোষ্ঠী হিসাবে পুনরুদ্ধার করা যায়