לוגו אתר Fresh          
 
 
  אפשרות תפריט  ראשי     אפשרות תפריט  צ'אט     אפשרות תפריט  מבזקים     אפשרות תפריט  צור קשר     חץ שמאלה ‎print ‎"Hello World!"; if‎ ‎not rules.‎know ‎then rules.‎read(); חץ ימינה  

לך אחורה   לובי הפורומים > מחשבים > תכנות ובניית אתרים
שמור לעצמך קישור לדף זה באתרי שמירת קישורים חברתיים
תגובה
 
כלי אשכול חפש באשכול זה



  #1  
ישן 31-03-2011, 11:52
צלמית המשתמש של KingYes
  KingYes KingYes אינו מחובר  
 
חבר מתאריך: 12.10.03
הודעות: 757
טבלאות ענקיות וביצועים..

שלום לכולם, אני רוצה לשאול כמה דברים מעניינים בנושא ביצועים עם MySQL.

יש לי טבלה ששוקלת כ-200MB (נכון להיום), ותהליך היבוא שלי אליה, זה על ידי שאני מוסיף קובץ TEXT, ששמה יש לי שורות ושורות.. ואני רק צריך לעבור עליו ולבדוק איזה רשומה קיימת, ואם לא, אז להוסיף אותה.

בהתחלה, שהטבלה הייתה קטנה, התהליך רץ חלק בלי בעיות.
עכשיו שהטבלה ענקית, זה פשוט בלתי אפשרי לעשות את היבוא הזה.. זה לוקח כמה שעות..

איזה פתרונות הייתם ממליצים לי?
אגב, יש שדות בטבלה שהם כפולות, אבל רק הם לא באותה קבוצה (groupid שונה).. ככה שלהשתמש ב-IGNORE מבלי לבדוק, זה לא מתאים כאן.

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

תודה רבה !
_____________________________________
יקיר.
מילים לשירים חסידיים.


נערך לאחרונה ע"י KingYes בתאריך 31-03-2011 בשעה 12:04.
תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
  #6  
ישן 31-03-2011, 14:07
  שימיadmin שימי אינו מחובר  
מנהל פורומי "תכנות ובניית אתרים" ו"חומרה ורשתות"
 
חבר מתאריך: 25.10.01
הודעות: 42,775
בתגובה להודעה מספר 5 שנכתבה על ידי KingYes שמתחילה ב "אלו כל מיני מחרוזות שאני..."

למה זה נשמע כאילו אתה בונה רשימה של כתובות לשלוח אליהן ספאם?

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

אפשרות אחרת היא להכניס את כל החדשים יחד עם כל הישנים אל טבלה אחרת (שאין בה אינדקס עם הגבלות), ואז (להוסיף לה אינדקס ו?)לעשות עליה SELECT DISTINCT כדי לקחת רק עותק אחד מכל שדה שונה, ואת כל הפלט של זה, לדחוף לטבלה חדשה, שתדרוס את הטבלה המקורית. מן הסתם שפתרון זה מסובך יותר וגם תלוי באפיון המערכת שלך (כמו למשל, האם זה בסדר שבזמן מסויים הטבלה לא תהיה זמינה...)
_____________________________________
תמונה שהועלתה על ידי גולש באתר ולכן אין אנו יכולים לדעת מה היא מכילה
נמאס לכם לזכור סיסמאות? לחצו כאן!

תגובה ללא ציטוט תגובה עם ציטוט חזרה לפורום
תגובה

כלי אשכול חפש באשכול זה
חפש באשכול זה:

חיפוש מתקדם
מצבי תצוגה דרג אשכול זה
דרג אשכול זה:

מזער את תיבת המידע אפשרויות משלוח הודעות
אתה לא יכול לפתוח אשכולות חדשים
אתה לא יכול להגיב לאשכולות
אתה לא יכול לצרף קבצים
אתה לא יכול לערוך את ההודעות שלך

קוד vB פעיל
קוד [IMG] פעיל
קוד HTML כבוי
מעבר לפורום



כל הזמנים המוצגים בדף זה הם לפי איזור זמן GMT +2. השעה כעת היא 22:55

הדף נוצר ב 0.06 שניות עם 10 שאילתות

הפורום מבוסס על vBulletin, גירסא 3.0.6
כל הזכויות לתוכנת הפורומים שמורות © 2024 - 2000 לחברת Jelsoft Enterprises.
כל הזכויות שמורות ל Fresh.co.il ©

צור קשר | תקנון האתר