কয়টি সঞ্চিত প্রক্রিয়া পরামিতি খুব বেশি?


12

আমি সবে এসকিউএল সার্ভার ২০০৮ সালে একটি সঞ্চিত পদ্ধতি লিখতে শুরু করেছি এবং 30+ পরামিতি রয়েছে। আমি কখনই 10 ডলারের বেশি প্যারামিটার সহ একটি লিখিনি, এবং এটি আমাকে ভাবতে পেরেছিল ... কোন পয়েন্টে খুব বেশি পরামিতি রয়েছে?

প্রসঙ্গে ... এই পদ্ধতিটি মূলত একটি একক সারিতে একটি একক সারণিতে প্রবেশ করিয়ে দেবে । একটি খুব অনুরূপ হবে; কিছুটা ছোট হলেও; সংস্করণ যা একই টেবিলে একটি আপডেট আপডেট করে। বেশিরভাগ কলামগুলি আন্ত এবং স্ট্রিংগুলির মিশ্রণ ( varchar(200)) এর সাথে তুলনামূলকভাবে ছোট ।

বিষয়গুলি কি কি; ভাল অথবা খারাপ; একটি বিশাল সংখ্যক পরামিতি সহ একটি প্রক্রিয়া করার জন্য এবং যেখানে প্রান্তিকতাটি আমার অন্যান্য প্যাটার্নগুলি বিবেচনা করা উচিত?


1
হ'ল এটির মতো 'যদি আপনাকে দাম জিজ্ঞাসা করতে হয় তবে আপনি তা সহ্য করতে পারবেন না'। আপনি যদি ভাবতে শুরু করেন যে কতগুলি প্যারামিটারগুলি অনেক বেশি, আপনার অনেকগুলি রয়েছে। মূল সমস্যাটি ইঞ্জিন নয়, আপনি, কোডটির মানব পাঠক / রক্ষণাবেক্ষণকারী। সুতরাং আমি বলব যে স্বয়ংক্রিয়ভাবে উত্পন্ন কোডে যথাসম্ভব বেশি থাকা ঠিক আছে , তবে হাতে লিখিত / বজায় রাখা কোডটিতে এটি যুক্তিসঙ্গত রাখুন।
রেমাস রুসানু

উত্তর:


12

সমস্যা? আমি কারও পক্ষে তর্ক করব না

  • সীমাটি 2100 পরামিতি । আইআইআরসি এটি এসকিউএল 2000 এর পরে 2100 হয়েছে তবে একটি ডকুমেন্টেশন ত্রুটির প্রস্তাবিত এটি 1024।
  • যদি কোনও টেবিলের 1000 কলাম থাকে ( উদাহরণস্বরূপ একটি শেয়ারপয়েন্ট-এস্কু স্পার্স কলাম বিন্যাসের কারণে ) এবং আপনি সঞ্চিত প্রক্রিয়াগুলির মাধ্যমে অ্যাক্সেস প্রয়োগ করছেন, আপনার সন্নিবেশ গ্রাহকের 1000 পরামিতি থাকতে পারে। কিছুতেই ভুল হয়নি।
  • আপনি যখন প্রশস্ত টেবিলের মুখোমুখি হন তখন স্কিমাটি পর্যালোচনা করতে বিরতি দিন (30 টি বিশেষভাবে প্রশস্ত নয়)। জীবনকে স্বাভাবিক করে তোলা শুরু করে তবে অলসতা এবং / অথবা বেহায়াপনার মাধ্যমে স্বীকৃতি ছাড়িয়ে প্রসারিত হয়েছে এমন সারণীগুলি সন্ধান করা অস্বাভাবিক কিছু নয়।
  • এমনকি সিএসভি তালিকা বা এক্সএমএল হিসাবে পরামিতিগুলির সেট পাস করার জন্য সংক্ষেপে বিবেচনা করবেন না। ক্যোয়ারী অপটিমাইজারকে অন্ধ করে দেয় এবং সময় বা প্রচেষ্টা থেকে সামান্যই সাশ্রয় করে।
  • বিপুল সংখ্যক পরামিতি সহ কোনও ক্রিয়াকলাপ কল করতে ক্লায়েন্ট কোডটি হাতছাড়া করবেন না। T4 টেমপ্লেট বা কোডস্মিথের মতো কোড তৈরির সরঞ্জামগুলি উদ্ধার করতে।

1
এই উত্তরের জন্য ধন্যবাদ, এটি খুব সুন্দরভাবে বলা হয়েছিল। এটি আমার প্রশ্নের সঠিক উত্তর দেয় answers এটা ঠিক খুব খারাপ তারা "মত মহান স্ক্র্যাবল শব্দের ব্যবহারের জন্য একটি ব্যাজ না নিষ্প্রভতা "
JoeGeeky

2

জো সেলকো দীর্ঘ প্যারামিটার তালিকার একজন আইনজীবী, যা তিনি এই দ্বি-অংশ প্রবন্ধে বিস্তারিতভাবে লিখেছেন :

সহজ উত্তর হ'ল প্রক্রিয়া বডির ভিতরে তালিকা তৈরি ও সারণী তৈরি করতে একটি দীর্ঘ পরামিতি তালিকা ব্যবহার করা। এসকিউএল সার্ভার 2100 পরামিতি পর্যন্ত পরিচালনা করতে পারে যা ব্যবহারিক উদ্দেশ্যে যথেষ্ট পরিমাণে হওয়া উচিত। এসকিউএল সার্ভার আসলে এক্ষেত্রে একটি পলক; ডিবি 2; 32 কে পরামিতিগুলি পার করতে পারে। এবং ওরাকলে K৪ কে প্যারামিটার থাকতে পারে।

... দীর্ঘ প্যারামিটার তালিকাটি সরল পুরানো প্যারামিটারগুলি নিয়ে গঠিত, যার অর্থ এটি আউটপুটগুলির পাশাপাশি ইনপুটগুলির জন্যও ব্যবহার করা যেতে পারে। এটি অপ্টিমাইজারটি ব্যবহারের জন্য একটি বিবৃতিতেও রয়েছে।

আমার কি মনে হয় এই কৌশলগুলি সর্বদা সর্বোত্তম সমাধান হবে? অবশ্যই না. এসকিউএল তেমন কোনও জিনিস নেই। তবে আপনি কখন কোন উপযুক্ত সমস্যা পান তা দেখার বিষয়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.