דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. עבודה נכונה מול מסד נתונים ללקוחות נפרדים

עבודה נכונה מול מסד נתונים ללקוחות נפרדים

מתוזמן נעוץ נעול הועבר תכנות
21 פוסטים 9 כותבים 823 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • dovidD מחובר
    dovidD מחובר
    dovid ניהול
    השיב לavi rz ב נערך לאחרונה על ידי dovid
    #11

    @avi-rz כתב בעבודה נכונה מול מסד נתונים ללקוחות נפרדים:

    באמת כל אפליקציה שנותנת שירות אפי' בנסיון חינם, מייצרת מסד חדש ללקוח,
    בעצם גוגל על כל תיבת מייל פותחת מסד נתונים, או trello ושאר ירקות גם?

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

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

    מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

    בכל נושא אפשר ליצור קשר dovid@tchumim.com

    yossizY תגובה 1 תגובה אחרונה
    1
    • yossizY מנותק
      yossizY מנותק
      yossiz
      השיב לdovid ב נערך לאחרונה על ידי yossiz
      #12

      לגבי שכבת הגנה נוספת:
      עוד אפשרות זה להשתמש בהרשאות פר שורה של פוסטגרס (RLS) וליצור משתמש ברמת ה-DB עבור כל לקוח

      📧 יוסי@מייל.קום | 🌎 בלוג | ☕ קפה

      תגובה 1 תגובה אחרונה
      2
      • chagoldC מנותק
        chagoldC מנותק
        chagold
        כתב ב נערך לאחרונה על ידי
        #13

        במסד מרובה לקוחות גם מספר השורות קופץ. האם יש מספר שורות שעדיף לא להגיע אליו כדי לאפשר פעילות תקינה?

        תגובה 1 תגובה אחרונה
        0
        • dovidD מחובר
          dovidD מחובר
          dovid ניהול
          כתב ב נערך לאחרונה על ידי
          #14

          @chagold לא, אכן בניגוד לNOSQL בSQL צריך התאמה בין חוזק השרת למספר השורות שיש בטבלה, כשהמספר עולה משמעותית צריך שרת יותר חזק.

          מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

          בכל נושא אפשר ליצור קשר dovid@tchumim.com

          I תגובה 1 תגובה אחרונה
          1
          • I מנותק
            I מנותק
            ivrtikshoret
            השיב לdovid ב נערך לאחרונה על ידי
            #15

            @dovid למה ב NOSQL המצב שונה?

            תגובה 1 תגובה אחרונה
            0
            • A מחובר
              A מחובר
              avi rz
              כתב ב נערך לאחרונה על ידי avi rz
              #16

              תמיד הייתה לי מחשבה, בתור אחד שמשתמש ב SQL והID הוא מספר רץ, כשלקוח מכניס תורמים/לקוחות שלו, הID שלו יקפוץ לפי המספור של כלל המשתמשים.
              אכן, לא זוכר אם בtrello או ב monday.com כשאני מייצר טבלה חדשה ואחריה עוד טבלה יהיה הבדל בין הid שלהם של X מספרים לאומת ההבדל אם פותחים יום אח"כ או יותר, שהוא הרבה יותר = לענ"ד שהם משתמשים בטבלה אחת, וid רץ לפי הטבלאות של כלל המשתמשים.
              אממה לגבי טבלה, שלא אמור לעניין אותך הID זה לא כ"כ מפריע, אבל ברשימת תורמים/לקוחות שאתה רוצה להציג לו את הID זה צורם - אולי באמת אפשר לעשות לבד עוד מספור לפי הרשומות של המשתמש, ובכל פעולה שהמשתמש עושה על תורם/לקוח שלו, צריך לחפש אותו בתורמים/לקוחות בייחד עם הID של המשתמש בעצמו - איך זה נשמע הגיוני ככה לעבוד בכל טבלה, לא קצת מוזר?

              תגובה 1 תגובה אחרונה
              0
              • A מחובר
                A מחובר
                avi rz
                השיב לavi rz ב נערך לאחרונה על ידי
                #17

                @avi-rz כתב בעבודה נכונה מול מסד נתונים ללקוחות נפרדים:

                באמת כל אפליקציה שנותנת שירות אפי' בנסיון חינם, מייצרת מסד חדש ללקוח,
                בעצם גוגל על כל תיבת מייל פותחת מסד נתונים, או trello

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

                אבייא תגובה 1 תגובה אחרונה
                0
                • אבייא מנותק
                  אבייא מנותק
                  אביי
                  השיב לavi rz ב נערך לאחרונה על ידי אביי
                  #18

                  @avi-rz כתב בעבודה נכונה מול מסד נתונים ללקוחות נפרדים:

                  באמת כל אפליקציה שנותנת שירות אפי' בנסיון חינם, מייצרת מסד חדש ללקוח,
                  בעצם גוגל על כל תיבת מייל פותחת מסד נתונים, או trello ושאר ירקות גם?

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

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

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

                  לגבי השידרוגים ושינויים בdb, התרגלתי שלא להריץ שאילתה ידנית, אלא יש לי פונקציה שבה אני מוסיף את השינויים, וככה זה מוגדר בקלות לכל הdb.

                  ניתן ליצור עימי קשר 8140hp+t@gmail.com | קטלוג מוצרים
                  הלינקיה שלי https://abaye.co/link.html

                  תגובה 1 תגובה אחרונה
                  2
                  • אבייא מנותק
                    אבייא מנותק
                    אביי
                    השיב לavi rz ב נערך לאחרונה על ידי
                    #19

                    @avi-rz כתב בעבודה נכונה מול מסד נתונים ללקוחות נפרדים:

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

                    תלוי בנתונים ובאופי שלהם..

                    יש לי תוכנה שעובדת עם נתונים של רחובות וערים וכדו', ורציתי שזה יהיה משותף לכלל המשתמשים, אז הפרדתי את הנתונים הללו מהdb הרגיל, ויצרתי db משותף לדברים הללו..

                    אבל אתה צודק שאם צריך אינטראקציה בין הנתונים הללו לנתונים של המשתמש אז זה עשוי להיות חגיגה, כנראה שבדיוק בשביל זה אומרים שצריך לתכנן את הdb מראש 🙂

                    ניתן ליצור עימי קשר 8140hp+t@gmail.com | קטלוג מוצרים
                    הלינקיה שלי https://abaye.co/link.html

                    תגובה 1 תגובה אחרונה
                    1
                    • clickoneC מנותק
                      clickoneC מנותק
                      clickone
                      השיב לdovid ב נערך לאחרונה על ידי clickone
                      #20

                      @dovid כתב בעבודה נכונה מול מסד נתונים ללקוחות נפרדים:

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

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

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

                      בשאלה הספציפית הזו, בגלל שמלכתחילה הקוד נכתב עבור לקוח בודד הייתי בוחר בDB נפרד כי א"א לדעת איפה בקוד מתחבאות הפתעות שלא חשבנו עליהם.... (כמו שכתבו @yossiz ועוד... )

                      אין טסט כמו פרודקשן.

                      המייל שלי urivpn@gmail.com

                      תגובה 1 תגובה אחרונה
                      5
                      • מוטי מןמ מנותק
                        מוטי מןמ מנותק
                        מוטי מן
                        כתב ב נערך לאחרונה על ידי
                        #21

                        תודה לכל העונים.

                        מסיכום של הדברים, החלטתי להפריד כל משתמש לdb נפרד

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

                        תגובה 1 תגובה אחרונה
                        5

                        • 1
                        • 2
                        בא תתחבר לדף היומי!
                        • התחברות

                        • אין לך חשבון עדיין? הרשמה

                        • התחברו או הירשמו כדי לחפש.
                        • פוסט ראשון
                          פוסט אחרון
                        0
                        • דף הבית
                        • קטגוריות
                        • פוסטים אחרונים
                        • משתמשים
                        • חיפוש
                        • חוקי הפורום