Multi-document এবং Multi-collection Transaction

Database Tutorials - আরাঙ্গো (ArangoDB) Transactions in ArangoDB |
238
238

ArangoDB-তে Transaction একটি গুরুত্বপূর্ণ বৈশিষ্ট্য যা একাধিক ডকুমেন্ট এবং কালেকশন জুড়ে ডেটা সংশোধন বা প্রসেস করার সময় ACID (Atomicity, Consistency, Isolation, Durability) গুণাবলী নিশ্চিত করে। Multi-document এবং Multi-collection Transaction ব্যবহার করে ডেভেলপাররা জটিল ডেটাবেস অপারেশন সম্পাদন করতে পারেন।


Transaction কী এবং কেন প্রয়োজন?

  • Transaction ডেটাবেস অপারেশনের একটি গ্রুপ, যা সমস্ত অপারেশন সফল না হলে সম্পূর্ণরূপে বাতিল হয়।
  • এটি ডেটার Consistency বজায় রাখে।
  • Multi-document এবং Multi-collection Transaction জটিল ডেটাবেস অপারেশনগুলো সহজ এবং সুরক্ষিত করে।

Multi-document Transaction উদাহরণ

একাধিক ডকুমেন্টে Transaction

একই Collection-এর মধ্যে একাধিক ডকুমেন্ট সংশোধন করার জন্য Transaction ব্যবহার:

let db = require('@arangodb').db;

db._executeTransaction({
  collections: {
    write: 'my_collection'
  },
  action: function () {
    let col = db._collection('my_collection');
    col.update('doc1', { status: 'processed' });
    col.update('doc2', { status: 'processed' });
  }
});

Multi-collection Transaction উদাহরণ

একাধিক Collection-এ Transaction

একাধিক Collection-এ ডেটা সংশোধন বা যোগ করার জন্য:

let db = require('@arangodb').db;

db._executeTransaction({
  collections: {
    write: ['collection1', 'collection2']
  },
  action: function () {
    let col1 = db._collection('collection1');
    let col2 = db._collection('collection2');

    col1.save({ _key: 'doc1', name: 'Item 1', status: 'active' });
    col2.save({ _key: 'doc2', related_to: 'doc1', status: 'linked' });
  }
});

Transaction এর মূল উপাদান

  1. Collections:
    • write: যেখানে Transaction ডেটা পরিবর্তন করবে।
    • read: শুধুমাত্র পড়ার জন্য ব্যবহৃত।
  2. Action Function:
    • Transaction এর মধ্যে কার্যকর করা কোড।
  3. Rollback:
    • যদি Transaction ব্যর্থ হয়, তাহলে সমস্ত পরিবর্তন পূর্বাবস্থায় ফিরে যাবে।

ACID গুণাবলী নিশ্চিত করা

  • Atomicity: Transaction-এর সব অপারেশন একত্রে সফল বা ব্যর্থ হবে।
  • Consistency: ডেটাবেস সর্বদা বৈধ অবস্থায় থাকবে।
  • Isolation: Transaction চলাকালীন অন্য Transaction এর প্রভাব থেকে মুক্ত।
  • Durability: Transaction সফল হলে ডেটা স্থায়ীভাবে সংরক্ষিত হবে।

Nested Transaction সমর্থন

ArangoDB-তে একাধিক Transaction নেস্ট করে ব্যবহার করা যায় না। প্রতিটি Transaction স্বতন্ত্র হতে হবে।


Transaction এর সময় সতর্কতা

  • Transaction চলাকালীন বড় ডেটাসেটে পারফরম্যান্স সমস্যা হতে পারে।
  • সম্ভাব্য ডেডলকের ঝুঁকি এড়ানোর জন্য ডেটা অ্যাক্সেসের সঠিক ক্রম বজায় রাখুন।

Performance Optimization

  1. Index ব্যবহার: Transaction চলাকালীন দ্রুত ডেটা অ্যাক্সেসের জন্য।
  2. ছোট Transaction রাখুন: বড় Transaction পারফরম্যান্সে প্রভাব ফেলতে পারে।
  3. Partitioning: বড় ডেটাবেসে কার্যকরভাবে ডেটা বিভক্ত করুন।

সারাংশ

Multi-document এবং Multi-collection Transaction ডেটাবেস অপারেশনগুলোকে নিরাপদ এবং কার্যকর করে। এটি ডেটার সঠিকতা বজায় রাখে এবং ডেভেলপারদের জটিল ডেটা ম্যানিপুলেশন সহজতর করতে সহায়তা করে। তবে সঠিক অপ্টিমাইজেশনের মাধ্যমে Transaction এর কার্যকারিতা নিশ্চিত করা গুরুত্বপূর্ণ।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion