نمايش نزديكترين اطلاعات جستجو شده با موضوع مورد نظر جستجو ...

hasaniha

Member
مي خواستم بپرسم كه چه جوري ميشه اين كار رو كرد؟
يعني يه موضوعي رو توي يك ديتابيس با ركوردهاي بالا جستجو كنيم و از كل نتايج تعداد خاصي كه نزديكترين همخواني رو دارند نمايش بديم.

البته چيزي كه منظور اصليم هست اينه كه چه جوري اين كار رو انچام بديم تا به سورو كمترين فشار بياد.
مثلا كاري كه گوگل داره. از بين تعداد خيلي زيادي ركورد كه به موضوع جستجو مي خورند نزديكترينهاشو نشون ميده!
 

oxygenws

Active Member
اگه میشه بیشتر توضیح بده، من یه ۵-۶ برداشت مختلف می تونم از مطلبی که نوشتی بکنم.
 

hasaniha

Member
منظورم اينه:
مثلا فرض كنيد كه در مورد يك كلمه اي مثل كوهنوردي در يك ديتابيسي مي خواهيم جستجو كنيم.
در اين جستجو بايد نتايج به ترتيب نزديكي به موضوع جستجو مرتب بشند٬ مثلا ممكنه نزديكي رو تنها براش تعداد كلمات مشابه يافته شده در نظر بگيريم.

يه راهي كه در نظر خودم هست اينه كه در ابتدا بايد روي كل مطالب يا ركوردهاي موجود جستجو بشه و به اونها امتياز دهي بشه و در مرحله بعدي بر طبق اين امتيازها به ترتيب مثلا 20 تا از اونها نمايش داده بشند.

ولي فكر كنم اين كار يه مشكلي داره و اونم اينكه در مرحله اول كار اگه تعداد ركوردها و حجم مطلبشون خيلي زياد باشه فشار زيادي وارد ميشه.

راه ديگه اي كه به نظرم مياد براي جلوگيري از فشار زياد مرحله اول اينه كه بيايم در هر ركوردي كه خونده ميه و امتياز داده ميشه٬ اين امتيازها با مراحل بعدي مقايسه بشند و فقط تعدادي كه ميخواهيم نمايش بديم رو تو حافظه نگه داريم.
مشكلي كه براي اين روش دوم به نظرم مياد اينه كه اين مقايسات مداوم در تعداد بالا باز هم فشار زيادي مياره.

حالا نميدونم سايتهايي مثل گوگل يا خيلي جاهاي ديگه اين كار رو چه جوري انجام ميدن كه هم كاري كه ميخواهيم ( يعني شكل و اولويت مرتب سازي ) انجام بشه و هم اين كه فشار زيادي به سرور نياد.

باز هم از شماها ممنون.
به نظر شما بايد چي كار كرد.
 

oxygenws

Active Member
مثلا فرض كنيد كه در مورد يك كلمه اي مثل كوهنوردي در يك ديتابيسي مي خواهيم جستجو كنيم.
در اين جستجو بايد نتايج به ترتيب نزديكي به موضوع جستجو مرتب بشند٬ مثلا ممكنه نزديكي رو تنها براش تعداد كلمات مشابه يافته شده در نظر بگيريم.

در این مورد بیشتر بگو. یعنی چی نزدیک باشه؟؟ از نظر مفهومی یا شباهت کلمه یا ....
 

hasaniha

Member
اونش خيلي مهم نيست٬ يا از طريق مهفومي يا از طريق شباهت كلمه اي بهش امتياز بديم فرق نداره.

موضوع اصلي سر مرتب كردن نتايج بر اساس اين امتيازي است كه ممكنه يا براساس شباهت يا بر اساس مفهوم بهشون داده باشيم.
من مي خوام بدونم كه چه جوري اين كار رو بكنيم طوري كه دو جور فشاري كه در بالا گفتيم به سرور نياد.
 

oxygenws

Active Member
بخوام بحث رو شروع کنم خیلی مشکلات و سوال ها پیش میاد که هممون توش کم میاریم :)

1- شما می تونی تا حدودی از fulltest search استفاده کنی. برای اطلاعات بیشتر باید به راهنمای بانک اطلاعی ات مراجعه کنی. این یک ساختار خوب برای جستجو در بانک هستش و سرعت خوبی داره.

2- برای مفهوم چیز خاصی تو ذهنم ندارم.

3- برای شباهت کلمه ای توسعه های زیادی (برای زبان انگلیسی و ...) وجود داره مثل توابع aspell در php و ...
دقیقا نمی دونم که آیا این نوع توسعه ها رو MySQL ئشتیبانی می کنه یا نه. ولی می دونم که php ئشتیبانی می کنه.

موفق باشید، امید
 

oxygenws

Active Member
چیزی زیاد نمی دونم. لطفا خودت یه جستجو تو سایت mysql.org بکن و اگه می تونی یه توضیحی اینجا بنویس :) ممنون.
 
تو php فكر كنم بتونيد از دستور :

کد:
Select From Table * Llike ...

كه بيشتر منظورم قسمت like بود ... يعني مياد چيزهاي شبيه رو پيدا ميكنه ...
 

hasaniha

Member
mollasadra گفت:
تو php فكر كنم بتونيد از دستور :

کد:
Select From Table * Llike ...

كه بيشتر منظورم قسمت like بود ... يعني مياد چيزهاي شبيه رو پيدا ميكنه ...
منظور من اين موضوع نيست!
يه نگاهي به نوشته هاي قبليم بيندازي معلومه.
بيشتر دنبال روشيم كه فشار سنگين وارد نكنه و به هدفي كه گفتم برسيم.
 

جدیدترین ارسال ها

بالا