none
בסיס נתונים מחזורי או ארכיב RRS feed

  • שאלה

  • שלום לכולם,

    אני עובד על sql express 2008 r2 מאחר ובסיס הנתונים מוגבל עד ל 10 גיגה ברצוני לבצע בסיס נתונים אשר יהיה לא יהיה מוגבל בגודל.

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

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

    האם מישהו יודע כיצד אני מבצע זאת?

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

    תודה,

    עידו

    יום שני 27 דצמבר 2010 08:07

תשובות

  • הי עידו,

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

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

    גישה מ- DB ספציפי לDB אחד דרך שאילתא תראה כך:

    Select

    column_list from db_name1.schema_name.table_name

    Union

     

    Select

    column_list from db_name2.schema_name.table_name

    ועכשיו לבעיות:

    1. מבחינת ביצועים הפתרון לא יעיל. עדיף שהאפליקציה תתחבר ל- DB אחד תבצע שאילתא ואם התוצאות לא מתקבלות אז שתתחבר ל- DB השני ותריץ את אותה שאילתא, וכן הלאה. קצת מסורבל אבל יותר יעיל.

    2. שים לב למגבלות של האקספרס גם לגבי cpu ו- memory.

    לגבי תהליך ה- archive:

    מה שאליך לעשות:

    1. לייצר template של בסיס הנתונים שלך.

    2. לבנות מסד נתונים, ישמש כראשי, על בסיס ה template.

    3. ברגע שהוא מגיע ל- 80 אחוז אתה מייצר DB חדש ע"ב ה- Template.

    4. עושה rename לראשי, להיות משני.

    5. rename לחדש להיות ראשי.

    6. בדיקה בסיסית שהכל עובד.

    הבניה של בסיס הנתונים ע"י פקודות backup\restore פשוטות.

      בהצלחה 

     

     


    אסף שלם
    • סומן כתשובה על-ידי Idoamrani יום שני 27 דצמבר 2010 09:00
    יום שני 27 דצמבר 2010 08:31

כל התגובות

  • הי עידו,

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

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

    גישה מ- DB ספציפי לDB אחד דרך שאילתא תראה כך:

    Select

    column_list from db_name1.schema_name.table_name

    Union

     

    Select

    column_list from db_name2.schema_name.table_name

    ועכשיו לבעיות:

    1. מבחינת ביצועים הפתרון לא יעיל. עדיף שהאפליקציה תתחבר ל- DB אחד תבצע שאילתא ואם התוצאות לא מתקבלות אז שתתחבר ל- DB השני ותריץ את אותה שאילתא, וכן הלאה. קצת מסורבל אבל יותר יעיל.

    2. שים לב למגבלות של האקספרס גם לגבי cpu ו- memory.

    לגבי תהליך ה- archive:

    מה שאליך לעשות:

    1. לייצר template של בסיס הנתונים שלך.

    2. לבנות מסד נתונים, ישמש כראשי, על בסיס ה template.

    3. ברגע שהוא מגיע ל- 80 אחוז אתה מייצר DB חדש ע"ב ה- Template.

    4. עושה rename לראשי, להיות משני.

    5. rename לחדש להיות ראשי.

    6. בדיקה בסיסית שהכל עובד.

    הבניה של בסיס הנתונים ע"י פקודות backup\restore פשוטות.

      בהצלחה 

     

     


    אסף שלם
    • סומן כתשובה על-ידי Idoamrani יום שני 27 דצמבר 2010 09:00
    יום שני 27 דצמבר 2010 08:31
  • היי אסף, תודה רבה ששששוווווב!!!

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

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

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

    אני חושב שקיבלתי החלטה ואלך על בסיס נתונים ארכיב ולא מחזורי.

    תודה רבה התשובה שלך חיזקה אותי.

    יום שני 27 דצמבר 2010 09:00
  • הי עידו,

    בהצלחה, לדעתי החלטתך נכונה.

    יום טוב,


    אסף שלם
    יום שני 27 דצמבר 2010 09:20