আপনি যখন "ডেটা টাইপ" বলবেন তখন এটি আপনার অর্থের উপর নির্ভর করে। PostgreSQL এর মতো কিছু ডাটাবেসগুলিতে একটি JSON ডেটা টাইপ থাকে যা সম্পূর্ণ পাঠ্য অনুসন্ধান, বাইনারি স্টোরেজ মেকানিজম, সূচিকরণ এবং ডেটা অ্যাক্সেস করার জন্য অপারেটরের পুরো স্যুটকে অনুমতি দেয়। মারিয়ার এখনও তা নেই। ডেটা টাইপ বিশেষত এমডিইভি -9144 দ্বারা ট্র্যাক করা হচ্ছে ।
তা সত্ত্বেও, মাইএসকিউএলে খুব সীমিত প্রকারটি এনে দেয়, বাগ রক্ষণকারীদের একজন থেকে,
JSON ডেটা টাইপ সরাসরি এসকিউএল স্ট্যান্ডার্ডের বিরোধিতা করে, যা বলে যে JSON_ * ফাংশন যুক্তি হিসাবে স্ট্রিং নেয়। এছাড়াও, গতি অনুসারে মারিয়াডিবি -র
বাইনারি জেএসওনের প্রয়োজন নেই, আমাদের বেঞ্চমার্ক অনুসারে, আমাদের জেএসএন পার্সারটি বাইনারি জেএসওনে মাইএসকিউএল হিসাবে জেএসওএন পাঠ্যের পক্ষে তত দ্রুত। তা হল, মারিয়াডিবিতে জেএসএনের পক্ষে কেউ ভিউআরচার বা টেক্সট করতে পারে। যদি কোনও বৈধকরণ প্রয়োজন হয় তবে একজন এটি চেক সীমাবদ্ধতার সাথে করতে পারেন:
my_json_column TEXT CHECK (JSON_VALID(my_json_column))
যদিও আমরা মাইএসকিউএল সামঞ্জস্যের জন্য জেএসএন "টাইপ" যুক্ত করব।
আমার পড়া থেকে, এটি বাইনারি JSON এর ঠিক বিন্দু নয় আসুন মাইএসকিউএল ডক্সকে উল্লেখ করুন
বাইনারি ফর্ম্যাটটি নথিতে আগে বা পরে সমস্ত মান না পড়েই কী বা অ্যারে সূচক দ্বারা সরাসরি সাবওজেক্টগুলি বা নেস্টেড মানগুলি সন্ধান করার জন্য সার্ভারকে সক্ষম করার জন্য কাঠামোযুক্ত।
আবার, পোস্টগ্রি এরjsonb
আছে অনেক যে বেশী।
jsonb ডেটা একটি পচা বাইনারি ফর্ম্যাটে সংরক্ষণ করা হয় যা সংযোজন রূপান্তর ওভারহেডের কারণে ইনপুটটিকে কিছুটা ধীর করে তোলে, তবে প্রক্রিয়াতে উল্লেখযোগ্যভাবে দ্রুততর হয়, কারণ কোনও পুনর্বারণ প্রয়োজন হয় না। jsonb এছাড়াও সূচক সমর্থন করে, যা একটি উল্লেখযোগ্য সুবিধা হতে পারে।
tldr; মারিয়া ডিবিতে এখনও কোনও জেএসএন টাইপ নেই। এটি "টাইপ" পেয়ে গেলেও এটি কোনও পাঠ্য-বৈধকরণের (পোস্টগ্র্রেএসকিউএলএল json
টাইপের মতো) একটি পাতলা মোড়ক মাত্র । বাইনারি জেএসএন টাইপের (পোস্টগ্রিজ এসকিউএল এর মতো jsonb
) জন্য কোনও পরিকল্পনা নেই কারণ বিকাশকারীরা আপাতদৃষ্টিতে সুবিধাগুলি বুঝতে পারে না।