ডেটা টাইপস (Data Types)
টেরাডেটা ডেটাবেসে ডেটা স্টোর করার জন্য বিভিন্ন ধরনের ডেটা টাইপস ব্যবহার করা হয়। প্রতিটি ডেটা টাইপ ডেটার ধরন ও আকার অনুযায়ী নির্বাচিত হয়। টেরাডেটাতে ডেটা টাইপ দুটি প্রধান শ্রেণীতে বিভক্ত: ভেরিয়েবল-লেংথ (Variable Length) এবং ফিক্সড-লেংথ (Fixed Length)।
১. ফিক্সড-লেংথ ডেটা টাইপস (Fixed-Length Data Types)
এগুলি এমন ডেটা টাইপ যা নির্দিষ্ট আকারের ডেটা ধারণ করতে পারে। কিছু সাধারণ ফিক্সড-লেংথ ডেটা টাইপ হল:
- INTEGER (INTEGER): পূর্ণসংখ্যা স্টোর করার জন্য ব্যবহৃত হয়।
- DECIMAL (DECIMAL or NUMERIC): নির্দিষ্ট দশমিক স্থানসহ সংখ্যা সঞ্চয় করার জন্য ব্যবহৃত হয়। এটি আর্থিক হিসাব-নিকাশের জন্য ব্যবহার হয়।
- DATE (DATE): একটি নির্দিষ্ট তারিখ সংরক্ষণ করে, যেমন 'YYYY-MM-DD' ফরম্যাটে।
- CHAR (CHARACTER): নির্দিষ্ট দৈর্ঘ্যের অক্ষর স্টোর করার জন্য ব্যবহৃত হয়।
- BYTE (BYTE): বাইনারি ডেটা (যেমন ইমেজ বা ফাইল) সংরক্ষণের জন্য ব্যবহৃত হয়।
২. ভেরিয়েবল-লেংথ ডেটা টাইপস (Variable-Length Data Types)
এগুলি এমন ডেটা টাইপ যা আকারে পরিবর্তনশীল, অর্থাৎ তাদের আকার ডেটার পরিমাণের উপর নির্ভর করে। কিছু সাধারণ ভেরিয়েবল-লেংথ ডেটা টাইপ হল:
- VARCHAR (Variable Character): এটি পরিবর্তনশীল দৈর্ঘ্যের অক্ষর সংরক্ষণ করতে ব্যবহৃত হয়।
- CLOB (Character Large Object): বড় আকারের অক্ষর ডেটা (যেমন টেক্সট ফাইল) সংরক্ষণের জন্য ব্যবহৃত হয়।
- BLOB (Binary Large Object): বাইনারি ডেটা (যেমন ছবি, অডিও) সংরক্ষণের জন্য ব্যবহৃত হয়।
৩. ফ্লোটিং-পয়েন্ট ডেটা টাইপস (Floating-Point Data Types)
এগুলি দশমিক সহ সংখ্যা স্টোর করার জন্য ব্যবহৃত হয়, এবং গাণিতিক গণনার জন্য বেশ উপযোগী।
- FLOAT: দশমিক সংখ্যা সংরক্ষণের জন্য ব্যবহৃত হয়, কিন্তু নির্দিষ্ট সঠিকতা না থাকায় এটি কিছুটা অনিশ্চিত হতে পারে।
- DOUBLE PRECISION: FLOAT এর মতো, তবে আরো বেশি সঠিকতা প্রদান করে।
৪. টাইম এবং টাইমস্ট্যাম্প (Time and Timestamp)
এই ডেটা টাইপস বিশেষভাবে সময় এবং তারিখের সাথে সম্পর্কিত ডেটা সংরক্ষণের জন্য ব্যবহৃত হয়।
- TIME (TIME): শুধুমাত্র সময় সংরক্ষণ করে, যেমন 'HH:MM:SS' ফরম্যাটে।
- TIMESTAMP (TIMESTAMP): সময় এবং তারিখ একত্রে সংরক্ষণ করে, যেমন 'YYYY-MM-DD HH:MM:SS' ফরম্যাটে।
কলাম অ্যাট্রিবিউটস (Column Attributes)
টেরাডেটা ডেটাবেসে কলামগুলো নির্দিষ্ট কিছু অ্যাট্রিবিউট দ্বারা বর্ণিত হয়। এগুলো ডেটার প্রক্রিয়া এবং পরিচালনা সহজতর করে। কিছু সাধারণ কলাম অ্যাট্রিবিউটস হল:
১. NOT NULL
এই অ্যাট্রিবিউট দ্বারা কলামটি নির্দেশ করে যে, এই কলামে কখনও null (শূন্য) মান থাকতে পারবে না। এটি কলামের ডেটা ইন্টিগ্রিটি নিশ্চিত করতে সাহায্য করে।
২. DEFAULT
ডিফল্ট মান (Default Value) নির্ধারণ করে, যদি কোন নতুন রেকর্ডের জন্য কলামের মান নির্ধারিত না হয়, তাহলে ওই কলামে ডিফল্ট মান প্রবিষ্ট হবে।
৩. UNIQUE
এই অ্যাট্রিবিউট দ্বারা একটি কলামের মধ্যে প্রতিটি মান অবশ্যই অনন্য হতে হবে, অর্থাৎ কোনো দুটি রেকর্ডে একই মান থাকতে পারবে না।
৪. PRIMARY KEY
এই অ্যাট্রিবিউট একটি কলাম বা কলামসমূহকে শনাক্তকারী (identifier) হিসেবে ব্যবহার করে, যাতে একটি রেকর্ড অন্য সকল রেকর্ড থেকে আলাদা এবং একচেটিয়া থাকে।
৫. FOREIGN KEY
ফরেইন কি একটি কলাম বা কলামসমূহের সেট যা অন্য একটি টেবিলের প্রাইমারি কির সাথে সম্পর্কিত থাকে। এটি ডেটা ইন্টিগ্রিটি বজায় রাখে এবং সম্পর্কিত টেবিলের মধ্যে সংযোগ স্থাপন করে।
৬. CHECK
এই অ্যাট্রিবিউট একটি শর্ত নির্ধারণ করে, যাতে কলামে শুধুমাত্র নির্দিষ্ট ধরনের মান প্রবিষ্ট হয়। উদাহরণস্বরূপ, একটি কলামে যদি বয়স রাখা হয়, তবে এটি নিশ্চিত করতে হবে যে বয়স ১৮ এর বেশি হতে হবে।
৭. INDEX
ইন্ডেক্স অ্যাট্রিবিউট কলামের জন্য একটি দ্রুত অনুসন্ধান ক্ষমতা সৃষ্টি করে। এটি কলামের উপর ভিত্তি করে ডেটাবেসের পারফরম্যান্স উন্নত করতে সাহায্য করে।
সারাংশ
টেরাডেটা ডেটাবেসে ব্যবহৃত ডেটা টাইপস এবং কলাম অ্যাট্রিবিউটস ডেটার ব্যবস্থাপনা এবং সংরক্ষণকে অত্যন্ত কার্যকর করে তোলে। ডেটা টাইপস বিভিন্ন ধরনের তথ্য সংরক্ষণের জন্য উপযুক্ত, যেমন পূর্ণসংখ্যা, দশমিক সংখ্যা, তারিখ, সময়, টেক্সট এবং বাইনারি ডেটা। কলাম অ্যাট্রিবিউটস ডেটাবেসের ইন্টিগ্রিটি, পারফরম্যান্স এবং ডেটার সঠিকতা নিশ্চিত করতে গুরুত্বপূর্ণ ভূমিকা পালন করে। এগুলো ডেটার উপর নিয়ম এবং শর্ত প্রয়োগ করতে সাহায্য করে, যেমন ডিফল্ট মান, প্রাইমারি কিজ, এবং ফরেইন কিজ।
Read more