DCSIMG
DBArt

DBArt

NHibernate wonders

מתכנתי WEB אוהבים מאוד כלי ORM - אין ספק שפיתוח בעזרתם נעשה הרבה יותר פשוט. גם ל-Microsoft יש כלי של Object-Relational Mapping - אני מתכוון ל-LINQ. יש בשוק עוד כלים - אחד הוותיקים שביניהם הוא NHiberbate. אני לא נכנס פה לדיון מעמיק בנושא האם ORM טוב ליהודים (דעתי האישית היא שלא - כלי ORM עדיין לא מספיק בשלים ולפעמים הגדרה הכי עדינה של מה שהם עושים מול בסיס נתונים - שטויות). למזלי (במרכאות) צוות WEB בארגון שאני נמצא בו רוב הזמן משתמש ב-NHibernate והיום יצא לי להיתקל בעוד פנינה אחת (מיני רבות) של הכלי.

נגיד ויש שתי ישויות והקשר ביניהם רבים לרבים. למשל עובדים ופרוייקטים כאשר כל פרוייקט מכיל מספר עובדים וכל עובד יכול להשתתף ביותר מפרוייקט אחד. קיים פרוייקט שכבר משתתפים בו 9 עובדים ואני רוצה להוסיף את העובד העשירי. מה הייתי עושה ב-TSQL? ברור, הייתי מוסיף שורה לטבלת קשר בין פרוייקטים לעובדים. מה עושה NHibernate? קודם כל מוחק את כל העובדים בפרוייקט מטבלת קשר ולאחר מכן מבצע עשר פעולות INSERT - לפי כמות העובדים. ואיך גיליתי? שמתי לב שמשום מה בתגובה לפעולת הוספת עובד לפרוייקט קופץ בין היתר טריגר על DELETE. בנוסף לעומס מיותר לגמרי על שרת ה-DB ומערכת IO שלו ולנעילות אפשריות יש פה עוד עניין חשוב - בזמן בין פעולות DELETE ו-INSERT פרוייקט נמצא במצב לא קונסיסטנטי כאילו אין בו אף עובד - מצב שלא היה בפועל. אז תזהרו - לא כל כלי שמקל על פיתוח שכבות מעל מסד נתונים באמת יודע לעבוד עם מסד נתונים בצורה יעילה.

Posted: Feb 16 2009, 03:46 PM by DBArt | with 6 comment(s)
תגים:,

Post-elections

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

Monitoring SQL Server using Extended Events

ביום שני אחרון העברתי הרצאה בנושא במפגש usergroup. זהו feature חדש של SQL Server 2008 אך משום מה כמעט ואין עליו חומר - לא בבלוגים ולא במקומות אחרים (מה שיש ב-BOL ממש לא מספק). בעצם מצאתי רק בלוגר אחד שכתב מספר פוסטים ואפילו העביר sessions בנושא - זהו Bob Beauchemin מחברת SQLSkills. איציק בן-גן העלה את המצגת שלי וה-demo scripts לרשת - כאן. מי שמתעניין בנושא או סתם רוצה "לשחק" עם ה-feature החדש, מוזמן. אני גם אשמח לקבל feedback ו/או רעיונות וסקריפטים מעניינים לשימוש ב-extended events.

הרצאה שלי במפגש usergroup ביום שני

ביום שני הקרוב אני מעביר session בקבוצת משתמשים של SQL SERVER בנושא “Database monitoring using Extended Events”. המפגש יתקיים כרגיל במשרדי Microsoft ברעננה החל מ-17:30. אשמח לראות את כולכם.

שלום לכם

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

אציג את עצמי. שמי מיכאל זילברשטיין, אני בן 32, נשוי ואב לילדה. DBA SQL Server עם ניסיון של יותר מ- 8 שנים. האמת היא שבמקור כלל לא התכוונתי לעסוק במקצוע הזה. למדתי כלכלה ומנהל עסקים בבר-אילן ואחרי שירות צבאי יצאתי לשוק העבודה בשנת 2000. לא, לא ככלכלן. לאחר חיפוש עבודה ארוך ולא ממש מוצלח במקצוע, חבר טוב שכנע אותי לנסות את עצמי בתחום שאינו מתקשר כלל ועיקר לנושאי הלימוד שלי: ניהול בסיסי נתונים. וכמו שאומרים, השאר היסטוריה.

בתחילת 2007 הקמתי את חברת DBArt, המתמחה בייעוץ בכל הנושאים הקשורים ל- SQL Server, כגון ארכיטקטורה, design, שיפור ביצועים, ניטור וכו'. נתקלתם בבעיה שקשורה ל- SQL Server, למשל בעיית ביצועים מורכבת? אתם מוזמנים לפנות אלי.

בבלוג זה תפגשו בעיקר תהיות, ניתוחים וסוגיות מקצועיות הקשורות ל- SQL Server, אך גם פוסטים בנושאים הקשורים לתחומי העניין הנוספים שלי – טיולים, שחמט, ספרים וכו'.