![]() |
יעילות מסדי נתונים, SQL | MYSQL | ACCESS
שאלה -
אני עובד על אפליקציה גדולה ורצינית בימים אלו, והיא מבצעת תיעוד לכל פעולה. התיעוד כולל שמירה של שורה עם נתונים של ID, מחרוזת בת 170 תווים, TIMESTAMP, שני שדות INT, עם 10 תווים כל אחד, וTINYINT בודד של ספרה אחת. המערכת מבצעת בערך 200,000 - 1,000,000 שורות בחודש. איזו שיטת אחסון דחוסה יותר, אמינה יותר, זולה יותר וכדאית יותר לאחסון הנתונים הנ"ל? חשוב לומר שאצטרך לאפשר גישה לנתונים אלו ע"פ דרישה. בתודה מראש, אור. |
בשביל מה אתה צריך את התיעוד הזה ?
אתה גוזר ממנו נתונים אחר כך ? אתה יכול לשמור עותק לוקאלי ברמה חודשית \ שבועית וכד' ולרוקן את הטבלה |
ציטוט:
המקס' שאני יכול לרוקן זה עד 3 חודשים אחורה. אבל עדיין מדובר בעד 3מליון רשומות במסד. |
אתה מתכוון שהשליפה לדעתך תהיה כבדה מדי בעבור השרת? אם כן, אתה יכול לנסות לחלק את זה לכמה טבלאות עם PREFIX שונה, למשל - כל השורות בעלות ה-ID מ-1 ועד 10000 יהיו בטבלה first_table, כל השורות בעלות ה-ID מ-10001 ועד 20000 יהיו בטבלה second_table ואז בהתאמה, לשלוף לפי ה-ID שקיבלת: אם קיבלת מספר מ-1 עד 10000 תשלוף מהטבלה השניה וכו' וכו'. זה כמובן דורש עבודה מעצבנת בכל מיני מקומות של התאמת השאילתות..
|
סולטן, אין שום סיבה לעשות דבר כזה.
אור, הDB מתוכנן לעבוד מול טבלאות גדולות, גם כאלה וגם יותר. אני ממליץ לך לכתוב את הטבלה בצורה נכונה (indexים מתאימים וdata type נכון לכל דבר). אין שום סיבה שזה לא יעבוד טוב. |
ציטוט:
אין לי בעיה לפתח את מערכת התיעוד הזו בASP או PHP. |
מה הכוונה תופס פחות נפח. זה לא משנה אם תפתח בASP או בPHP, זה הכל מול מסד נתונים חיצוני הרי.
לגבי ההשוואה בין Access לMySQL אתה לא יכול לדעת בלי להריץ. תפתח מסד עם טבלה כמו שלך ותכניס מלא נתונים ותראה מה קורה. מה שכן, לדעתי MySQL אמור לתפקד יותר טוב מול מסד גדול. אם אתה רוצה בASP אז עדיף SQL Server. |
ציטוט:
|
ציטוט:
|
ORDER BY RAND() זו פקודה ממש ממש לא חכמה. אבל זו בכלל לא הבקשה פה.
|
ציטוט:
אתרים שאני בונה מאוחסנים על linux עם גישה למסד נתונים של mssql. זה עובד מצויין. אם לא הכי טוב שיכול להיות. |
ציטוט:
|
זה לא עולה המון ממש, פשוט צריך 2 אחסונים אחד של win ואחד של linux שמחוברים ביחד בכרטיסי רשת או 2 אחסונים בשרת יעודי אחד(vps), לתת גישה למסד נתונים בווינדוס שהלינוקס יכולה לגשת אליה.
אני הייתי קונה אחסון לינוקס רגיל, ורוכש vps שמותקן עליו ווינדוס ומתקין mssql 2005, שהם בעצם מאותה חברה מאותו ארון, ומגשר ביניהם. אני לא יודע אם השיטה לוקחת פחות מקום, מה שכן הוא אמין יותר ולוקח פחות משאבים. |
ציטוט:
במיוחד כשאין לי בעיה להסתדר עם MYSQL. אני עובד עם שרת SQL לתוכנת הנה"ח שלנו, ואני לא מת עליו. |
mysql יעשה את העבודה הזו בלי בעיה.
בהנחה שלא אמורות להיות הרבה גישות למידע הזה או עריכות אלא בעיקר הכנסות של מידע אני ממליץ על המנוע MyISAM ואם אתה רוצה לשפר את יעילות ההכנסה של השורות, אתה יכול להכניס כל יום את השורות לטבלה זמנית קטנה או לשמור אותם בקובץ טקסט ולטעון אותם עם http://dev.mysql.com/doc/refman/5.1/en/load-data.html בזמנים שהשרת לא עמוס. |
ציטוט:
|
ציטוט:
לגבי השוואה ל SQL SERVER , אני לא מכיר את SQL SERVER אבל אני יכול להגיד ש MYSQL יכול להתמודד עם מיליונים של שורות ללא שום בעיות (כמובן שהכל בתנאי שאתם יודעים להגדיר את השרת) לגבי מי שהציע לעשות VPS עם ווינדוס , מצטער אבל זה רעיון ממש מפגר אתה מבזבז את המשאבים של השרת , אתה מבזבז הרבה יותר כסף ויש פה הרבה יותר מקום לבעיות ותקלות בדרך. |
ציטוט:
אולי לא דרך vps, אפשר שרת יעודי של ווינדוס, זה לא משנה, העיקר הדרך לעשות את זה. הדרך לאחסן דברים במסד נתונים בצורה הזאת, יעילה וטובה אפילו יותר מ-mysql. לדוגמא נקח שרתי משחק, רוב שרתי המשחק משתמשים במסד נתונים של mssql, ולמה זה? כי שרת משחק MMORPG צריך לשמור מלא נתונים במסד נתונים(מיליונים אפילו מילארדים), וזה יעיל מאוד, אפילו משתמשים ב-postgre sql. ואחוז ממש נמוך משתמש ב-my sql. השיטה לאחסן אתר בלינוקס עם מסד נתונים בשרת ווינדוס ולגשר ביניהם זה פחות מעמיס יעיל יותר קל לביצוע למי שמבין. ואמרתה הרבה יותר מקום לבעיות ותקלות בדרך? ניסיתה את זה? הצחלתה לעשות את זה?|: |
ציטוט:
אם יש לך כסף לקנות 2 שרתים , תשים שרת ייעודי ל MYSQL ושרת ייעודי לחלק של התוכנה ואני באופן אישית פיתחתי מערכת שקיבלה בממוצע כמיליון שורות ביום.... ולא היה לי שום בעיה היה שרת לאפליקציות , שרת לנתונים , ושרת לדוחות מה שאתה בא להגיד זה MYSQL זה חרא , MSSQL הרבה יותר טוב וההוכחה היא ששרתי משחק משתמשים בזה תעשה טובה , אם אין לך הוכחות שייגבו את הדברים שאתה אומר אל תגיד סתם... MYSQL יודע להתמודד עם כל עומס ולפצל את הMYSQL על מספר שרתים גם אם צריך ולתמוך בעוד הרבה דברים.... זה לא סתם המסד נתונים שהכי פופלארי (לפחות באינטרנט) |
בוא נניח ש-MSSQL יותר טוב מ-MYSQL(שזה הנחה קצת עקומה),
משיקולי עלות תועלת, עדיין משתלם לעבוד עם MYSQL. |
טוב אם כבר פתחתם את הדיון הזה למה יותר מה פחות.....
עזבו אותכם רק אורקל על REDHAT. |
אורקל עולה המון כסף
אם אתה לא ממש ממש גדול אין טעם להכנס אליו :) |
ציטוט:
אורקל + REDHAT הכי טוב, כשמישהו אחר משלם :-) בכל מקרה MYSQL שובר את MSSQL בביצועים. ויצא לי להתעסק עם מסד בנפח 60GB על MSSQL , זה לא נחמד בכלל. |
האמת שיש לי מסד עם כמה מאות אלפים רשומות (פחות מ 500 אלף) על MYSQL והמסד עצמו לא שוקל הרבה גג 150 מגהבייט.. בכל זאת ה MYSQL קורס ולא מצליח לעמוד בדרישה (עיקר הפעילות היא על שליפת מידע SELECT).
אז אני באמת לא יודע איפה הדיבור פה על מליונים על גבי מליונים של רשומות.. |
ציטוט:
אם קורס לך מסד של 150 מגה יש 4 אפשרויות 1. שרת חלש מאוד ( פנטיום 3 ? ) 2. לא מספיק זכרון? ( 512MB ?) 3. מערכת הפעלה לא מוגדרת כמו שצריך. 4. התכנות שלך לא טוב במערכת.... תבחר ... |
אני כרגע מתמודד עם 12 מיליון רשומות בטבלה עם 24 עמודות שרובם לא INT והשליפה מאוד זריזה.. כמובן שיש אינדקסים וחלק מהעמודות מאפשרות FULLTEXT SEARCH
|
ציטוט:
|
למרות שכבר אמרו, אני אחזק.
אם אתה רוצה פתרון זול ואמין - MySQL יבצע את העבודה מעולה. יש לי טבלאות עם מאות אלפי רשומות עם 10-12 עמודות "מכל הסוגים" - אם כל השאילתאות שלך בנויות נכון, אין שום בעיה - בדקתי זאת בעצמי. 2 דברים שכדאי לך לשים לב אליהם: השאילתאות - תבדוק ותוודא שזאת הדרך הכי יעילה לבצע אותם, שהטבלה מבחינת אינדקסים והכל בנויה בצורה הכי טובה - וכמובן, גם השליפות. זמנים - אף אחד לא יוכל לתת לך הערכה מדוייקת שתתאים בדיוק למצב שלך ולשאילתאות שאתה תרצה לבצע. תבנה את הטבלה על שרת בדיקה, תזרים אליה נתונים רנדומאליים ותבדוק ותוודא - זאת הדרך הטובה ביותר. |
ציטוט:
השרת צריך להיות מוגדר לטובת ה SQL בכל הרמות , מהקרנל ועד לדיסקים. האפליקציה אומנם היא התקנה בפני עצמה, אבל חשוב לשים אותה בסביבה שתדע להכיל אותה בצורה אופטימלית. אני עובד כרגע על פרוייקט בנושא של אופטמיזציה למסדי נתונים , ככה שיצא לי לשבור שרתים שלמים על מסדי נתונים... (אני אעדכן שזה יהיה במצב פרודקשן ) |
כל הזמנים הם GMT +2. הזמן כעת הוא 00:27. |
מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ