אפאצ'י ספארק
אפאצ'י ספארק היא שלד תוכנה קוד פתוח מעל מערכת מבוזרת שפותח במקור במעבדת AMPLab של אוניברסיטת קליפורניה בברקלי.
![]() | |
![]() | |
מפתח |
קרן התוכנה אפאצ'י ![]() |
---|---|
מחזור חיים | מאי 2014 – הווה (כ־10 שנים) |
גרסה אחרונה |
3.5.2 (6 באוגוסט 2024) ![]() |
מערכת הפעלה |
Microsoft Windows, לינוקס, macOS ![]() |
נכתבה בשפות |
Scala, R, SQL, פייתון, Java, Java Database Connectivity ![]() |
סוג רישיון |
אפאצ'י 2.0, רישיון BSD ![]() |
קוד מקור | |
spark.apache.org | |
![]() ![]() |
הקוד של ספארק נתרם מאוחר יותר למוסד התוכנה אפאצ'י אשר המשיך לתחזק אותו מאז. ספארק נותן ממשק לפתוח אשכולות מידע ממוקבל (data parallelism) שלמים עם מאפייני חסינות גבוהה לשגיאות בזמן ריצה (fault-tolerance).
כללי
עריכהספארק חושף ממשק (API) למפתחים המתבסס על מבנה נתונים הנקרא "resilient distributed dataset" או RDD, אשר מהווה סט נתונים מוכלל, לקריאה בלבד, של פריטים המפוזרים לרחבי אשכול של מכונות באופן שמספק עמידות בנפילות או שגיאות.
ספארק פותח לתת מענה למגבלות הקיימות בפרדיגמת האשכול של MapReduce אשר מכריח מעבר ליניארי של מידע. תוכנות MapReduce קוראות מידע מהדיסק, ממפות פונקציה הפועלת על המידע, מפחיתות את המפה (Map) של התוצאה ומאחסנות את תוצאות ההפחתה על הדיסק. RDD של ספארק פועל כסט מידע פעיל אשר באופן מכוון יוצר ביזור מידע בתצורה מוגבלת.
הזמינות של RDD משתמש באלגוריתמים איטרטיביים אשר דוגמים את המידע מספר פעמים בתוך לולאת ריצה ומבצעים אינטראקציה איתו וחקירה שלו.
הביצועים של ספארק בהשוואה להאדופ שהוא מימוש פופולרי של MapReduce, עשויים להיות טובים בכמה סדרי גודל.
בין האלגוריתמים האיטרטיביים נמצאים אלגוריתמי למידה חישובית אשר היוו את הגרעין שממנו נוצר ספארק.
ספארק דורש מערכת אחסון מבוזרת ויכול לעבוד עם מנהל אשכול (אך לא מחייב stand-alone mode). עבור ניהול האשכול, ספארק תומך ב Hadoop YARN או Apache Mesos. עבור מערכת אחסון מבוזרת ספארק תומך ב-Hadoop Distrubuted File System (או HDFS), וכן ב-MapR file System (או MapR-FS), אואפאצ'י קסנדרה, OpenStack Swift, אחסון Amazon S3, קודו (Apache Kudu) או אפילו בפתרונות מותאמים (Custom).
קישורים חיצוניים
עריכה- אתר האינטרנט הרשמי של אפאצ'י ספארק (באנגלית) (באנגלית)