הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   בניית מנוע חיפוש...הכיצד? (https://hosts.co.il/forums/showthread.php?t=78247)

AlmogBaku 12-09-09 19:15

ציטוט:

נכתב במקור על ידי Inet (פרסם 738312)
אנשים, תפסיקו לדבר שטויות.

התיכנות של המנוע חיפוש לא מסובך בכלל, רוב העבודה היא בשיפור האלגוריתם ככה שידע לעבוד בצורה הטובה ביותר. אני פיתחתי מערכת למנוע חיפוש - בשביל ה"כיף" "לימוד" "אתגר" - וזה לא מסובך בכלל.

כמובן, אני לא משווה את מה שעשיתי לגוגל אבל הוא בהחלט ברמה סבירה +, והמליונים שדיברנו פה - אתה צריך השקעה בשביל שרתים שיחזיקו את כל המידע ויספקו הכל במהירות סבירה אבל בשביל התחלה אפשר להסתפק במס' שרתים בסכום חודשי סימלי (כמה אלפי שקלים בחודש).

נ.ב. למי שואל "אם זה ככה למה לא העלת אותו והפצת אותו?" - מהסיבה הפשוטה שלהתחרות ב MSN GOOGLE וכו' זה מיותר ויהווה ביזבוז זמן מוחלט.

נ.ב. 2 - למי ששאל פה לגבי האינדקוס: אני הכנסתי קישור לאתר וואלה! ומשם הגיעו אלפי אתרים ומכל אחד מהם עוד ועוד ככה זה ממשיך עד כמעט אין סוף (כמובן שאני עצרתי את זה בסופו של דבר).

וזו בדיוק הסיבה שהוא צריך כמה מיליונים(הסיבה: שרתים, פיתוח אלגוריתמים, וכו').

Daniel 12-09-09 20:27

ציטוט:

נכתב במקור על ידי Inet (פרסם 738312)
אנשים, תפסיקו לדבר שטויות.

התיכנות של המנוע חיפוש לא מסובך בכלל, רוב העבודה היא בשיפור האלגוריתם ככה שידע לעבוד בצורה הטובה ביותר. אני פיתחתי מערכת למנוע חיפוש - בשביל ה"כיף" "לימוד" "אתגר" - וזה לא מסובך בכלל.

כמובן, אני לא משווה את מה שעשיתי לגוגל אבל הוא בהחלט ברמה סבירה +, והמליונים שדיברנו פה - אתה צריך השקעה בשביל שרתים שיחזיקו את כל המידע ויספקו הכל במהירות סבירה אבל בשביל התחלה אפשר להסתפק במס' שרתים בסכום חודשי סימלי (כמה אלפי שקלים בחודש).

נ.ב. למי שואל "אם זה ככה למה לא העלת אותו והפצת אותו?" - מהסיבה הפשוטה שלהתחרות ב MSN GOOGLE וכו' זה מיותר ויהווה ביזבוז זמן מוחלט.

נ.ב. 2 - למי ששאל פה לגבי האינדקוס: אני הכנסתי קישור לאתר וואלה! ומשם הגיעו אלפי אתרים ומכל אחד מהם עוד ועוד ככה זה ממשיך עד כמעט אין סוף (כמובן שאני עצרתי את זה בסופו של דבר).

בוא נחשוב טיפה.

אתה לוקח לדוגמא - את הוסטס כמקום התחלתי.

דף ממוצע בהוסטס מגיע לסביבות ה-20KB.
יש בערך 800,000 דפים עם p=NUM בכתובת, 80,000 נושאים,

לכל תגובה גם יש דף משלה בכל מיני פורמטים,


רק לאנדקס את הוסטס - יקח לך לפחות כמה עשרות אם לא מאות ג'יגה בייט.
(או שכמובן תכין אלגוריתם שידע לזהות HEADER ו-FOOTER משתנים במהירות - שזה כמה מאות שעות פיתוח של צוות מיומן כדי לעשות כיווץ מזערי בגודל).

עכשיו אתה צריך גם להיזהר מ-duplicates שנראים דומים. שים לב שאני עכשיו רק מדבר על בעיות שעלולות להיווצר על ידי בעלי אתרים שלא מתכוונים לכך ואני מדבר רק על בעיות של אחסון המידע.

אז נמשיך - כמה עשרות ג'יגה בייטים על אתר (ואני מניח שאתה לא הולך לשכור צוות ענקי כדי לצמצם את זה - וגם אז... תחשוב על כל הבעיות).

עכשיו - מה עם דפים דומים? נגיד, http://www.hosts.co.il/forums/?meow ו-http://www.hosts.co.il/forums/?whaf זה דפים אותו הדבר - שההבדל היחיד, שתראה למטה "שעה" וזה יהיה שונה - אז יש הבדל כלשהו.
נניח שזה מציג 30 נושאים רנדומאליים - מה אז תעשה?

אז נגיד ופתרת את הבעייתיות הזאת.

קח לדוגמא את האתר הזה:
http://www.nth-dimension.org.uk/utils/ghash.php

איך תתמודד איתו? וזה אתר קטן יחסית - אבל אני מקווה שאתה מבין את הקונספט.


עכשיו - כל זה בהנחה שאף אחד לא רוצה בכוונה לפגוע בפעילות ה"עכביש" שלך...


להכין ספיידר זה דבר מאוד מסובך - אל תתייחס לזה בכזאת קלות ראש.

Shay Ben Moshe 12-09-09 21:15

דניאל, הסבר כל כך מדויק וכל כך נכון.
אני מאמין שמה שאמרת מסכם את כל הנושא.

מצד שני אתה יכול לעשות נניח מנוע שמאנדקס רק דפים ראשיים, ואז זה יהיה פחות בעייתי, אבל הרבה פחות יעיל.

Inet 12-09-09 22:35

ציטוט:

נכתב במקור על ידי The Chosen Generl (פרסם 738364)
דניאל, הסבר כל כך מדויק וכל כך נכון.
אני מאמין שמה שאמרת מסכם את כל הנושא.

מצד שני אתה יכול לעשות נניח מנוע שמאנדקס רק דפים ראשיים, ואז זה יהיה פחות בעייתי, אבל הרבה פחות יעיל.

לא יעיל, לא כל מה שהאתר מציע לא נמצא בדף הבית.

לגבי זה שהגיב לפני: אתה מניח שאני שומר את כל הדפים שאני סורק בשרת (כמו גוגל), אבל הספיידר לא שומר את הדפים בשרת, כי אכן במקרה כזה תצטרך מאות - אלפי - עשרות אלפי שרתים מטורפים שיחזיקו את כל המידע, אני בניתי בצורה שזה מנתח את העמוד לפי מספר אלמנטים שעשיתי (במידה וזה מעניין אותך צור קשר אשלח לך את ה"שרטוט" של איך עובד הספיידר, מה הוא לוקח מכל עמוד וכו') ושומר רק את תוצאות העיבוד.

ושוב, כמובן שזה משפיע על החיפוש אבל לא השוואתי את זה לגוגל ושתיהיה מודע שרוב מנועי החיפוש הקטנים לא שומרים את כל דפי האינטרנט שהם מבקרים אלא רק את ה"עיבוד" שלהם - פשוט מאוד כי הם חסרי אמצעים או מנסים לחסוך.

עכשיו לשמור את הנתונים האלה - מגיע להרבה פחות.... אני בניתי בצורה שזה שומר את הנתונים בתוך קובץ TXT שמכיל את כל הפרטים וכמו שאני מאמין שאתה יודע, קובצי TXT מאוד קלי משקל.

ומה ששלחת ה"אתרים שמנסים להכשיל" - נכון זה לא מושלם אבל תאמין לי שעם הזמן אפשר לאט לאט לעבור כל מכשול ואם אתה לא מנסה להתחרות בגוגל, אתה תיהיה בסדר.

intercooler3819 13-09-09 13:37

תקרא קצת על HADOOPS וכמובן תבדוק מה עם AMAZON S3 ושאר השירותים עננים (לא שאני תומך בהם אבל זה יכול לחסוך) גם GOOGLE ENGINE כמובן
גם הייתי מציע לקרוא על ZEND SEARCH LUCENE ועל APACHE LUCENE
טוב אם כבר אז עד הסוף... תחפש קצת על NUTCH, SOLR, COMPASS, בעיקר נאצ'

אין לי כרגע זמן לכתוב אבל אני מבטיח לך שאם יש לך אנגלית בסיסית תצליח ללמוד הרבה עם כל הביטויים שציינתי כאן :)

אם יש בעיות אתה מוזמן לשאול

AlmogBaku 13-09-09 14:51

http://i-zm.info/data/article.phtml?c_id=10&id=364


כל הזמנים הם GMT +2. הזמן כעת הוא 00:11.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ