ACID

מתוך ויקיפדיה, האנציקלופדיה החופשית

בהנדסת תוכנה, ובפרט בתחומי מסדי הנתונים וניהול התנועות, המונח ACID הוא ראשי תיבות של ‏Atomicity‏, ‏Consistency‏, ‏Isolation‏, ו-‏Durability‏. תרגום המונחים לעברית הוא אַטוֹמִיוּת, עִקְבִיּוּת, בִּידוּד ועֲמִידוּת. תכונות אלה הן אבן הפינה של מסדי נתונים ומערכות לניהול תנועות, ובלעדיהן לא ניתן להבטיח את שלמות הנתונים במערכות אלה. בפועל, תכונות ה-ACID נאכפות במידה רופפת יותר כדי לשפר את ביצועי המערכת.

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

פירוט מונחי ה-ACID הוא כדלקמן:

  • Atomicity‏ (אטומיות) - כל התנועה על כל מרכיביה השונות מתבצעת כיחידה אחת או שלא מתבצעת כלל.
  • Consistency‏ (עקביות) - בכל זמן נתונים הנתונים צריכים להיות עקביים (למשל בדוגמת העברת כספים בין שני חשבונות: סכום הכספים של בשני החשבונות צריך להיות זהה לפני ואחרי העברה)
  • Isolation‏ (בידוד) - התנועה צריכה להיות מופרדת בזמן גישה אליה מתנועות אחרות (למשל אי אפשר לגשת לבצע עדכון בחשבון הבנק במסגרת טרנזקציה כאשר טרנזקציה אחרת מופעלת על חשבון זה באותו רגע)
  • Durability‏ (עמידות) - אם התנועה הסתיימה בהצלחה אזי השינוי שנגרם חייב להתקיים במערכת גם אם היא נופלת מייד אחרי ביצוע התנועה (או שהמצב יחזור לקדמותו במידה והתנועה נכשלה בביצוע)

קישורים חיצוניים[עריכת קוד מקור | עריכה]

Crystal kpackage.png ערך זה הוא קצרמר בנושא תוכנה. אתם מוזמנים לתרום לוויקיפדיה ולהרחיב אותו.