NoSQL

קטגוריית בסיסי נתונים שאינו ממודל במבנה טבלאי יחסי

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

היתרונות שבשימוש מסד נתונים כזה, הן, בין היתר פשטות של אפיון, סילומיות רוחבית (באנגלית: Horizontal Scalability או Scale Out) ובקרה מוגברת על זמינות. דוגמה למימוש NoSQL עם דרישה עיקרית לסילומיות וביצועים גבוהים היא מערכת האחסון BigTable מבית גוגל (כשכבה מעל מערכת הקבצים שפיתחה בעצמה בשם "Google File System").

מבנה המידע שונה ממערכות מסדי נתונים יחסיים, ולכן ישנן פעולות שמהירות יותר ב-NoSQL וישנן פעולות שמהירות יותר במסד נתונים יחסי. מסדי נתונים מסוג NoSQL הופכים נפוצים יותר במערכות Big Data וכן במערכות זמן אמת.

מערכות אלו נקראות לעיתים "Not Only SQL", כדי להדגיש שלחלקן תמיכה בשפת השאילתות SQL.

היסטוריה עריכה

קרלו סטרוצי השתמש במונח "NoSQL" ב-1998 כדי לכנות מסד נתונים יחסי פשוט ומהיר שפיתח בקוד פתוח, אשר לא חשף את ה-API הסטנדרטי, קרי SQL. סטרוצי הציע שמכיוון שהקטגוריה סוטה מהנורמה המקובלת של מסדי נתונים יחסיים, עליה להיקרא "NoRel" (קיצור של "No Relation" – "לא יחסי").

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

בדצמבר 2014, 5 שנים בלבד לאחר מכן, כבר היו מעל 150 מסדי נתונים כאלה בשוק, ועל פי מדד DB-Engines חמישה מהם היו ברשימת 20 המובילים בעולם.[1]

קטגוריות של NoSQL עריכה

Document Databases עריכה

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

דוגמה: MongoDB

Graph Stores עריכה

משמש לשמירת מידע הקשור לרשתות וקשרים חברתיים, מפות כבישים, טופולוגיית רשת ועוד.

דוגמה: Neo4J, HyperGraphDB

Key-Value Stores עריכה

משמש למסד נתונים פשוט ומהיר, התומך בצמדי מפתח-ערך בלבד. חלק מבסיסי Key-Value Stores מאפשרים להגדיר סוג (TYPE) לערכים (כגון Integer, String).

דוגמה: Redis, ‏Riak, ‏Voldemort

Wide-Column Stores עריכה

מסד נתונים מבוססי עמודות (במקום שורות), בו משמשים בעיקר לשאילתות על מערכי מידע גדולים במיוחד.

דוגמה: Cassandra, ‏HBase

ראו גם עריכה

קישורים חיצוניים עריכה

  מדיה וקבצים בנושא NoSQL בוויקישיתוף

הערות שוליים עריכה

  1. ^ החמישה הם: MongoDB ‏, Cassandra ‏, Redis ‏, HBase ו-‏Memcached
  ערך זה הוא קצרמר בנושא מחשבים. אתם מוזמנים לתרום לוויקיפדיה ולהרחיב אותו.