একাধিক পেমেন্ট গেটওয়ে পরিচালনা করার জন্য স্কিমা ডিজাইনিং


9

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

এখন একাধিক অর্থ প্রদানের গেটওয়েগুলি পরিচালনা করতে, আমি হয় একক লেনদেনের টেবিলটি রাখতে পারি, এটি সমস্ত পেমেন্ট গেটওয়ে থেকে উপলব্ধ সমস্ত ক্ষেত্র এবং এমন একটি ক্ষেত্র যা এই সারিটি কোন পিজির থেকে আসে তা দিয়ে স্টফ করে রাখতে পারি;
বা, আমি প্রতিটি পিজির জন্য উপসর্গের মতো paypal_বা bank_ইত্যাদি সহ পৃথক লেনদেনের টেবিল তৈরি করতে পারি , যার প্রতিটি ক্ষেত্রে ক্ষেত্র রয়েছে।

এটি করার সর্বোত্তম উপায় কোনটি আমি ঠিক নিশ্চিত নই। ভবিষ্যতেও আমি আসতে পারি এমন একই পরিস্থিতিতে এর জন্য এটি শিখতে হবে।


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

এতক্ষণ তোমার কী আছে?
হারুন

@ ব্রাইসএটনেটওয়ার্ক ২৩ আপাতত, আমি দুটি পিজি পরিচালনা করছি এবং আমার উভয়ের জন্য আলাদা আলাদা টেবিল রয়েছে। তবে আমাকে ভবিষ্যতে আরও পিজি যুক্ত করতে হবে। তাই ভাবছিলাম আমার এই কাজটি চালিয়ে যাওয়া উচিত কিনা, কারণ আমাকে প্রতিবার আরও টেবিল যুক্ত করতে হবে। এটি ক্রমবর্ধমান সংখ্যক সারণী এবং কলাম এবং রেকর্ডের সংখ্যা বর্ধমান সহ একটি টেবিলের মধ্যে পছন্দ। আমি কিছুটা বিভ্রান্ত
বিভাস

@ বিভাস, আপনি যে সমাধানটি ব্যবহার করেছেন তা কি আমাদের সাথে ভাগ করে নেওয়া সম্ভব? আমারও একই সন্দেহ হচ্ছে।
মারসিও মাজ্জাচাতো

@MarcioSimao আমরা মত বৈশিষ্ট্য সঙ্গে একক টেবিল সঙ্গে গিয়েছিলাম paypal_transaction_id, bank_transaction_idইত্যাদি আমরাও অনেক পেমেন্ট গেটওয়ে ছিল না, তাই এটা আমাদের জন্য কাজ করেন। যারা অনেক পিজিকে সমর্থন করেন তাদের সাথে কাজ নাও করতে পারেন।
বিভাস

উত্তর:


7

এটি নির্ভর করে যে অর্থ প্রদানের ধরণের মধ্যে ডেটা কীভাবে আলাদা।

আমি কর্মক্ষেত্রে সমর্থন করি এমন সাইটগুলির জন্য, আমাদের কাছে একটি টেবিল রয়েছে যা সমস্ত অর্থ প্রদানের ধরণের জন্য ডেটা সঞ্চয় করে। এটি আমাদের পক্ষে কাজ করে কারণ আমাদের অর্থপ্রদানের প্রকারগুলি মূলত 4 প্রকারের ক্রেডিট কার্ড এবং সংস্থা ক্রয়ের ক্রম। আমাদের বেশিরভাগ গ্রাহক ক্রেডিট কার্ড দিয়ে অর্থ প্রদান করেন, সুতরাং ডেটাতে পুরোপুরি বিচ্যুতি নেই। অবশ্যই, এই ক্রেডিট কার্ড গ্রাহকদের জন্য অনুসন্ধানগুলি পোনम्बर ক্ষেত্রে সর্বদা নাল মান দেয়। তেমনি, পিও গ্রাহকদের জন্য অনুসন্ধানগুলি ক্রেডিট কার্ড সম্পর্কিত সমস্ত ক্ষেত্রে NULL সরবরাহ করে yield

যদি আপনার ডেটাতে বিভিন্ন ক্ষেত্র প্রচুর থাকে তবে আপনি প্রতিটি পেমেন্ট গেটওয়ের জন্য পৃথক টেবিল সহ একটি মাস্টার লেনদেন টেবিল চেষ্টা করতে পারেন। প্রতিটি পেমেন্ট গেটওয়ে টাইপ টেবিলটিতে লেনদেন_আইডির একটি বিদেশী কী থাকবে যা মাস্টার লেনদেন সারণীতে ফিরে লিঙ্ক করবে would

অন্যদিকে যদি আপনার অর্থ প্রদানের প্রবেশদ্বার ধরণের সকলের অনুরূপ ক্ষেত্র থাকে তবে আমি একটি লেনদেনের টেবিলের সাথে আটকে থাকব।


1
যে পরিষ্কার করার জন্য ধন্যবাদ। আমার ধারণা এটি আমার সামনে ঠিক ছিল তবে এটি চিহ্নিত করার জন্য কারও দরকার ছিল। :)
বিভাস

@ ব্রাইসএটনেটওয়ার্ক ২৩, আমার যদি অনেক গেটওয়ে থাকে, যেমন ৫ বা তার বেশি, তবে আপনার কি মনে হয় ডেটা পেতে আমার অসুবিধা হবে? আমি এটি জিজ্ঞাসা করছি কারণ আমি মনে করি যে মাস্টার লেনদেনের টেবিলটি প্রতিটি পেমেন্ট গেটওয়ে টাইপের অনেকগুলি বামে যোগ দিতে হবে।
মারসিও মাজ্জাচাতো
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.