Skip to main content

על ארכיטקטורה ב SQL Azure


הידעתם? ( ככה מספרים לנו) הידעתם כי מאחורי בסיס הנתונים שלנו עומדים 3 בסיסי נתונים מרופלקים מבסיס הנתונים שלנו? המטרה לבטח את ההבטחה של מיקרוסופט ל 99.9% של נגישות וזמינות (availability – נשמע יותר יפה באנגלית הא?) לבסיס הנתונים שלנו (גם פה יש המון המון חומר ברשת והרחבות טכניות וכלליות – אני מביא רק תקציר של התקציר כדי לתת ידע בסיסי – מי שרוצה יותר פרטים יכול לפנות אליי או לקרוא לבד...)
רפליקציה אחת נקראת primary והאחרות נקראות secondary, איך זה עובד? ה קריאות והכתיבות מרופלקים לבסיס הראשי ובצורה א-סינכרונית אז זה עובר ל 2 האחרים המשניים, במידה ורפליקציה אחת נופלת – מייד מתרוממת אחת חליפית הנקראית - 'reconfiguration' .
היכן שוכנות רפליקציות אלו? הן שוכנות בסרברים פיזיים (לא וירטואליים) אחרים, למה זה ככה? נאמר ייפול השרת שבו יושב בסיס הנתונים המרופלק הקרוי primary, מיד יש 2 אחרים בשרתים חיים אחרים (לדעתם הסבירות שייפלו 3 זו סבירות נמוכה מאד).
בארכיטקטורה כזו מתי נחשב מידע כ committed ב SQL Azure שלנו בבסיס הנתונים שלנו? הארכיטקטורה שלהם קבעה כי מידע נחשב כ committed רק אחרי שרופלק (ה transaction log דיווח כי המידע נכתב לדיסק) ל primary ולפחות לאחד ה secondary.
כשיש נפילה ב ב SQL Server רגיל ה DBA אחראי להרמה ואחראי גם במשך היום יום לוודא שזה עובד, פה הם אחראים לזה וטענתם היא כי זו הארכיטקטורה עצמה. ואין צורך לדאוג לניהול פיסי של בסיס הנתונים.
מה קורה כאשר primary נופל?
מה קורה כאשר
secondary נופל?...   מיד מוצא לו בסיס נתונים חליפי לרפליקציה.

Comments

Popular posts from this blog

ועוד קצת על ניהול פיתוח לענן

היום עקב תקלה קטנה מול מיקרוסופט בוצע disable לחשבון. הדבר גרם לאתר לא לעבוד וכמובן 3 רולים נוטרלו. כשחזרו לחיים נדרשנו לעשות מחדש deploy ל 3 הרולים. (רוצים הסבר קטן לעבודה על הענן? ובכן תמצית הדבר הוא שכשאנו עוקפים נהלים שאנו יצרנו בשרתים שלנו מיקרוסופט - לא מרשים לעקוף וכך הכל חייב להתנהל לפי הספר... מה שתעלה לענן זה מה שירוץ ואם תשנה - השינויים יימחקו...) הבעיה החלה כאשר הסתבר שלא כל קבצי ה deploy נשמרו על מכונת הגירסה וכי אחד הקבצים שודרג לגירסא חדשה שטרם עלתה לענן.... הדבר גזל 4 שעות בנסיון להחזיר את הגירסה... מסקנתי היא כי חייב להיות נוהל שמירת קבצי deploy מיד אחרי העלתם לענן - ובכך לשמור גיבוי לעת צרה - נכון - אל תצעקו עליי - בוצע לייבל ב TFS - ואפשר למשוך ולקמפל - אבל תראו לי עובד אחד שעשה את זה תוך חמש דקות....? יש לציין לטובה את ה SQL Azure - שלו - לא קרה כלום כל העת... כל הכבוד ל SQL... ובנימה יותצר רצינית - אל תשכחו לגבות כל מה שעולה ... - במיוחד אצלך . אגב בענן עצמו - זה כבר יגובה אל דאגה... ערב טוב

על בעיות של ניהול פיתוח לענן

על ניהול סביבת פיתוח מול הענן:   הבעיה המרכזית בניהול פיתוח לענן שייכת לתחום הבדיקות  - שום ענן מקומי ושם אימולטור אינו מדמה במאה אחוזים את מה שקורה בענן עצמו. בכל רכיבי הבדיקות, על בעיה זו ניתן להתגבר בשיטת עבודה טובה והקמת מערכת בדיקות בענן עצמו. על ניהול גרסאות מול הענן:    במידה ואתם עובדים מול לקוחות רגילים ומול לקוחות הרוצים מוצרים בענן  - מהי הדרך הטובה ביותר לנהל את הפיתוח כך שאפשר יהיה לתחזק את שתי המערכות ואת שתי סביבות הבדיקות? אפשר לומר כי מטרת מנהל הפיתוח היא להקים סביבת פיתוח אחת - אם הדבר לא אפשרי צריך למצוא את הפתרון לסינכרון 2 הסביבות. Check List -   למנהל המבולבל - מה הצוות צריך לבצע לפני העלאה לענן: על הפרוייקט להיות מקומפל בסביבת VS2010 - רצוי 64 Bits ולא 32. יש להריץ בענן מקומי (אימולטור) ולראות שהכול עובד כהלכה במידה ואתה משתמש ב Registery או ב Event Log עליך ליצור קובץ StartUp command שבעצם ירוץ בעליית ה Role וייצור את מה שצריך במחשב המיועד לך בענן. יש ליצור חבילה להעלאה - רצוי לשמור חבילה זו עם מספר ותיאור כללי. יש להעלות ...

Azure SQL DB tiers comparison

Hi All In the last few month Brent Ozar gae us 2 masterpiece blogs related to Azure SQL DB:   How fast can a $21,468/mo Azure SQL DB load data?     In this blog Brent compared the abilities of Azure SQL DBs to load Data - he compared all combinations of vCors tiers. (When I asked him about comparing the Standard\Premium tiers, he told me to do it.... :-) )   There’s a bottleneck in Azure SQL DB storage throughput.   In this blog Brent showed us that in the vCors world the storage throughput has limit and there is not need to pay so much money when you need to upload lots of data.   So I took have taken up his challenge and done a comparison in Azure SQL DB in Standard\Premium tiers. I have created a new DB with 1 Table. I have generated 7 GB of DATA, and created the file in my local on premise drive (Yes, do not kill me, I did not had the time to put it on azure), and uploaded it via BCP command.   bcp "TableNam...