250k কম সম্ভাব্য রেকর্ড পরিচালনা করতে লাইটওয়েট ডকুমেন্ট ইনডেক্সিং


10

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

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

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

  • একটি কম্বল পূর্ণ-পাঠ্য ওয়াইল্ডকার্ড অনুসন্ধান করা কিছু সিস্টেমে (বিশেষত ভাগ্যবান হোস্টগুলি) বেদনাদায়কভাবে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে ধীরে আপনার যোগ দিতে পারেন database

  • আপনি ব্যবহারকারীর একক অনুরোধে একাধিক প্রশ্নগুলি শেষ করেছেন end আপনি সম্ভবত আরও জটিল প্রশ্নগুলির সাথে এটি পেতে পারেন তবে আগের বিষয়টি দেখুন।

  • পূর্ণ-পাঠ্য ইঞ্জিনগুলিতে সাধারণত বৈশিষ্ট্যগুলির অভাব উপস্থিত থাকে।

ডেটাবেসগুলির সার্ভার হিসাবে স্থাপন করার প্রয়োজন একই সমস্যা ছিল এবং তারপরে এসকিউএলাইট এসেছিল এবং হঠাৎ আমরা একটি ডাটাবেস স্থাপন করতে পারি যা একটি ফাইলে স্বয়ংসম্পূর্ণ। আমার গুগলিং কিছুই তৈরি করে নি - পুরো-পাঠ্য ইনডেক্সিং / অনুসন্ধানের জন্য যদি এরকম কিছু উপস্থিত থাকে তবে অবাক হন।

লাইটওয়েট ডকুমেন্ট ইনডেক্সিং (উদাহরণস্বরূপ অন্য প্রশ্নের উত্তরে ব্যাখ্যা করা হয়েছে ) বাস্তবায়ন করবেন বা এই পরিস্থিতিতে এসকিউএল ব্যবহার চালিয়ে যাবেন কিনা তা সিদ্ধান্ত নেওয়ার সময় কোন কারণগুলিকে বিবেচনা করা উচিত ?


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

9
ওহো - আমি এখানে কোনও সংস্থা বা কিছু শুরু করতে চাইছি না। এটি কেবলমাত্র একটি সৎ প্রশ্ন যা কোনও পরিস্থিতি বা কারেন্ট বর্তমান বাক্সের বাইরের বাইরে সমাধানের জন্য প্রযুক্তি ব্যবহারের সন্ধান করছে।
জারোদ নেটটলেস

16
এটি সফ্টওয়্যার বিকাশে ধারণামূলক সমস্যা সম্পর্কিত একটি সাইট। সফ্টওয়্যার বিকাশে আপনার যে ধারণাগত সমস্যা রয়েছে সে সম্পর্কে দয়া করে জিজ্ঞাসা করবেন না।
PSr

3
সেখানে একটি ভাল প্রশ্ন আছে ... আমি মনে করি এটি আরও পরিষ্কার এবং সুনির্দিষ্ট করার জন্য এটি পরিষ্কার করা দরকার।
গ্র্যান্ডমাস্টারবি

3
যদি এসকিউএলাইট সম্পর্কে আপনার একমাত্র অভিযোগটি পাঠ্য ইনডেক্সিংয়ের অভাব হয় তবে কেবল এসকিউএলাইটের এফটিএস 4 এক্সটেনশন মডিউলটি ব্যবহার করবেন না কেন ?
ব্রায়ান

উত্তর:


2

আপনি জানেন, আমি redis ব্যবহার বিবেচনা বলতে বলতে হবে।

  • প্রসঙ্গের ধারণাটি ব্যবহার করুন । নথিগুলি সম্পর্কে আরও না জেনে গভীরতার দিকে যাওয়া শক্ত হবে। ডকুমেন্টের শিরোনাম থেকে প্রায়শই আপনি অনেক কিছুই বুঝতে পারবেন। প্রতিটি ওয়েব ডকুমেন্টকে প্রোফাইল করা হ'ল ওয়েব ক্রলিংয়ের মতো প্রাথমিক প্রথম পদক্ষেপ।

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

    প্রথমটি যা করে তা হ'ল আপনাকে আপনার পুরো সেটে শব্দের একটি সর্বস্তরের তালিকা। সেই তালিকায় কিছু পাওয়া যায় নি, 'ফলাফল নেই' এর স্বয়ংক্রিয়ভাবে ফেরত পাওয়া। আমি জনপ্রিয়তার নীচের 5--২০% এর চেয়ে কম র‌্যাঙ্কিংয়ের প্রস্তাব দেব (যখন সূচীতে অনুসন্ধান অনুসন্ধান চলছে) এছাড়াও কোনও ফল বলবে না '।

  • আপনি যদি না redis ভালো কিছু সঙ্গে যেতে, অথবা এমনকি শুধু আপনার নিজের মেমরির গঠন আপনি বর্ণনাকারী ফাইল বা ক্ষুদ্র-DB ফাইল এবং পৃষ্ঠা বস্তু যা মেমরি প্রতিটি নির্দিষ্ট ডকুমেন্ট আগে পিছে বর্ণনা দস্তাবেজ পেয়ার গঠন করতে পারেন না। সাধারণ সন্ধানগুলি স্মৃতিতে রাখুন সম্ভবত তাদের স্লটগুলির জন্য প্রতিযোগিতা করে বা তাদের বেঁচে থাকার জন্য সময় দেওয়ার মাধ্যমে যা প্রতিটি অনুসন্ধানে বৃদ্ধি পায়।

  • আরও যেতে, রেফারেন্স ডেটা সংরক্ষণ করা শুরু করুন যা একটি লিঙ্ক / রেফ / পয়েন্টার / সূচক / দুই বা ততোধিক ডকুমেন্ট এবং কীওয়ার্ড বা বাক্যাংশের একটি পুলকে গ্রুপ করে। মূলত আপনি একটি পাম্পড ট্যাগ ক্লাউড পান।

  • তবুও, যখন আপনার অভিধানে কোনও শব্দ একই ধরণের মেটাডেটা / শিরোনামের দস্তাবেজে সাধারণত একটি সঠিক স্ট্রিং দ্বারা অনুসরণ করা হয় বা অনুসরণ করা হয় তখন ট্র্যাকিংয়ের মাধ্যমে বাক্য সনাক্তকরণ করুন। এটি নিবিড় তবে ডেটা রেন্ডার করতে একটি পাস প্রয়োজন।

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

  • প্রতিবার ব্যবহারকারী কোনও ফলাফল ক্লিক করুন যা শীর্ষ তিনটি নয় ট্র্যাক করে সঠিকতার সম্ভাবনাটি সংযুক্ত করুন। নিখুঁত ফলাফল সরবরাহ করে না এমন ব্যবহারকারী অনুসন্ধানগুলি দেখে বাক্য সনাক্তকরণের উন্নতি অর্জন করুন। আপনার প্রশ্নগুলি ক্লায়েন্টের অনুসন্ধানগুলির সাথে সম্পর্কিত হতে বাধ্য করুন।

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

  • বর্জ্য ডিস্ক, গতি অর্জন, জটিলতা হারাতে হবে। আপনার নথিগুলির একাধিক গাছ এবং / অথবা নথিতে লিঙ্কের গাছগুলি সংরক্ষণ করুন। যাদের জন্য মানদণ্ড পূরণ হয়েছে কেবল সেই গাছগুলি অনুসন্ধান করুন বা কমপক্ষে বেশিরভাগ ক্ষেত্রে দ্রুত ফলাফল পেতে তাদের পছন্দ করুন।

  • আপনার নিজের লাইটওয়েট পারমুয়েশন ইঞ্জিন তৈরি করুন বা দ্রুত অক্ষর সনাক্তকরণ এবং কোনও রেজেক্স ব্যবহার না করে এমন কোনও সন্ধান করুন। অথবা কেবল কয়েক ঘন্টার মধ্যে একটি রেজেেক্স ব্যবহার করে তৈরি করুন তবে পারফরম্যান্সের পার্থক্যটি যথেষ্ট অনুসন্ধানের জন্য এখানে লক্ষণীয় হবে।

  • অনেক জিনিস।

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

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