תוכן עניינים:
הגדרה - מה המשמעות של NoSQL?
NoSQL היא מחלקה של מערכות ניהול מסדי נתונים (DBMS) שאינן עומדות בכל הכללים של DBMS יחסי ואינן יכולות להשתמש ב- SQL מסורתי לצורך שאילתת נתונים. המונח מטעה במקצת כאשר הוא מתפרש כ- "SQL ללא SQL", ורובם מתרגמים אותו כ- "לא רק SQL", מאחר שסוג זה של מסד נתונים אינו בדרך כלל תחליף אלא תוספת משלימה ל RDBMS ו- SQL.
מערכות מבוססות NoSQL משמשות בדרך כלל בבסיסי נתונים גדולים מאוד, אשר מועדים במיוחד לבעיות ביצועים הנגרמות על ידי המגבלות של SQL והמודל היחסי של מסדי נתונים. רבים חושבים על NoSQL כמסד הנתונים המודרני לפי בחירתו המדרג את דרישות הרשת. כמה יישומים בולטים של NoSQL הם מסד הנתונים של Cassandra בפייסבוק, BigTable של גוגל ו- SimpleDB ו- Dynamo של אמזון.
Techopedia מסביר את NoSQL
בסיס נתונים של NoSQL לא בהכרח פועל על פי הכללים הנוקשים השולטים בעסקאות בבסיסי נתונים יחסיים. כללים שהופרו ידועים בשם ראשי תיבות ACID (אטומיות, עקביות, יושרה, עמידות). לדוגמה, מסדי נתונים של NoSQL אינם משתמשים במבני סכמות קבועים ומצטרפות SQL.
ב- RDBMS מסורתי, הפעולות הבסיסיות נקראות וכותבות. ניתן לקדם את הקריאות על ידי שכפול נתונים למספר מכונות, ובכך לאזן בין בקשות קריאה. עם זאת, הדבר משפיע על הכתיבה מכיוון שיש לשמור על עקביות הנתונים. ניתן לכתוב בקנה מידה של כתבים על ידי חלוקת הנתונים. זה משפיע על הקריאות, שכן בדרך כלל איטי וקשה ליישום. בנוסף, לשמירה על מאפייני ACID, מסדי נתונים חייבים לנעול נתונים. משמעות הדבר היא שכאשר משתמש אחד פותח פריט נתונים, אף משתמש אחר לא אמור להיות מסוגל לבצע שינויים באותו פריט. למגבלה זו השלכות חמורות על הביצועים.
מגבלות אלה לא היו בעיה מרכזית בעבר. עם זאת, עם הופעת הרשתות החברתיות והנתונים הגדולים, מספר מאגרי מידע מאסיביים שהופיעו נאלצו לשרת את עשרות, או אפילו מאות, של מיליוני לקוחות ברחבי העולם עם כמה אלפי קריאות וכותבים בכל דקה. מסדי RDBMS מסורתיים פשוט לא עונים על צורך זה מכיוון שהם יכולים "רק להגדיל", או להגדיל את המשאבים בשרת מרכזי. לעומת זאת, יישום NoSQL יכול "להרחיב" או להפיץ את עומס בסיס הנתונים על פני שרתים רבים יותר.
מסדי נתונים של NoSQL מתמקדים בקטגוריות מסוימות של בעיות - החל בגמישות רבה יותר ביחס לנתונים מאוחסנים (חנויות מסמכים), למיקוד למקרי שימוש, כמו מערכות יחסים (מאגרי נתונים גרפיים) וצבירת נתונים (מסדי נתונים של עמודות) או סתם פישוט הרעיון של מסד נתונים למטה משהו ששומר ערך (חנויות מפתח / ערך).
מסדי נתונים של NoSQL מציעים את היתרונות של מדרגיות מהירה, ביצועים טובים בהרבה ומבנה פשוט יותר בהשוואה ל- RDBMS. עם זאת, הם גם סובלים מהיותם טכנולוגיה חדשה יחסית ולא מוכחת, והם אינם יכולים לספק דיווח ופונקציונליות אנליטית של RDBMS.
