একীকরণ প্রোগ্রামিং এবং ডাটাবেস কোয়েরি [বন্ধ]


11

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

আপনি ডাটাবেস থেকে পড়তে এবং লেখার জন্য নিজেকে প্রচুর কোড লিখতে পারেন, তবে এটি এতটাই ক্লান্তিকর এবং ত্রুটি-প্রবণ যে কেউ আসলে তা করে না।

প্রত্যেকে একটি ওআরএম ব্যবহার করে শেষ হয় তবে এগুলি তাদের নিজস্বভাবে এতটাই সমস্যাযুক্ত যে একটি বিখ্যাত কাগজ তাদের 'আমাদের শিল্পের ভিয়েতনাম' বলে।

আমি মনে করি না যে এটি বস্তু এবং সম্পর্কের মধ্যে এতটা মিল নেই যে প্রোগ্রামিং ভাষা এবং ডাটাবেসগুলির মধ্যে একটি পৃথক বিষয় যা একে অপরের সম্পর্কে জানে না । অনুমান: সমাধানটি হ'ল একক ভাষা যা প্রোগ্রামিং এবং ডাটাবেস ক্যোরি ভাষা উভয়ই থাকে, যার ফলস্বরূপ ভাষার রানটাইমটিও ডাটাবেস হতে হবে এবং জেআইটি সংকলকও কোয়েরি অপ্টিমাইজার হতে পারে।

সুতরাং এটি আমি দেখছি সমস্যার সংক্ষিপ্তসার। আমার প্রশ্নটি হল, এখনও কেউ আছে কি না,

  1. আসলে যেমন একটি ইউনিফাইড সিস্টেম নির্মিত

  2. চেষ্টা করেও এমন একটি ইউনিফাইড সিস্টেম তৈরি করতে ব্যর্থ হয়েছে

  3. আপনি কীভাবে এরকম নির্মাণ করতে যাবেন, বা কেন বা কেন করবেন না সে বিষয়টিতে সুনির্দিষ্ট কিছু লিখেছেন

  4. সমস্যার সমাধানের বিকল্প উপায় নিয়ে আসবেন?


5
আপনার কাছে এমন একটি ভাষা পরে যা পরবর্তী ডাটাবেস এবং কোডকে এক করে দেয় আপনার এমন একটি ভাষা আবিষ্কার করতে হবে যা ডাটাবেস, কোড এবং এইচটিএমএলকে এক করে দেয়। তারপরে আপনার JSON এর সাথে একত্রিত হওয়া দরকার। তারপরে আপনাকে পার্লের চেয়ে আরও নিবিড় উপায়ে রিজেপএক্সের সাথে একত্রিত করা দরকার। তারপরে আপনাকে এলডিএপি (যেমন মাইক্রোসফ্ট অ্যাক্টিভ ডিরেক্টরি, হ্যাঁ, এটি একটি ডাটাবেস) এর মতো শ্রেণিবদ্ধ ডাটাবেসের সাথে একত্রিত হওয়া দরকার ify তারপরে আপনাকে মঙ্গো বা ক্যাসান্দ্রার মতো কী-মান ডেটাবেসগুলির সাথে একত্রিত করতে হবে। তারপর আপনি 3D ইত্যাদি ইত্যাদি রেন্ডারিং সঙ্গে ঐক্যবদ্ধ করার প্রয়োজন হতে পারে এমন একটি হাতুড়ি-Spanner-কপিকল-বেলচা-স্ক্রু ড্রাইভার-পাইন-কাঠি কম্বো টুল চাওয়ার হবে বলে মনে হচ্ছে
slebetman

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

2
এটি ডেটাসেটের সাথে প্রযুক্তির সাথে করার মতো কিছুই নয়। আমাকে একবার কোডের একটি অংশকে অনুকূল করতে হয়েছিল কারণ রেইজেক্সটি কার্যকর করতে 3 মিনিট সময় নিচ্ছিল। দেখা গেল যে ইমেল এবং ইমেলের জবাব দেওয়ার সময় লোকেরা পুরো বার্তাগুলির উদ্ধৃতি দিচ্ছিল কখনও কখনও 5 মিমিতে বাড়তে পারে। কেবল 5 মেগাবাইটে রেজেেক্স দম বন্ধ হতে পারে। সুতরাং এসকিউএল যথেষ্ট দ্রুত। আমাদের
রেজিএক্সএক্সকে

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

1
আমি মনে করি যে এখানে লিনকিউ উল্লেখ করা খুব কম 1 এর সাথে সম্পর্কিত
কেসি কুবাল

উত্তর:


7

এটা আমার মতামত. আপনি কোথায় থেকে আসছেন তা আমি দেখতে পাচ্ছি, আমি কেবল এটি ডিজাইনের দৃষ্টিকোণ থেকে দেখতে পাচ্ছি না।

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

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

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

উভয়ের মধ্যে স্পষ্ট এপিআই দিয়ে আলাদা মডিউলগুলিতে বিভক্ত করা জটিলতাটি কম রাখার এবং আপনি কী প্রযুক্তি ব্যবহার করতে চান এবং কীভাবে চূড়ান্ত টুকরো স্থাপন করা হয় তাতে নমনীয়তা দেওয়াই সেরা উপায়।


টিএল; ডিআর "একটি ভাল ধারণা নয় কারণ তাদের একত্রিত করা উদ্বেগের বিচ্ছিন্নতা লঙ্ঘন করে"
ফেরিট করুন

5

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

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

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

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


5
  1. হ্যাঁ (আমি না) এটিকে এমএমএসপিএস বলা হত

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

  3. আপনি অবশ্যই এটি সম্পর্কে তথ্য পাবেন এখন আপনি কী অনুসন্ধান করবেন তা জানেন। উপরের উইকিপিডিয়া লিঙ্ক দিয়ে শুরু করুন।

  4. অবজেক্ট-ওরিয়েন্টেড ডাটাবেসগুলির জন্য অনুসন্ধান করুন, তাদের মধ্যে অনেকগুলি ভাষা-নির্দিষ্ট। তারা ওআরএম-এর চেয়ে সহজ উপায়ে অবজেক্ট-রিলেশনাল মেলবন্ধকে সম্বোধন করার চেষ্টা করেছিল।


8
মাম্পসে ডেটাবেস অ্যাক্সেস .... এসকে = 0 এফএসকে = $ ও (A ভিএ (200, কে)) প্রশ্ন: 'কেডাব্লু $ পি (^ ভিএ (200, কে, 0), ইউ, 1),! একটি সুপরিচিত মাম্পস সিস্টেম থেকে রোগীর নাম মুদ্রণ করে। সমস্যা সমাধান? খুব বেশি না.
জোশপ 26'17

আমার এক সহকর্মী আছেন যা এমএমপিএস-এর শপথ করে। এর পরবর্তী সংস্করণগুলিতে (ক্যাশে) আরও অ্যাক্সেসেবল সিনট্যাক্স ছিল।
অ্যালেক্সি

2
@ অ্যালেক্সি: এমএমপিএস সম্পর্কে আমি খুব বেশি জানি না, তবে মনে হয় সিনট্যাক্সের চেয়ে বড় সমস্যাটি ছিল ত্রুটি-প্রবণ স্কোপিং বিধি, যা বৃহত্তর প্রোগ্রামগুলির বিবর্তন এবং রক্ষণাবেক্ষণকে দুঃস্বপ্ন বলেছিল।
ডক ব্রাউন

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

5

প্রকৃতপক্ষে একাধিক সিস্টেম রয়েছে যা ডাটাবেস এবং প্রোগ্রামিং ভাষার একক পরিবেশে একীকরণ করে।

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

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

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

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

দেখা যাচ্ছে যে কোনও নির্দিষ্ট প্রোগ্রামিং ভাষা এবং পরিবেশ থেকে ডেটা থাকার এবং কোয়েরি করার অনেক সুবিধা রয়েছে।

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

2

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

অনুশীলনে এই জাতীয় নিয়ন্ত্রকদের সুরক্ষার কারণে জনগণের সামনে প্রকাশ করা উচিত নয় কারণ ডাটাবেস কনফিগারেশনের ত্রুটি বা ত্রুটি আপনার মূল্যবান তথ্য জনগণের সামনে তুলে ধরবে।

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


1
  1. আসলে যেমন একটি ইউনিফাইড সিস্টেম নির্মিত

হ্যাঁ, আমি স্কিটারে এটি করেছি

স্কিটারের স্ক্রিপ্টটি একটি " জাভাস্ক্রিপ্ট ++ " যা অন্তর্নিহিত অধ্যবসায় রয়েছে:

var ndb = Storage.open(pathname);
ndb.root = { ... root object ... };

ndb.rootজেএসের পদে যেখানে স্বাভাবিক অবজেক্ট। এর সমস্ত বৈশিষ্ট্য এবং এটি থেকে অ্যাক্সেসযোগ্য উপ-অবজেক্টগুলি অবিচল রয়েছে - প্রয়োজনের সময় ডিবিতে সঞ্চিত এবং এনেছে - কোডের জন্য স্বচ্ছভাবে:

ndb.root.accounts[2].firstName = "John";
var name = ndb.root.accounts[3].firstName;

জিসি চক্র, পর্যাপ্ত মেমরি না হলে বা স্পষ্ট ndb.commit()কলে ডেটা ডিবিতে সঞ্চয় করা হয় ।

Storageশ্রেণীর সাথে Indexবর্গ হয় - অদ্বিতীয় / অ-অনন্য কীগুলির সাথে অবিচলিত অর্ডারযুক্ত অবজেক্ট সংগ্রহ।

বৈশিষ্ট্য সেটটি মঙ্গোডিবি বা অন্যান্য নোএসকিউএল ডাটাবেসের অনুরূপ তবে আইডিটির জন্য পৃথক ওআরএমের প্রয়োজন নেই - ডিবি অ্যাক্সেস খাঁটি স্ক্রিপ্টের মাধ্যমে তৈরি করা হয়।


0

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

আপনার ধারণার কাছে পৌঁছানোর একমাত্র সিস্টেমকে আমি একামেটা বলে (ট্যাগ লাইন: "পোস্টগ্রেএসকিউএল নির্মিত ওয়েব ডেভ স্ট্যাক"; https://github.com/aquametalabs/aquameta , http://aquameta.org দেখুন )। কিছু ইন্ট্রো ভিডিও রয়েছে যা ধারণার চেয়ে কিছুটা কম পাগল নয় (youtube.com/watch?v=jz74upW7TN0, youtube.com/watch?v=cWGm9eYUYUk&t=29s, youtube.com/watch?v=xRoUQGUmiMg), এবং যখন আমি ক্রেজি বলি, তার মানে হ'ল তারা পোস্টগ্রিসের ভিতরে তাদের নিজস্ব সম্পাদক এবং তাদের নিজস্ব সংস্করণ নিয়ন্ত্রণ ব্যবস্থা প্রয়োগ করেছে।


0

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

লিনকের একটি ভাল সূচনা পয়েন্ট: https://docs.microsoft.com/en-us/dotnet/csharp/linq/



লিনক-টু-এসকিউএল একটি ওআরএম এর একটি উপাদান, যা ওপি সম্পর্কে যা জিজ্ঞাসা করছে তা বিশেষত নয়।
জ্যাকবিবি

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