দক্ষ প্রশ্নের জন্য ডেটাবেস কোয়েরি ভাষা


9

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

এমন কি কোয়েরি ভাষা রয়েছে যা কেবল দক্ষ ক্যোয়ারিকেই প্রয়োগ করতে পারে?

যদি এ জাতীয় কোনও ভাষা না থাকে, তবে এর কোনও তাত্ত্বিক কারণ আছে?

আমি এই ধরণের জিনিসগুলির উপস্থিতি বা ন্যূনতম বোধগম্য হওয়ার জন্য কেন কয়েকটি কারণ আশা করতে পারি:

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

এই প্রশ্নটি পূর্ববর্তী দুটি প্রশ্নের ছেদ দ্বারা অনুপ্রাণিত:

দক্ষ গণনার জন্য প্রোগ্রামিং ভাষা

উত্তর অনুসন্ধানের তাত্ত্বিক তাত্পর্যপূর্ণ জটিলতা (ক্যোয়ারির আকারে) কেন রিলেশনাল ডাটাবেসগুলি কাজ করে?


1
এটি কি ঠিক বর্ণনামূলক জটিলতার বিষয় নয়? বিভিন্ন জটিলতার ক্লাসগুলির জন্য তাদের ভাষার ভাষার বৈশিষ্ট্য রয়েছে।
কাভেহ 21

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

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

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

উত্তর:


7

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

ক্রিয়ামূলক প্রোগ্রামিং জগতে, এই ধরণের জিনিসটিকে ব্যয় শব্দার্থবিজ্ঞান বলা হয় : এর অর্থ এই নয় যে আপনি কেবল দক্ষ ক্যোয়ারী (প্রোগ্রামগুলি) প্রয়োগ করতে পারবেন, তবে এর অর্থ এই যে আপনি যুক্তিযুক্ত প্রোগ্রামের অ্যাসিম্পটোটিক জটিলতাটি যুক্তিসঙ্গত উপায়ে করতে পারেন ।

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

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.