উইন্ডোজ / লিনাক্স কেন রিলেশনাল ডেটাবেস (আরডিবিএমএস) ব্যবহার করে না?


32

উইন্ডোজ / লিনাক্স কেন রিলেশনাল ডাটাবেস ( আরডিবিএমএস ) ব্যবহার করে না ?

আমি জানি যে তারা সমস্ত ডেটা সঞ্চয় করার জন্য ফাইল সিস্টেম ব্যবহার করে তবে আপনি কি মনে করেন না যে আমরা ওয়েব সাইট / ওয়েব অ্যাপ্লিকেশনগুলিতে ব্যবহার করি সেভাবে ডাটাবেসগুলি ব্যবহার করা আরও দক্ষ?

স্টোরেজ জন্য একটি ডাটাবেসের মাধ্যমে একটি ফাইল সিস্টেমের ব্যবহার সম্পর্কে বিস্তারিত ব্যাখ্যা করুন।

এটি কোনও সদৃশ নয় কখন কোনও পাঠ্য ফাইল থেকে ডেটা পার্স করার চেয়ে ডাটাবেসের ব্যবহার পছন্দ করা উচিত? আমি কেবল অপারেটিং সিস্টেমের প্রেক্ষাপটে কথা বলছি এবং সেই প্রশ্নটি সাধারণীকরণযোগ্য।


32
একটি ফাইল সিস্টেম হল একটি ডাটাবেস।

20
কারণ ফাইল সিস্টেমগুলি ডেটা বেসগুলি বাস্তবায়নের জন্য প্রয়োজনীয় ।
কিলিয়ান ফট

16
উইন্ডোজ একটি ডাটাবেস ব্যবহার করে, একে "রেজিস্ট্রি" বলা হয়। বা আপনার অর্থ "রিলেশনাল ডাটাবেস"? এটি একটি আলাদা প্রশ্ন।
ডক ব্রাউন

6
@ gnasher729 ফাইল সিস্টেমটি একটি বিশেষ ধরণের ডাটাবেস, এবং যেমন নির্দিষ্ট ধরণের ডেটার জন্য কেবল এটিই ভাল। অন্যান্য ধরণের ডেটাবেস বিভিন্ন ধরণের ডেটাবেস (উদাহরণস্বরূপ সম্পর্কিত) এর সাথে আরও ভালভাবে পরিবেশন করা হয়।

6
পছন্দ করেছেন আপনি কোনও কাঁচা ডিস্ক পার্টিশনে লিখতে পারেন (যা কোনও ওএস ফাইলের সাথে তুলনীয় নয়)।
পল ড্রাগার

উত্তর:


60

আজ অধিকাংশ ডাটাবেসের ম্যানেজমেন্ট সিস্টেম (যেমন PostgreSQL , MongoDB , ইত্যাদি ...) অভ্যন্তরীণভাবে ওএস ফাইল (অতীতে কিছু DBMSs কাঁচা ডিস্ক পার্টিশন ব্যবহার করা সরাসরি) ভিতরে তাদের তথ্য রাখা।

স্পিনিং হার্ড ডিস্কগুলি ব্যবহার করে সাম্প্রতিক কম্পিউটারগুলিতে , ডিস্কটি এত ধীর - সিপিইউ বা র‌্যামের তুলনায় - কয়েকটি সফ্টওয়্যার স্তর যুক্ত করা প্রাসঙ্গিক নয়। এসএসডি প্রযুক্তি কিছুটা পরিবর্তন করতে পারে এবং কিছু ফাইল সিস্টেম এসএসডি-র জন্য অনুকূলিত হয়।

Historicalতিহাসিক এবং সামাজিক কারণে সাধারণত ফাইলগুলি বেশিরভাগ ওএসে উপস্থিত থাকে (বিশেষত সি সংকলক এবং সর্বাধিক সরঞ্জাম - সম্পাদক, লঙ্কার - ফাইল চান তাই মুরগি এবং ডিমের সমস্যা রয়েছে), এবং কারণ খুব ভাল ফাইল রয়েছে সিস্টেম বাস্তবায়ন।

বিটিডাব্লু, কিছু প্রয়োজনীয় সিস্টেম সুবিধা ডাটাবেস ব্যবহার করতে পারে। উদাহরণস্বরূপ লিনাক্সে পিএএম- তে ডেটাবেসগুলিতে তথ্য ব্যবহারের জন্য কনফিগার করা যেতে পারে (তবে এটি অনুশীলনে খুব কমই করা হয়)। এছাড়াও, কিছু মেল সার্ভার তাদের কিছু বা বেশিরভাগ ডেটাবেসগুলিতে সঞ্চয় করতে পারে (যেমন এক্সিম )।

ফাইলগুলি ডাটাবেসের তুলনায় কিছুটা কম বিমূর্ততা থাকে, সুতরাং এগুলি কার্যকর করা ( লিনাক্স কার্নেলের ফাইল সিস্টেম এবং ভিএফএস স্তর হিসাবে ) এবং আরও দ্রুত ব্যবহার করা যায়। বিশেষত, ডাটাবেসে থাকা ফাইলগুলির তুলনায় ফাইলগুলিতে অপারেশনগুলি অনেক বেশি সীমাবদ্ধ। আসলে, আপনি ফাইল বা ফাইল সিস্টেমগুলি কিছু খুব সীমাবদ্ধ ডাটাবেস হিসাবে দেখতে পেতেন!

আপনি একটি ডিজাইন পারে অপারেটিং সিস্টেম কোন ফাইল ছাড়া , কিন্তু কিছু অন্যান্য লম্ব সঙ্গে অধ্যবসায় যন্ত্রপাতি (থাকার যেমন প্রত্যেক প্রক্রিয়া ক্রমাগত হতে, তাহলে আপনি অনেক যত্ন না স্পষ্টভাবে স্টোরেজ সম্পর্কে, যেহেতু ওএস ক্রমাগত সম্পদ পরিচালনার করা হয়)। এটি বেশ কয়েকটি একাডেমিক অপারেটিং সিস্টেমে (1) (এবং 1980 এর দশকের স্মার্টটাক এবং লিস্প মেশিনেও হয়েছে , কোনওভাবে আইবিএম সিস্টেম আই , ওরফে এএস / 400 , এবং কিছু খেলনা প্রকল্পে ওসদেব থেকে সংযুক্ত), তবে আপনি যখন নিজের ওএসটিকে এইভাবে ডিজাইন করেন আপনি প্রচুর বিদ্যমান সরঞ্জামগুলিতে লাভ করতে পারবেন না (যেমন আপনাকে আপনার সংকলক এবং আপনার ব্যবহারকারী ইন্টারফেসটি স্ক্র্যাচ থেকে তৈরি করতে হবে, এবং এটি অনেক কাজ)।

লক্ষ্য করুন যে মাইক্রোকার্নেল অপারেটিং সিস্টেমগুলি কার্নেল স্তর দ্বারা সরবরাহিত ফাইলগুলির প্রয়োজন না হতে পারে কারণ ফাইল সিস্টেমগুলি কেবল অ্যাপ্লিকেশন সার্ভার (উদাহরণস্বরূপ ব্যবহারকারীল্যান্ডে চলমান হার্ট অনুবাদক )। আজকের মিরাজস-ইউনিকার্নাল পদ্ধতির দিকে নজর দিন

লিনাক্স (এবং সম্ভবত উইন্ডোজ, যা এর বেশিরভাগ অনুপ্রেরণা ভিএমএস এবং ইউনিক্স থেকে পেয়েছে ) কাজ করার জন্য ফাইলগুলির প্রয়োজন। খুব কমপক্ষে, আরআর প্রোগ্রাম (কার্নেল দ্বারা শুরু করা প্রথম প্রোগ্রাম) অবশ্যই একটি ফাইলের মধ্যে সঞ্চালিত/sbin/init হতে পারে (প্রায়শই , তবে এটি আজকাল সিস্টেমেড করা যেতে পারে ), এবং (প্রায়) অন্যান্য সমস্ত প্রোগ্রাম এক্সিকিউ (2 ) দিয়ে শুরু করা হয় ) সিস্কেল তাই একটি ফাইলের মধ্যে সংরক্ষণ করা আবশ্যক। তবে, ফুস আপনাকে নন-ফাইল জিনিসগুলিতে ফাইলের মতো শব্দার্থক দিতে সক্ষম করে।

এটিও লক্ষ করুন যে লিনাক্সে (এবং সম্ভবত উইন্ডোজ, যা আমি জানি না এবং কখনও ব্যবহার করি না) স্ক্লাইট হ'ল একটি লাইব্রেরি যা কোনও ফাইলে কিছু এসকিউএল ডাটাবেস পরিচালনা করে এবং এর জন্য একটি এপিআই সরবরাহ করে। এটি সর্বজনবিদিত যে অ্যান্ড্রয়েড (একটি লিনাক্স ভেরিয়েন্ট) প্রচুর স্ক্লাইট ফাইল ব্যবহার করে (তবে এটিতে এখনও পসিক্সের মতো ফাইল সিস্টেম রয়েছে)।

অ্যাপ্লিকেশন চেকপয়েন্টিং সম্পর্কেও পড়ুন (যেগুলি অনেকগুলি বর্তমান ওএসে, প্রক্রিয়াগুলিকে ফাইলগুলিতে লিখতে প্রয়োগ করা হয়)। চূড়ান্তভাবে ঠেলাঠেলি করে, এই পদ্ধতির জন্য ম্যানুয়ালি অ্যাপ্লিকেশন ফাইলগুলি লেখার প্রয়োজন নেই (তবে কেবলমাত্র চেকপয়েন্টিং যন্ত্রপাতি ব্যবহার করে পুরো প্রক্রিয়া অবস্থা ধরে রাখতে হবে)।

প্রকৃতপক্ষে, আকর্ষণীয় প্রশ্নটি হল যে বর্তমান অপারেটিং সিস্টেমগুলি এখনও ফাইলগুলি কেন ব্যবহার করে, এবং উত্তরটি উত্তরাধিকার, এবং অর্থনৈতিক এবং সাংস্কৃতিক কারণগুলি (দুঃখের বিষয়, বেশিরভাগ প্রোগ্রামিং ভাষা এবং গ্রন্থাগারগুলি এখনও ফাইল চায়)।


নোট 1: ক্রমাগত একাডেমিক অপারেটিং সিস্টেমের অন্তর্ভুক্ত Lisaac & ফড়িং , কিন্তু এই একাডেমিক প্রকল্প নিষ্ক্রিয় বলে মনে হচ্ছে। মধ্যে এছাড়াও দেখুন http://tunes.org/ ; এটি নিষ্ক্রিয়, তবে এ জাতীয় বিষয়গুলি নিয়ে প্রচুর আলোচনা হয়েছে।

দ্রষ্টব্য 2: সময়ের সাথে সাথে ফাইলের ধারণাটি ব্যাপকভাবে পরিবর্তিত হয়েছে ( আমার প্রথম প্রোগ্রামিংয়ের অভিজ্ঞতার বিষয়ে এই উত্তরটি দেখুন ): 1980 এর দশকের প্রথম এমএসডিএস আইবিএম পিসি (কোনও ডিরেক্টরি নেই!), ভিএমএস- অন 1978 ভ্যাক্সেন - (উভয়ই স্থির-রেকর্ড ছিল একটি আদিম সংস্করণ সিস্টেম সহ ফাইল এবং ক্রমযুক্ত ফাইল), 1970 এর দশকের মেইনফ্রেমস ( ওএস / ভিএস 2 এমভিএস সহ আইবিএম / 370 ) ফাইল এবং ফাইল সিস্টেমগুলির একটি খুব আলাদা ধারণা ছিল (বিশেষত কারণ তাদের সময়ে হার্ড ডিস্ক অ্যাক্সেসের সময় অনুপাত কোর মেমোরি অ্যাক্সেসের সময় কয়েক হাজার ছিল - সুতরাং সেই সময়টিতে ডিস্কটি আজকের তুলনায় তুলনামূলকভাবে দ্রুতগতিতে চলত , এমনকি আজকের ডিস্কগুলি একেবারে হলেওআগের শতাব্দীর তুলনায় দ্রুত, আজ সিপিইউ / ডিস্কের গতির অনুপাত প্রায় এক মিলিয়ন; তবে আমাদের এখন এসএসডি রয়েছে)। এছাড়াও, যখন মেমরি অবিচ্ছিন্ন থাকে তখন ফাইলগুলি কম (বা এমনকি না) কার্যকর হয় ( সিএবি 500 এর চৌম্বকীয় ড্রাম হিসাবে, 1960 বা এমআরএএম ব্যবহার করে ভবিষ্যতের কম্পিউটারগুলি )


9
এটি উল্লেখ করার মতোও যে কয়েকটি ফাইল সিস্টেমে আসলে বেশ কয়েকটি আরডিবিএমএস বৈশিষ্ট্য রয়েছে। উদাহরণস্বরূপ, বিএফএসে ফাইল মেটাডেটা (বিশেষত বর্ধিত মেটাডেটা) বি + গাছের সাথে সূচিত হয় এবং বিওএস ফাইল ম্যানেজারের কাছে এসকিউএল-এর মতো লুকিং ইঞ্জিন থাকে যা ফাইলগুলি সন্ধানের জন্য সূচীযুক্ত মেটাডেটা অনুসন্ধান করেছিল।
গ্রেফ্যাড

2
আমি আমার উত্তরটি এগুলিতে রাখার সাহস পাচ্ছি না তবে টিউনস.org এবং জে.পাইট্র্যাট ব্লগ উভয়ই সফ্টওয়্যার ও অপারেটিং সিস্টেম সম্পর্কে আপনার দৃষ্টিভঙ্গি আরও প্রশস্ত করতে পারে।
বেসিল স্টারিনকিভিচ

4
@ গ্রেফ্যাড: একটি ফাইল সিস্টেম একটি অবজেক্ট ডাটাবেস। আমি জানি না এমন কোনও ফাইল সিস্টেমের মধ্যে সম্পর্কিত সম্পর্কিত প্রশ্নের উত্তর দেওয়ার ক্ষমতা নেই (যেমন একটি নির্দিষ্ট পরিসরে মডডের সাথে ফাইলগুলি)) আপনাকে এটি করতে হবে সমস্ত ফাইলের মোড সময় জিজ্ঞাসা করে এবং নিজেকে ফিল্টার করে। কিছু ফাইল সিস্টেমগুলি যখন অবজেক্ট ডাটাবেস হিসাবে সরাসরি ব্যবহার করা হয় তখন খুব শালীনভাবে সঞ্চালন করে (কয়েক মিলিয়ন খুব ছোট ফাইল সংরক্ষণ করা হয়, যেখানে ফাইলের নাম কী), তবে অন্যরা এই ধরণের কাজের চাপ দিয়ে ঠিক করেন ok
পিটার কর্ডস

3
@ পিটারকর্ডস: বেফস তা করেছে। যেহেতু সমস্ত মেটাডেটা বি + ট্রি-ইনডেক্সড, তাই এটি পরিসীমা কোয়েরি, ওয়াইল্ডকার্ডস, যোগদান এবং অন্যান্য মজাদার উপাদানগুলিকে সমর্থন করে। আমি শুনেছি মাইক্রোসফ্ট উইনএফএসে একই কাজ করছিল।
গ্রেফ্যাড

4
পামমোস হ'ল মোটামুটি মূলধারার একটি ওএস যার কোনও ফাইল সিস্টেম নেই। পরিবর্তে এটিতে একটি সম্পর্কযুক্ত ডাটাবেস ছিল যা সরাসরি র্যাম / ফ্ল্যাশের উপর প্রয়োগ করা হয়েছিল (মূল হার্ডওয়্যারটি আজ আইফোনের মতো ফ্ল্যাশ মেমরি ব্যবহার করে না তবে র্যাম এবং ডিস্ক উভয়ের জন্যই ব্যাটারি-ব্যাক স্ট্যাটিক র‌্যাম ব্যবহার করেছে)।
slebetman

23

যদিও এটি মতামত ভিত্তিক, আমি মনে করি এটি কেবল একটি অন্য historicalতিহাসিক নিদর্শন। প্রারম্ভিক ওএসগুলি পারফরম্যান্সের জন্য একটি সাধারণ ফাইল সিস্টেম ডিজাইন ব্যবহার করেছিল যা সেই সময়ে উপলব্ধ হার্ডওয়্যারগুলির বৈশিষ্ট্যগুলির সাথে যুক্তিসঙ্গতভাবে দৃ tied়ভাবে আবদ্ধ ছিল এবং তখন থেকেই এটি একইভাবে ছিল। একবারে প্রতিষ্ঠিত হয়ে গেলে আরও লেনদেনমূলক ক্যোয়ারী / APIোকান এপিআইয়ের জন্য পুরানো ফাইলটি পড়ুন / লিখুন এপিআইগুলি পরিবর্তন করা শক্ত।

সমস্ত বর্তমান ফাইল সিস্টেমে এই পুরানো এপিআইগুলির সাথে পিছনে সামঞ্জস্যপূর্ণ হওয়া দরকার।

মাইক্রোসফট একটি ফাইল সিস্টেম প্রতিস্থাপন সম্পর্কে মনে করেন RDBMS-ভিত্তিকটির এ, Longhorn উন্নয়ন। এটি তাদের কাছে টানতে খুব পরিবর্তন হয়েছিল, তবে আপনি দেখতে পাচ্ছেন যে তাদের প্রচেষ্টাগুলি উইন্ডোজ অনুসন্ধানের আকারে (যেখানে কোনও আরডিবিএমএস মেটাডাটার একটি অনুলিপি ব্যবহার করার জন্য ব্যবহৃত হয়) এবং এসকিউএল সার্ভারের ফাইল স্ট্রিম সিস্টেমের মতো বৈশিষ্ট্য (যেখানে একটি ফাইলের ডেটাবেস টেবিলটি ওএসের কাছে সাধারণ ডিরেক্টরি হিসাবে উইন্ডোজ এক্সপ্লোরারকে ডেটাতে অ্যাক্সেসের অনুমতি দেয় এবং একই ডেটাতে এসকিউএল কোয়েরি করে))

অন্যান্য ওএসগুলিতে আরডিবিএমএস ফাইল সিস্টেম রয়েছে। এএস / ৪০০ এর দশকে এগুলি ব্যবহৃত হত, যদিও আমি সেগুলি সম্পর্কে কখনই যথেষ্ট জানতে পারি নি; আমার মনে আছে সে সময়ে এটি কতটা অদ্ভুতভাবে উপস্থিত হয়েছিল)। আমি মনে করি অন্যান্য মেইনফ্রেম সিস্টেমে একই ধরণের পন্থা রয়েছে।


1
মেমরিটি যদি আপনাকে পরিবেশন করে তবে আপনি ডিএস 2 ইউডিবি
ব্রায়ান ক্লাইনে

1
হ্যাঁ, "-xec সাথে সন্ধান করুন" না করে ফাইল অনুমতিতে ট্রান্সএশন / কমিট শুরু করা দুর্দান্ত হবে। অ্যাডমিনল্যান্ডে নিমজ্জিত নিম্ন-স্তরের আদিম ফাইল সিস্টেমের উচ্চতা দুর্ঘটনাক্রমে এবং প্রোগ্রামিং প্লাগবোর্ডের পথে যেতে হবে। যথাযথ উপস্থাপন স্টোরেজ এবং মেটাডেটা ম্যানেজমেন্ট সিস্টেম হিসাবে "ফাইল সিস্টেম" (যদিও বাইটস্ট্রিম সামগ্রীর ব্যাখ্যা এখনও অ্যাপ্লিকেশন স্তরগুলিতে ছেড়ে দেওয়া উচিত, অন্যথায় মাথা ব্যথা হবে)? হ্যাঁ, আমরা চাই!
ডেভিড টনহোফার

12

আসল কারণ এটির প্রয়োজনের অভাব। ফাইলগুলির শীর্ষে ডাটাবেসগুলি রাখার পরিবর্তে সেগুলি মার্জ করার পরিবর্তে বেশিরভাগ পরিস্থিতিতে পরিস্থিতি হ্রাস করে পাশাপাশি যথেষ্ট পরিমাণে হ্রাসকৃত জটিলতার সাথে মার্জড সমাধানকে পরিচালনা করে। কিছু পরিস্থিতিতে অন্যেরা উল্লেখ করেছেন, আমরা ডাটাবেসের শীর্ষে ফাইলের কিছু অংশও রেখেছি (যেমন অনুমতিগুলির কাঠামো)। সেক্ষেত্রে সেই অনুমতিগুলি পরিচালিত ডাটাবেসটি বাণিজ্যিক আরডিবিএমএসের চেয়ে উল্লেখযোগ্যভাবে সহজ।

এগুলি মার্জ করার সুবিধাগুলি রয়েছে তবে এখন পর্যন্ত এগুলি খুব কম এবং যথেষ্ট হয়েছে যে আন্দোলনটি ধীরে ধীরে বাড়ছে। লোকেরা "2010 সালের পর থেকে প্রাপ্ত প্রতিটি চালানের তৃতীয় কলামটি আমাকে বলুন এবং তাদের একত্রে সংযুক্ত করুন" বলার জন্য কতটা বিরল তা বিবেচনা করুন, বা "এক্সেল থেকে অপসারণ না করা পর্যন্ত আমাকে এই ফাইলটি মুছতে দেবেন না" স্প্রেডশিটও। "

ফাইল সিস্টেমগুলির আপেক্ষিক ডাটাবেসের তুলনায় কয়েকটি সুবিধা রয়েছে যা এগুলি চালিয়ে যায়:

  • তারা অনেক সহজ। কম্পিউটার বুটস্ট্র্যাপ করার সময় এটি একটি বড় বিষয়। এমনকি অ্যান্ড্রয়েডেও যেখানে তাদের স্টোরেজের জন্য একটি আরডিবিএমএস রয়েছে, তাদের প্রাথমিক বুটলোডিং প্রক্রিয়া পরিচালনার জন্য সাধারণ পুরাতন চিত্র রয়েছে।
    • তাদের সীমাবদ্ধতাগুলি নির্ধারণ করা আরও সহজ। সীমাহীন মেশিনে আরডিবিএমগুলি যথেষ্ট পরিমাণ শক্তি সরবরাহ করে। যাইহোক, ফাইল সিস্টেমের জগতে, অনেকগুলি সীমাবদ্ধতা রয়েছে যা স্পিনিং ডিস্কের উপরে সরাসরি স্তরিত করার সময় দ্রুত হওয়ার চেষ্টা থেকে শুরু করে। কোনও ফাইল সিস্টেমের জন্য একই গ্যারান্টি সরবরাহের চেয়ে আরডিবিএমএস কোয়েরি সীমাবদ্ধতা অতিক্রম করে না তা প্রমাণ করা আরও কঠিন।
  • তারা শ্রেণিবদ্ধ কাঠামো আরও ভাল পরিচালনা করে। অনেক ক্ষেত্রে, লোকেরা ক্রমবর্ধমান আকারে ফাইলগুলি সংরক্ষণ করা এখনও স্বাভাবিক। আরডিবিএমএসে এটি একটি বিশেষ ঘটনা। ফাইল সিস্টেমগুলি সেই বিশেষ ক্ষেত্রে অপ্টিমাইজ করে, আরডিবিএমএসগুলি তা করে না।
  • নির্ভরযোগ্যতা। একটি দৈত্য সিস্টেম পুরোপুরি কার্যকরভাবে কাজ করে তা প্রমাণ করার চেয়ে দুটি স্তর স্বাধীনভাবে কাজ করে তা প্রমাণ করা অনেক সহজ। RAID অ্যারে, পাওয়ার ব্যর্থতার সময়ে ব্যর্থ-নিরাপদ জার্নাল এবং অন্যান্য উন্নত বৈশিষ্ট্যগুলি এসিআইডি বা বিদেশী কী বাধাগুলির মতো জিনিসগুলির সাথে লেয়ারের নীচে একটি স্তর প্রয়োগ করা সহজ ।

1
নির্ভরযোগ্যতা: আপনি যেমন একটি RAID ডিভাইসে একটি ফাইল সিস্টেম চালাতে পারেন ঠিক তেমনভাবে একটি ডিস্ক ব্যবহার করে আপনি RAID এর উপরে ডিবি চালাতে পারেন। ফাইল সিস্টেম / ডিবিতে জার্নালিং করা দরকার, যদিও (যদি আপনি পরিবর্তে লেখার ক্যাচিং অক্ষম করে এবং I / Os অর্থাৎ syncমোড পুনরায় অর্ডার না করে যথাযথতা গ্যারান্টি সরবরাহ করতে না চান ) আপনার সমস্ত পয়েন্টের জন্য +1, esp। দ্রুত উত্তরাধিকারী পারফরম্যান্স যেখানে একটি সাবডির মধ্যে একটি টন স্টাফ অন্য সাবডিরের কার্যকারিতা ধীর করে না। যতক্ষণ না প্রতিটি দির বা ফাইল আলাদা আলাদা টেবিল ...
পিটার কর্ডস

নির্ভরযোগ্যতা: আইবিএম আই সিরিজ ওএসগুলি মেইনফ্রেম শৈলীর ব্যবহারের জন্য নকশাকৃত, আপনি যতটা কল্পনা করতে পারেন তার চেয়ে বেশি নির্ভরযোগ্য হওয়ার জন্য ডিজাইন করা হয়েছে। হায়ারার্কিগুলি কেবল সেখানে ফাইল সিস্টেমের সীমাবদ্ধতার কারণে রয়েছে, সুতরাং এমএস বিদ্যমান ফাইল সিস্টেমের উপরের দিকে অনুসন্ধান এবং ডিবি অপারেশন করতে চায়। উদাহরণ হিসাবে গেইমেলের দিকে তাকান কীভাবে আপনি শ্রেণিবদ্ধ ব্যবহার না করে কীভাবে শ্রেণিবিন্যাস করতে পারেন!
gbjbaanb

3

আমি মনে করি যে অন্যান্য উত্তরগুলি কেন অভ্যন্তরীণ / একচেটিয়াভাবে সম্পর্কিত ডেটাবেজগুলিতে নির্ভর করে না সেই কারণগুলিতে বিস্তৃত বর্ণালী সরবরাহ করে তাই আমি কেবল একটি আকর্ষণীয় তথ্যের ভাগ করব যা আমি একবার হোঁচট খেয়েছি।

স্পষ্টতই, এমন প্রযুক্তি রয়েছে যেগুলি আপেক্ষিক ডাটাবেসগুলিকে ফাইল সিস্টেম হিসাবে মাউন্ট করতে দেয় যখন তাদের ব্যবহার ন্যায়সঙ্গত হয়। ওরাকল ডিবিএফএস (ডাটাবেস ফাইল সিস্টেম) এর একটি উদাহরণ। ডকুমেন্টেশনের এই স্নিপেটটি এর পিছনের যুক্তিটি বেশ ভালভাবে ব্যাখ্যা করেছে:

ডেটাবেস ফাইল সিস্টেম (ডিবিএফএস) ফাইল সংরক্ষণের জন্য ডাটাবেসের বৈশিষ্ট্য এবং ডাটাবেসে সঞ্চিত ফাইলগুলির জন্য একটি স্ট্যান্ডার্ড ফাইল সিস্টেম ইন্টারফেস বাস্তবায়নের জন্য দক্ষতার সাথে সম্পর্কিত সম্পর্কিত তথ্য পরিচালনার ক্ষেত্রে ডাটাবেসের শক্তিকে উপস্থাপন করে। এই ইন্টারফেসের সাহায্যে ডাটাবেসে ফাইল সঞ্চয় করা আর বিশেষত ব্যবহারের জন্য লেখা প্রোগ্রাম BLOBএবং CLOBপ্রোগ্রামেটিক ইন্টারফেসের মধ্যে সীমাবদ্ধ নয় । ডাটাবেসে থাকা ফাইলগুলি এখন কোনও অপারেটিং সিস্টেম (ওএস) প্রোগ্রাম ব্যবহার করে স্বচ্ছভাবে অ্যাক্সেস করা যায় যা ফাইলগুলিতে কাজ করে।

সমাধানটি LOB ডেটার জন্য ডাটাবেস টেবিলগুলিতে সঞ্চিত ইন্টারফেসের একটি সেট (কমান্ড লাইন ক্লায়েন্ট, কোড লাইব্রেরি) সরবরাহ করে। এটি উইন্ডোজ এবং লিনাক্স অপারেটিং সিস্টেমগুলিতে ব্যবহার করা যেতে পারে (যদিও আমি যতটা বলতে পারি, সংহতকরণের স্তর তাদের মধ্যে পরিবর্তিত হয়)

ওরাকল ডিবিএফএস উপাদান

সূত্র: docs.oracle.com

ডকুমেন্টেশন অনুসারে, লিনাক্সে স্বচ্ছ পদ্ধতিতে ফাইল সিস্টেমটি ব্যবহার করা উচিত

লিনাক্স-এ, dbfs_clientএকটি মাউন্ট ইন্টারফেস রয়েছে যা FUSEফাইল-সিস্টেম মাউন্ট পয়েন্ট প্রয়োগ করার জন্য ইউজার স্পেস ( ) ব্যবহারকারী কার্নেল মডিউলটি ব্যবহার করে যা ডাটাবেসে সঞ্চিত ফাইলগুলিতে স্বচ্ছ অ্যাক্সেস সরবরাহ করে এবং লিনাক্স কার্নেলের কোনও পরিবর্তন প্রয়োজন নেই। এটি FUSEকার্নেল মডিউল থেকে স্ট্যান্ডার্ড ফাইল সিস্টেম কলগুলি গ্রহণ করে এবং তাদের ওসিআই কলগুলিতে ডিবিএফএস সামগ্রী সামগ্রীর পিএল / এসকিউএল পদ্ধতিতে অনুবাদ করে ।

অতএব, আপনার প্রশ্নের উত্তরটি হ'ল, সাধারণভাবে, অপারেটিং সিস্টেমের কোনও ফাইল সিস্টেম হিসাবে সম্পর্কযুক্ত ডাটাবেস ব্যবহার করার কোনও কারণ নেই (এবং কোনও ওএসের মূল উপাদানগুলির ক্ষেত্রে এটি আসলে ঝামেলা হতে পারে)। একই সময়ে এটির পক্ষে এটি করা সম্ভব হয় যখন কোনও সমস্যা ডেকে আনে।


2

যে কোনও ওএসের মূল কাজটি হ'ল অ্যাপ্লিকেশন, হার্ডওয়্যার এবং ব্যবহারকারীদের মধ্যে মিথস্ক্রিয়া সহজতর করা।

তাহলে .. উইন্ডোজ / লিনাক্স ওএস কেন রিলেশনাল ডেটাবেস (আরডিবিএমএস) ব্যবহার করে না? এটি বাইবেলের অনুপাতের একটি প্রশ্ন, তবে সংক্ষিপ্ত উত্তরটি হ'ল ফাইল সিস্টেম হিসাবে একটি rdbms এর মতো জটিল কাঠামো ব্যবহার করে লাভ করার কোনও সত্যিকারের সুবিধা নেই।

"রিলেশনাল" হ'ল "রিলেশনাল ডেটাবেস" এর অপারেটিভ শব্দ এবং কোনও ফাইল সিস্টেমে সঞ্চিত বেশিরভাগ ডেটা অন্য ডেটার সাথে সম্পর্কিত নয়। ফাইল সিস্টেমগুলি সাধারণত সীমিত ডেটাবেস হিসাবে প্রয়োগ করা হয়, কেবল সম্পর্কিত সম্পর্কিত নয়।


সম্ভবত আরও ভাল প্রশ্ন হতে পারে - কেন অ্যাপ্লিকেশনগুলিতে কেবল ফাইলগুলিতে ডেটা বজায় রাখার পরিবর্তে ডাটাবেসের প্রয়োজন হয়? আমি এই প্রশ্নের সন্তোষজনক উত্তর পাই না। একটি রিলেশনাল ডাটাবেসের সমস্ত কথিত সুবিধাগুলি একটি ফাইল সাস্টম দিয়ে প্রাপ্ত করা যায়
শ্রীধর সারনোবাত
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.