H2 Database একটি ইন-মেমরি এবং রিলেশনাল ডেটাবেস সিস্টেম যা Java ভাষায় তৈরি। এটি হালকা, দ্রুত এবং খুবই সহজে কনফিগারযোগ্য। H2 ডেটাবেস দুটি প্রধান মোডে কাজ করতে পারে: Embedded Mode এবং Server Mode। নিচে এই দুটি মোডের মধ্যে পার্থক্য এবং সুবিধাগুলি ব্যাখ্যা করা হলো।
Embedded Mode হল H2 ডেটাবেসের একটি মোড যেখানে ডেটাবেসটি সরাসরি অ্যাপ্লিকেশনের মধ্যে এমবেড করা থাকে এবং ডেটাবেস এবং অ্যাপ্লিকেশন একে অপরের সাথে গভীরভাবে সংযুক্ত থাকে। এই মোডে, H2 ডেটাবেস শুধুমাত্র একটি অ্যাপ্লিকেশন বা প্রক্রিয়ার জন্য উপলব্ধ থাকে।
// Example of H2 Embedded Mode Connection
Connection conn = DriverManager.getConnection("jdbc:h2:~/test", "sa", "");
এটি ~/test
ডাটাবেসটি অ্যাপ্লিকেশনকে এমবেড করে চালায়।
Server Mode হল H2 ডেটাবেসের একটি মোড যেখানে ডেটাবেসটি একটি সার্ভার হিসাবে কাজ করে এবং ক্লায়েন্ট অ্যাপ্লিকেশনগুলি নেটওয়ার্কের মাধ্যমে ডেটাবেসে সংযোগ স্থাপন করতে পারে। এই মোডে ডেটাবেসটি একটি ডেডিকেটেড সার্ভিসের মতো কাজ করে যা একাধিক ক্লায়েন্ট অ্যাপ্লিকেশন দ্বারা অ্যাক্সেস করা যায়।
Server Mode তে ডেটাবেস চালানোর জন্য নিচের মতো কমান্ড ব্যবহার করা হয়:
java -cp h2-1.4.200.jar org.h2.tools.Server
এটি H2 সার্ভার চালু করবে, এবং ক্লায়েন্ট অ্যাপ্লিকেশনটি TCP/IP বা অন্য কোনো প্রোটোকল ব্যবহার করে সার্ভারের সাথে সংযোগ স্থাপন করতে পারবে।
ক্লায়েন্ট সংযোগের উদাহরণ:
// Example of H2 Server Mode Connection
Connection conn = DriverManager.getConnection("jdbc:h2:tcp://localhost/~/test", "sa", "");
এটি localhost সার্ভারে H2 ডেটাবেসে সংযোগ স্থাপন করবে।
বৈশিষ্ট্য | Embedded Mode | Server Mode |
---|---|---|
কিভাবে কাজ করে | ডেটাবেস অ্যাপ্লিকেশনের অংশ হিসেবে কাজ করে | ডেটাবেস একটি সার্ভার হিসেবে কাজ করে এবং ক্লায়েন্ট সংযোগ গ্রহণ করে |
পারফরম্যান্স | দ্রুত এবং কম লেটেন্সি (ইন-মেমরি অ্যাপ্লিকেশনের জন্য উপযুক্ত) | একটু বেশি লেটেন্সি (নেটওয়ার্ক ট্র্যাফিকের কারণে) |
ব্যবহার | ছোট অ্যাপ্লিকেশন, ডেভেলপমেন্ট এবং টেস্টিং | বড় অ্যাপ্লিকেশন, মাল্টি-ইউজার এবং ব্যবসায়িক পরিবেশ |
নেটওয়ার্ক অ্যাক্সেস | শুধুমাত্র লোকাল অ্যাপ্লিকেশন থেকে অ্যাক্সেসযোগ্য | ক্লায়েন্ট এবং সার্ভারের মাধ্যমে নেটওয়ার্কের মাধ্যমে অ্যাক্সেসযোগ্য |
অ্যাপ্লিকেশন আর্কিটেকচার | একক ব্যবহারকারী অ্যাপ্লিকেশন | ক্লায়েন্ট-সার্ভার আর্কিটেকচার |
H2 ডেটাবেসের Embedded Mode এবং Server Mode দুইটি ভিন্ন পরিস্থিতিতে ব্যবহৃত হয়। Embedded Mode সাধারণত ছোট স্কেল অ্যাপ্লিকেশন বা ডেভেলপমেন্ট পরিবেশে ব্যবহৃত হয়, যেখানে Server Mode বড় এবং মাল্টি-ইউজার অ্যাপ্লিকেশন, ব্যাবসায়িক এবং স্কেলেবেল পরিবেশে উপযুক্ত। H2 ডেটাবেসের দুইটি মোড ব্যবহার করার মাধ্যমে আপনি আপনার অ্যাপ্লিকেশনের প্রয়োজন অনুযায়ী পারফরম্যান্স এবং স্কেলেবিলিটি কাস্টমাইজ করতে পারবেন।
common.read_more