এসকিউএলআইটিই ডাটাবেস থেকে এসকিউএল ডাম্প রূপান্তরকারী
সহজে ডাটাবেস মাইগ্রেশন এবং সার্ভার আমদানির জন্য একটি এসকিউএলআইটিই ডাটাবেস ফাইলকে এসকিউএল ডাম্প টেক্সট স্ক্রিপ্টে রূপান্তর করার মাধ্যমে একটি বাইনারি ডাটাবেসকে পঠনযোগ্য টেক্সট কমান্ডে পরিণত করা যায়।
ফরম্যাট তুলনা এবং প্রযুক্তিগত বৈশিষ্ট্য
| বৈশিষ্ট্য | SQLITE | SQL |
|---|---|---|
| MIME টাইপ | application/vnd.sqlite3 | text/plain |
| ধরন | embedded relational database | relational schema & query script |
| কম্প্রেশন | B-Tree page allocation | none (plain text DDL/DML script) |
| স্ট্যান্ডার্ড বৈশিষ্ট্য | SQLite Database File Format 3 | ISO/IEC 9075 SQL Standard |
| ম্যাজিক বাইটস হেডার | 53 51 4C 69 74 65 20 66 6F 72 6D 61 74 20 33 00 (SQLite format 3\0) | 2D 2D (--) or CREATE TABLE SQL statement |
ফরম্যাটের ওভারভিউ এবং ব্যবহার
এসকিউএলআইটিই একটি একক সেলফ-কনটেইনড বাইনারি ফাইলের মধ্যে সম্পূর্ণ রিলেশনাল ডাটাবেস সংরক্ষণ করে। ডেভেলপার এবং সিস্টেম অ্যাডমিনিস্ট্রেটরদের প্রায়ই স্থানীয় এসকিউএলআইটিই অ্যাপ থেকে মাইএসকিউএল বা পোস্টগ্রেসকিউএলের মতো বড় সার্ভার সিস্টেমে ডেটা স্থানান্তর করতে হয়। যেহেতু সার্ভার ডাটাবেসগুলো এসকিউএলআইটিই বাইনারি ফাইল সরাসরি পড়তে পারে না, তাই ফাইলটিকে এসকিউএল স্ক্রিপ্টে পরিবর্তন করলে এই সমস্যার সমাধান হয়। একটি এসকিউএল স্ক্রিপ্টে প্লেইন টেক্সট নির্দেশাবলী থাকে যা নতুন সার্ভারে রান করার সময় টেবিল পুনরায় তৈরি করে, ইনডেক্স যোগ করে এবং ডেটা ইনসার্ট করে। মডেল টেস্ট এনভায়রনমেন্ট থেকে লাইভ প্রোডাকশন সার্ভারে ওয়েব অ্যাপ্লিকেশন সরানোর সময় এই রূপান্তর ওয়ার্কফ্লো সাধারণ। সফটওয়্যার ইঞ্জিনিয়াররা দীর্ঘমেয়াদী ডেটা আর্কাইভ করার জন্যও এসকিউএল টেক্সট স্ক্রিপ্ট ব্যবহার করে। নির্দিষ্ট ডাটাবেস সফটওয়্যার পুরোনো হয়ে গেলেও প্লেইন টেক্সট ফাইলগুলো দশকের পর দশক ধরে পঠনযোগ্য থাকে। বাইনারি ডাটাবেস থেকে এসকিউএল স্ক্রিপ্ট জেনারেট করার ফলে ডেভেলপাররা মৌলিক টেক্সট এডিটর এবং গিটের মতো ভার্সন কন্ট্রোল টুল ব্যবহার করে ডেটা পরিবর্তনগুলো পরিদর্শন করতে পারে।
প্রযুক্তিগত বৈশিষ্ট্য এবং কোডেক বিভাজন
একটি এসকিউএলআইটিই ডাটাবেস (application/vnd.sqlite3 এমআইএমই টাইপ) 'SQLite format 3\000' টেক্সট স্ট্রিংয়ের সাথে মিলে যায় এমন একটি স্বতন্ত্র ১৬ বাইটের ম্যাজিক নম্বর হেডার দিয়ে শুরু হয়। ফাইলটি বাইনারি ফরম্যাটে টেবিল এবং ইনডেক্সগুলো সংগঠিত করতে একটি বি-ট্রি পেজ অ্যালোকেশন সিস্টেম ব্যবহার করে। এর বিপরীতে, একটি এসকিউএল ডাম্পে (text/plain এমআইএমই টাইপ) কোনো বাইনারি ম্যাজিক বাইট থাকে না। এটি CREATE TABLE-এর মতো স্ট্যান্ডার্ড ডেটা ডেফিনেশন ল্যাঙ্গুয়েজ কমান্ড এবং INSERT INTO-এর মতো ডেটা ম্যানিপুলেশন ল্যাঙ্গুয়েজ কমান্ডে পূর্ণ একটি আনকম্প্রেসড এসিআইআই বা ইউটিএফ-৮ টেক্সট ফাইল। এদের মধ্যে রূপান্তর করার জন্য বাইনারি বি-ট্রি পেজ পড়া এবং টেক্সট স্টেটমেন্ট প্রিন্ট আউট করার প্রয়োজন হয়।
OS এবং ব্রাউজার সামঞ্জস্য
এসকিউএলআইটিই ফাইলগুলো ডাটাবেস ব্রাউজার, মোবাইল অ্যাপ এবং পাইথন বা পিএইচপি স্ক্রিপ্টে নেটিভভাবে খোলে। এসকিউএল টেক্সট ডাম্প নোটপ্যাড বা টেক্সট এডিটের মতো যেকোনো মৌলিক টেক্সট এডিটরে খোলে এবং মাইএসকিউএল, পোস্টগ্রেসকিউএল এবং মাইক্রোসফট এসকিউএল সার্ভার সহ প্রধান রিলেশনাল ডাটাবেস ইঞ্জিনে রান হয়। যেহেতু এসকিউএল ডাম্পগুলো প্লেইন টেক্সট, তাই বিশেষ ডাটাবেস ড্রাইভার ছাড়াই উইন্ডোজ, ম্যাকওএস, লিনাক্স, আইওএস এবং অ্যান্ড্রয়েডে এগুলো সার্বজনীনভাবে কাজ করে।
💡 উপকারী তথ্য
বিভিন্ন অপারেটিং সিস্টেমে বিশেষ প্রতীক বা অ-ইংরেজি পাঠ্য স্থানান্তর করার সময় চরিত্রের দুর্নীতি রোধ করতে সর্বদা ইউটিএফ-৮ এনকোডিং ব্যবহার করে আপনার এসকিউএল ডাম্প এক্সপোর্ট করুন।
ফরম্যাট তুলনা এবং প্রযুক্তিগত বৈশিষ্ট্য
একটি ৫০ মেগাবাইটের এসকিউএলআইটিই বাইনারি ডাটাবেস ফাইলকে যখন একটি আনকম্প্রেসড ৫৫ মেগাবাইটের টেক্সট এসকিউএল ডাম্পে পরিণত করা হয়, তখন এটি সামান্য ছোট বা বড় হয়। প্রতি সেকেন্ডে ৩০ মেগাবাইট ডাউনলোড গতির একটি স্ট্যান্ডার্ড ফোরজি মোবাইল নেটওয়ার্কে এই টেক্সট ফাইলটি স্থানান্তর করতে প্রায় ১৫ সেকেন্ড সময় লাগে। একটি দ্রুত ফাইভজি কানেকশনে এটি ৩ সেকেন্ডের কম সময়ে স্থানান্তরিত হয় এবং একটি উচ্চ গতির ফাইবার কানেকশন ১ সেকেন্ডের কম সময়ে ফাইলটি প্রায় তাৎক্ষণিকভাবে সরিয়ে নেয়।
সচরাচর জিজ্ঞাসিত প্রশ্নাবলী
কোয়ালিটি না কমিয়ে কীভাবে এসকিউএলআইটিই ডাটাবেস থেকে এসকিউএল ডাম্প রূপান্তর করবেন?
রূপান্তরটি সম্পূর্ণ লসলেস কারণ উভয় ফরম্যাটই হুবহু একই রিলেশনাল টেবিল, সারি এবং কলাম সংরক্ষণ করে। টেক্সট এক্সপোর্ট প্রক্রিয়ার সময় কোনো ডেটা ভ্যালু, টাইপ বা কনস্ট্রেইন্ট ক্ষতিগ্রস্ত হয় না বা বাদ দেওয়া হয় না।
এসকিউএলআইটিই ডাটাবেস এবং এসকিউএল ডাম্পের মধ্যে পার্থক্য কী?
এসকিউএলআইটিই ডাটাবেস হলো দ্রুত স্থানীয় কোয়েরির জন্য বি-ট্রি ব্যবহার করে নির্দিষ্ট আকারের পেজে সংগঠিত একটি বাইনারি ফাইল। এসকিউএল ডাম্প হলো একটি প্লেইন টেক্সট স্ক্রিপ্ট যাতে অন্য সার্ভারে ডাটাবেস পুনর্নির্মাণের জন্য ব্যবহৃত মানব-পঠনযোগ্য ডাটাবেস কমান্ড থাকে।