পোস্টগ্রেএসকিউএল বনাম মাইএসকিউএল: স্থানিক বৈশিষ্ট্যের তুলনা


15

আমরা একটি ওয়েব অ্যাপ্লিকেশন তৈরির প্রক্রিয়াতে আছি যেখানে একটি স্থানিক ডেটা উপাদান থাকে। শুরুতে আমাদের স্থানিক ডেটা তুলনাগুলি একটি নির্দিষ্ট বিন্দু নেবে এবং মেলে ওভারল্যাপিং স্থানিক বহুভুজগুলির সাথে মেলে।

বলা হচ্ছে, আমাদের ডাটাবেসে আরও অনেকগুলি উপাদান রয়েছে যা আপনার সাধারণ সম্পর্কযুক্ত ডাটাবেসে আপনি খুঁজে পাবেন এমন সমস্ত সাধারণ জিনিসগুলিকে অন্তর্ভুক্ত করে।

আমরা আমাদের প্রকল্পের সেই স্থানে রয়েছি যেখানে কোন ডাটাবেস সমাধানটি ব্যবহার করতে হবে তা আমাদের বেছে নিতে হবে।

সমস্ত প্রকল্পের সদস্যরা মাইএসকিউএল বাস্তবায়ন এবং প্রশাসনের সাথে আরও বেশি পরিচিত, তবুও সমস্ত গবেষণা থেকে জানা যায় যে পোস্টগ্রিসএসকিউএলই এর থেকে ভাল সমাধান - বিশেষত পোস্টজিআইএস ব্যবহার করে স্থানিক ডেটা সম্পর্কিত to

আমরা আশা করি (আশা করি) আমাদের অ্যাপ্লিকেশন প্রচুর সহবর্তী ব্যবহারকারীদের সাথে প্রচুর ক্রিয়া অনুভব করবে।

একটি স্পেসিয়াল ডেটা উপাদান সহ মাইএসকিউএলকে তাদের আরডিবিএমএস হিসাবে ব্যবহার করার অভিজ্ঞতার সাথে কি কোনও দীর্ঘমেয়াদী পরামর্শ / অভিজ্ঞতা আছে?

পরিচিতি বাদে পোস্টজিআইএস ব্যবহার করার কোনও অসুবিধা আছে কি?


আপনি যদি এটি না দেখে থাকেন তবে স্ল্যাশডট-এ একই ধরণের প্রশ্ন রয়েছে যা সম্ভবত আরও মনোযোগ পাবে।
jp

উত্তর:


10

আমি মাইএসকিউএল-এর সুবিধাগুলি / অসুবিধাগুলির সাথে কথা বলতে পারি না, তবে পোস্টজিআইএস কোডটি বেশিরভাগ ক্ষেত্রে সেরা (গতি / কার্যকারিতার দিক থেকে) এবং সবচেয়ে পরিপক্ক (পরীক্ষার / বাস্তব-বিশ্বের এক্সপোজারের ক্ষেত্রে) হিসাবে বিবেচিত হয় ) উপলব্ধ।

উদাহরণস্বরূপ, পিজিইস্ট ২০১০ এ এফএএর কিছু লোকের দ্বারা তাদের বিমানবন্দর ডাটাবেস (অ্যারোনাভ এবং অন্যরা চার্ট সংকলন করতে ব্যবহৃত) ওরেল থেকে পোস্টগ্রিস / পোস্টজিআইএসে রূপান্তর করার বিষয়ে একটি আলোচনা করেছিলেন। AvationDB সাইটের এছাড়াও Postgres (8.0) উপরে নির্মিত।

জিআইএস সম্পর্কিত প্রশ্নগুলি যদি আপনি আমার পরামর্শটি করেন তবে কেন তা পোস্টগ্র্রেসের সাথে যেতে হবে। এটি অবশ্যই আপনি যে কোনও সম্পর্কযুক্ত ডেটাবেজে সাধারণভাবে করবেন তার সমস্ত কিছু হ্যান্ডেল করতে পারে।


মাইএসকিউএল থেকে স্যুইচ করার শর্তে, পোস্টগ্রিসের পেছনের ডকুমেন্টেশনটি প্রথম-হার, এবং মাইএসকিউএল থেকে পোস্টগ্রাসে স্যুইচ করার বিষয়ে অস্টগ্রিস উইকের একটি অংশও রয়েছে ।
প্রাথমিক লার্নিং কার্ভটি কিছুটা খাড়া হতে পারে এবং আপনার আপনার ডাটাবেস এবং কোনও সঞ্চিত পদ্ধতি (যদি আপনি সেগুলি মাইএসকিউএল-র জন্য ইতিমধ্যে লিখেছেন) মুছে ফেলা প্রয়োজন হতে পারে, তবে এটি একটি দুর্গম কাজ নয়।

আপনি কয়েক সপ্তাহের মধ্যে স্যুইচটি করতে যথেষ্ট পরিমাণে তুলতে সক্ষম হবেন এবং আপনি যদি একটি ডেটাবেস ডেটাবেস স্থাপন করেন তবে আপনি সম্ভবত এক মাসের মধ্যে রুটিন কাজে দক্ষ হতে পারবেন এবং আত্মবিশ্বাসের সাথে আপনি ম্যানুয়ালটিতে কোথায় সন্ধান করবেন তা জানেন না-রুটিন জন্য।


অন্যদিকে যদি কেউ সেই পিজিএস্ট আলাপ থেকে স্লাইডগুলি খনন করতে পারে তবে আমি প্রায় একমাস ধরে তাদের সন্ধান করেছি এবং সেগুলি খুঁজে পাইনি। লসী ইউএসবি ড্রাইভগুলি আমার ডেটা নিয়ে ঘুরে বেড়াচ্ছে ...
voretaq7

আপনি এই বোঝাতে চেয়েছিলেন? postgresqlconferences.org/2010/east/talks/… স্লাইডগুলি দেখতে নিবন্ধন করতে হবে।
আর কে

@ আরকে হ্যাঁ , এটিই সেই লিঙ্কটি আমি খুঁজছিলাম। এবং আমি আমার ব্যবহারকারীর নাম মনে করি! পার্টি!
voretaq7

যদিও স্লাইডগুলির জন্য আমি লিঙ্কটি খুঁজে পাইনি :(
আরকে

5

কিছু খুব বড় বিষয় কথা বলছি। এখানে পোস্টজিআইএস সমর্থন করে এমন জিনিসগুলির একটি তালিকা রয়েছে যা মাইএসকিউএল এবং মারিয়াডিবিতে সম্পূর্ণ অনুপস্থিত।

  • গণনায় এসআরআইডি, আপনার পয়েন্টগুলিকে আলাদা একটি এসআরডি দিন এবং আপনি বিভিন্ন মান ফিরে পাবেন। এটি সমষ্টিগত ক্রিয়াকলাপগুলি: আমার জ্ঞানের সর্বোত্তম হিসাবে মাইএসকিউএল কোনও স্থানিক সমষ্টি ফাংশন সরবরাহ করে না

কে নিকটতম প্রতিবেশী: কেবল পোস্টজিআইএস কেএনএন সমর্থন করে। কেবল একটি সূচক ব্যবহার করে যে কোনও বিন্দুর নিকটতম বিন্দুটি সন্ধান করুন: সমস্ত পয়েন্ট থেকে দূরত্ব গণনা করার দরকার নেই! মাইএসকিউএল স্পেক ভাঙা এবং কেবল দুটি মান একই SRID আছে তা পরীক্ষা করে। নির্বিঘ্ন এসআরআইডি সচেতনতা সক্ষম করতে পোস্টজিআইএস প্রো 4 জ সংজ্ঞাগুলির একটি ডাটাবেস নিয়ে আসে । একটি এসআরআইডি সেট করা এবং কল করা ST_Transform( একটি ফাংশন মাইএসকিউএল এর অভাব ) আপনার স্থানাঙ্কগুলিকে পুনরায় প্রজেক্ট করবে ..

মাইএসকিউএলে, সমস্ত গণনাগুলি এসআরআইডি 0 ধরে ধরে সম্পন্ন হয়, আসল এসআরআইডি মান নির্বিশেষে। এসআরআইডি 0 একটি অক্ষরকে নির্ধারিত কোনও ইউনিট ছাড়াই অসীম ফ্ল্যাট কার্টেসিয়ান বিমান উপস্থাপন করে। ভবিষ্যতে, গণনাগুলি নির্দিষ্ট এসআরআইডি মানগুলি ব্যবহার করতে পারে। এসআরআইডি 0 আচরণ নিশ্চিত করতে, এসআরআইডি 0 ব্যবহার করে জ্যামিতি মান তৈরি করুন। এসআরআইডি 0 যদি নতুন কোনও জ্যামিতির মানগুলির জন্য ডিফল্ট হয় তবে এসআরআইডি নির্দিষ্ট না করা হয়।

  • রাস্টারস : রাস্টার প্রজন্ম থেকে নিষ্কাশন পর্যন্ত এখানে বেশ কয়েকটি বৈশিষ্ট্য রয়েছে। আপনি হিটম্যাপ এবং এর মতো তৈরি করতে পারেন।

  • ভূগোল , পোস্টজিআইএস একটি অপ্রোজিত ভূগোল প্রকারকে সমর্থন করে যা কার্টেসিয়ান গণিতকে মোটেই ব্যবহার করে না। এটি সম্পর্কিত ক্রিয়াকলাপগুলির পুরো ধীরে রয়েছে যা ওবলেট স্পেরয়েডগুলিতে কাজ করে on বিপরীতে মাইএসকিউএল দুটি পয়েন্ট থেকে ভৌগলিক এসআরএসে একটি বাউন্ডিং বক্সও তৈরি করতে পারে না।

  • টপোলজি , ভেক্টর জ্যামিতি থেকে পৃথক, টোপো জিওম স্টোর নোড এবং সম্পর্ক। একটি নোড সরান, প্রান্তটি খুব সরে যায় এবং আপনি একটি নতুন মুখ পান। এটি প্রান্তগুলিকে নির্দেশিত হতে বাধ্য করে যা তাদের রাউটিংয়ের জন্য আদর্শ করে তোলে। পিজআরউটিং যা করে তার 100% সাব- পয়েন্ট হিসাবে মাইএসকিউএল-এর কাছে অনুপলব্ধ - সুতরাং আপনি কেবল একটি গুগল ম্যাপস বা এর মতো তৈরি করতে পারবেন না

  • জিওকোডিং: অবদান ডিরেক্টরিতে জিওকোডার এক্সটেনশন রয়েছে যা আদমশুমারির তথ্য থেকে কাজ করে এবং সেই ডেটা ইনস্টল করার জন্য একটি লোডার।

  • ঠিকানার মানককরণ: এমন একটি এক্সটেনশান রয়েছে যা সহজে পার্সিং, স্টোরেজ এবং তুলনা করার জন্য ঠিকানাগুলিকে স্বাভাবিক করে তোলে।

  • এসকিউএল এমএম অতিরিক্ত বৈশিষ্ট্যগুলিও উপস্থিত রয়েছে , আপনি কেবল পাবে না CIRCULARSTRING COMPOUNDCURVE CURVEPOLYGON MULTICURVEবা MULTISURFACEমাইএসকিউএল হবে।

  • এনডি কর্ডস: পোস্টজিআইএস 3 ডিএম, 3 ডিজে এবং 4 ডি আকারগুলি সমর্থন করতে পারে এবং মাইএসকিউএল পয়েন্টগুলি সহজভাবে করতে পারে না

  • মাইএসকিউএল কেবল আর-ট্রি ইনডেক্সগুলিকে সমর্থন করে। পোস্টজিআইএস আর-ট্রি (গিস্ট / জিন) এবং ব্রিনকে সমর্থন করে (বৃহত জ্যামিতির টেবিলের জন্য)

  • সমষ্টিগত ফাংশন: আমার জ্ঞানের সর্বোপরি মাইএসকিউএল কোনও স্থানিক সমষ্টি ফাংশন সরবরাহ করে না

  • কে নিকটতম প্রতিবেশী: কেবল পোস্টজিআইএস কেএনএন সমর্থন করে । কেবলমাত্র একটি সূচক ব্যবহার করে যে কোনও বিন্দুর নিকটতম বিন্দুটি সন্ধান করুন: সমস্ত পয়েন্ট থেকে দূরত্ব গণনা করার দরকার নেই!

  • ইন্ডেক্সিং। পোস্টগ্রিএসকিউএল আপনাকে আপনার স্থানিক সূচকগুলিতে কোনও ডেটা সংরক্ষণ করতে দেয় (যা একটি গিস্ট / জিন সূচক)। উদাহরণস্বরূপ, যদি আপনি সংরক্ষণ করতে পারেন year(অথবা অন্যান্য অ স্থানিক ডেটা) এবং geomউপর একই সূচি। এটি কীভাবে করবেন সে সম্পর্কে আরও তথ্যের জন্য দেখুন btree_ginএবং দেখুন btree_gist

এছাড়াও, পোস্টজিআইএস দ্বারা সমর্থিত সম্ভবত 200 বা ততোধিক ফাংশন রয়েছে

সংক্ষেপে, মাইএসকিউএল পোস্টজিআইএস এর নিজস্ব ধারণ করে না এবং এটি এটি জানে। পোস্টজিআইএস একটি জন্তু। এই বিষয়গুলির কিছু ব্যাখ্যা করতে চেয়েছি।


0

আমি প্রথম উত্তরের সমস্ত বিবৃতিতে সম্পূর্ণরূপে একমত, তবে আমার নিজের অভিজ্ঞতা ভাগ করে নেওয়ার জন্য - আমি এটি আমার দেশের জাতীয় সড়ক প্রশাসনের উপর করেছি: উত্পাদন সমালোচক, উচ্চ ট্রাফিক সাইট। আমি মাইএসকিউএল এবং পোস্টগ্রেএসকিউএল / পোস্টজিআইএস উভয় দ্বারা কোনও ওয়েব অ্যাপ্লিকেশনকে ফিড দেওয়ার পরামর্শ দিচ্ছি।

সমস্ত "সাধারণ" স্টাফের জন্য, ওয়েব অ্যাপটি একটি মাইএসকিউএল ভিত্তিক সিএমএসের সাথে নির্বিঘ্নে কাজ করে। সমস্ত স্থানিক কাজের জন্য, একই ওয়েব অ্যাপ্লিকেশন - ত্রুটিহীনভাবে;) পোস্টগ্র্রেএসকিউএল / পোস্টজিআইএস সহ কাস্টম বিকাশের ভিত্তিতে কাজ করে। প্রথম উপাদানটি বিকাশ করা হয়েছিল এবং সাধারণ মাইএসকিউএল দক্ষতার সাথে অনায়াসে রক্ষণাবেক্ষণ করা হয়। দ্বিতীয় উপাদানটির শুরুতে কিছুটা গবেষণা প্রচেষ্টা জড়িত।

আপনাকে অত-পরিচিত-পোস্টগ্র্রেএসকিউএল / পোস্টজিআইএস-এ সাধারণ জিনিসগুলির ব্যয়বহুল পুরো প্রয়োগের জন্য জোর করতে হবে না এবং আপনাকে মাইএসকিউএল-তে জিওপ্যাটিয়াল স্টাফের একটি সাবওটিমাল বাস্তবায়ন জোর করতে হবে না। প্রতিটি খেলোয়াড় যেখানে খেলতে পারে সেখানে খেলুক।


2
আমি সাধারণত একটি দ্বৈত-ডাটাবেস বাস্তবায়ন এড়াতে পারি যেখানে একেবারে প্রয়োজন হয় না। দুটি পৃথক ডাটাবেস ইঞ্জিন ইনস্টল এবং রক্ষণাবেক্ষণ আপনাকে দীর্ঘমেয়াদী কাজের জন্য যথেষ্ট পরিমাণে প্রতিশ্রুতি দেয় এবং পরীক্ষার বোঝা বাড়ে। "সাধারণ ইউটিলিটি" রাজ্যে মাইএসকিউএল এবং পোস্টগ্রিসের মধ্যে খুব সামান্য পার্থক্য শিখতে তুলনামূলকভাবে সামান্য পরিমাণে এককালীন কাজ এবং যখন আপনি সম্পন্ন করেন তখন একটি ক্লিনার আর্কিটেকচারের জন্য তোলে ...
voretaq7
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.