ממי לביא העלה בפוסט המצויין שפירסם את הטעות שביצירת סכמת בסיס נתונים "גנרית" על בסיס נתונים רלציוני בעל יכולות ACID. כפי שאני רואה את זה הנושא שממי העלה הוא חלק ממרחב הבעייה הכללי העוסק בשימוש בכלי הנכון למטרה הנכונה. בהקשר של Data bases, או במונח הכללי יותר של data stores, אכן עולה צורך בבסיס נתונים גנרי עבור מערכות. הצורך עצמו לגיטימי בסוגי מערכות רבות ולכן רצוי למצוא עבורו את הפתרון הנכון ביותר. כפי שממי הסביר בצורה נכונה sql server או אף Oracle Database אינם בהכרח מתאימים לסוג כזה של אכסון ואחזור מידע. אחד הפתרונות הקיימים לצורך זה הינו בקבוצה גדולה של data stores המאוגדים כולם תחת שם נושא כללי של NoSQL. למרות שבתחילה חלק אנשים שונים בתעשייה התייחסו אל הנושא כשלילת המודל הרלציוני בחיפוש אחר מודל חדש "טוב יותר" היום ברור לרוב העוסקים בתחום שמדובר למעשה ב"לא רק SQL". אז מהו בעצם העולם הזה של NoSQL?ראשית חשוב לציין שמדובר בתחום עצום, פעיל וגועש בו פעילים מספר רב של פרויקטים שמשתנים ומתעדכנים במהירות. לא ניתן לכסות בפוסט קצר את הרקע התיאורטי/אקדמי ואת הניסיון המעשי הרב שנצבר בשנים האחרונות בעולם בשימוש במוצרים אלו. בראשית היו לנו אתרי אינטרנט עם פעילות הולכת וגואה שדרשו עוד ועוד שרתי Database מאחוריהם כדי לעמוד בעומס (כמו שרובנו חווינו, בסיס הנתונים הוא צוואר בקבוק קלאסי). חשבו רבים וטובים שניתן בעצם להוציא לcache את המידע ולחסוך חלק ניכר מהעומס מבסיס הנתונים וכך התפתחה ארכיטקטורה מבוססת in memory distributed cache + reverse proxies for data המשתמשת רבים מהאתרים הגדולים בכל אחת מהטכנולוגיות הקיימות בשוק. עם הזמן אנשים התחילו לתהות למה בעצם אנחנו ממשיכים להחזיק מאחורה בסיס נתונים רלציוני חזק ומתוחכם כאשר אנחנו לא באמת צריכים את היכולות שלו עבור חלקים ניכרים מהאפליקציה. תחושה זו היוותה בעצם את הקרקע הפורייה לרעיונות חדשניים ו"חתרניים" שהתפתחו לכדי עולם שלם של פתרונות המאוגדים תחת השם NoSQL.
Read more: בלוג היועצים של מיקרוסופט ישראל
0 comments:
Post a Comment