מה זה מיינפריים?
מיינפריים (Mainframe) הוא מחשב גדול וחזק המשמש בעיקר ארגונים גדולים ליישומים קריטיים, עיבוד נתונים בתפזורת,
כגון מפקד אוכלוסין, סטטיסטיקות, תעשייה, תכנון משאבים ארגוניים ועיבוד עסקאות.
מכונות אלו ידועות ברמת האמינות, הזמינות והאבטחה הגבוהה שלהן (RAS), כוח עיבוד נרחב ויכולת לטפל בכמויות אדירות
של נתונים ועיבוד עסקאות בנפח גבוה.
מיינפריים נבדלים מצורות אחרות של מערכות מחשוב כמו מחשבים אישיים או שרתים קטנים על ידי רמות גבוהות משמעותית
של תפוקת נתונים, היכולת לתמוך במספר מערכות הפעלה, ומאפשרות את הפעולה בו זמנית של יישומים ותהליכים רבים.
למרות העלייה של מחשוב ענן ומערכות מבוזרות, המיינפריים נותרו חלק בלתי נפרד מפעילותם של תאגידים גדולים, בעיקר בענפי הבנקאות,
הבריאות, הביטוח והקמעונאות, בין היתר, בשל יכולתם לעבד ביעילות עסקאות ולנהל מסדי נתונים גדולים.
הארכיטקטורה והטכנולוגיה שלהם התפתחו עם השנים, מהמערכות המוקדמות המבוססות על צינורות ואקום של שנות ה-50 ועד
ל-z/Architecture המודרנית שבה השתמש IBM, אחת מיצרניות המיינפריים המובילות.
המיינפריים של היום מסוגלים להריץ מערכות הפעלה מודרניות לצד מערכות הפעלה מסורתיות, והם תומכים ביישומים וסוגי נתונים עכשוויים,
משתלבים עם שירותי אינטרנט ומשאבים מבוססי ענן, ובכך נשארים נכס קריטי בתשתית ה-IT של ימינו.
סוגי מיינפריים
מחשבי מיינפריים (Mainframe) התפתחו בצורה משמעותית במהלך השנים, וסוגים שונים פותחו כדי לענות על הצרכים
הספציפיים של תעשיות ויישומים שונים.
הסיווג של מיינפריים יכול להתבסס על הארכיטקטורה שלהם, היצרנים או העידן שבו הם פותחו.
להלן כמה מהסוגים העיקריים של מערכות מיינפריים:
System/360 – System/370 של IBM
הוצגו על ידי IBM בשנות ה-60 וה-70, בהתאמה, אלה היו בין המשפחות הראשונות של מיינפריים שהשתמשו
בארכיטקטורה משותפת לכל הדגמים.
זה מאפשר תאימות תוכנה על פני דגמים שונים, וחוללה מהפכה באופן שבו עסקים השתמשו במחשבים.
System z של IBM
העדכנית ביותר בסדרת מחשבי המיינפריים של IBM, ה-System z mainframes, נועדו לזמינות גבוהה, מדרגיות ואבטחה.
הם מתאימים לעיבוד כמויות עצומות של עסקאות, כמו אלו הנדרשות על ידי בנקים גדולים ומוסדות פיננסיים.
zSeries, zEnterprise
מיינפריים של IBM, כאשר ה-zSeries הוצגה בתחילת שנות ה-2000 וה-zEnterprise בשנת 2010.
כל סדרה הביאה שיפורים בכוח העיבוד, יעילות האנרגיה ויכולות הווירטואליזציה.
UNIVAC
UNIVAC או Universal Automatic Computer היא אחת ממערכות המיינפריים המוקדמות ביותר שפותחה
על ידי רמינגטון ראנד בשנות ה-50.
זה היה המחשב המסחרי הראשון שיוצר בארצות הברית ושימש למגוון יישומים, כולל עיבוד נתוני מפקד.
Burroughs Large Systems
לפני המיזוג עם Sperry להקמת Unisys, חברת Burroughs ייצרה מערכות מיינפריים גדולות, הידועות בארכיטקטורת
המחסנית שלהן ומשמשות בעיקר בבנקאות, בהזמנות של חברות תעופה ומערכות ביטוח לאומי.
מיינפריים של היטאצ’י
Hitachi מייצרת מערכות מיינפריים התואמות ל-IBM z/Architecture באמצעות שותפות.
מערכות אלו נועדו לענות על הצרכים של סביבות ארגוניות בקנה מידה גדול הדורשות רמות גבוהות של עיבוד נתונים וזמן פעולה.
AS/400 IBM iSeries, System i
אמנם לא מיינפריים במובן המסורתי, ה-AS/400 וממשיכיו (iSeries, System i) משרתים שווקים דומים עם דגש על מערכות משולבות
הכוללות חומרה ותוכנה כאחד.
מערכות אלו ידועות באמינותן ובנוחות השימוש שלהן בעסקים קטנים עד בינוניים.
BS2000 של Fujitsu
המיינפריים BS2000 של Fujitsu מיועד ליישומי עסקים ותוכנה הדורשים רמות גבוהות של תפוקת נתונים ושילוב מערכות.
הוא פופולרי במיוחד באירופה ובחלקים של אסיה.
שפות תכנות מיינפריים
שפות תכנות מיינפריים הן כלים מיוחדים המשמשים לפיתוח תוכנה עבור מחשבי מיינפריים.
שפות אלו התפתחו לצד מיינפריים, המשקפות את הצורך בעיבוד יעיל, אמינות ויכולת לטפל בכמויות גדולות של עסקאות.
להלן סקירה כללית של כמה משפות התכנות העיקריות המשמשות בסביבות מיינפריים:
COBOL (שפה מכוונת עסקית נפוצה)
COBOL היא אחת משפות התכנות הוותיקות ביותר בשימוש נרחב במחשוב מיינפריים, במיוחד עבור מערכות עסקיות, פיננסים ובנקאיות.
קובול ידועה בתחביר המילולי שלה, אשר תוכנן כך שיהיה קריא ומובן על ידי מי שאינם מתכנתים.
PL/I
PL/I היא שפה רב-תכליתית המשלבת תכונות משפות תכנות מדעיות (FORTRAN) ועסקיות (COBOL).
היא פותחה על ידי IBM ומשמשת למגוון יישומי מיינפריים.
Assembler
Assembler (או שפת assembly) למיינפריים היא שפת תכנות לאו לבל המספקת שליטה ישירה על החומרה.
היא משמשת לתכנות מערכות קריטיות בהן הביצועים והיעילות הם בעלי חשיבות עליונה.
REXX (מפעל מורחב מחודש)
REXX היא שפת סקריפטים המיועדת לקלות למידה וקריאה.
היא משמש לאוטומציה של משימות בסביבת המיינפריים וניתן למצוא אותה ב-IBM ובמערכות מיינפריים אחרות.
C ו-C++
למרות שלא תוכננו במקור עבור מיינפריים, C ו-C++ משמשות ביישומי מיינפריים מסוימים עבור תכנות מערכת ויישומים הדורשים ביצועים גבוהים.
השימוש בהן נפוץ יותר בפיתוחים חדשים יותר שבהם שפות מיינפריים מסורתיות עשויות להיות לא כל כך יעילות או גמישות.
Java
Java הפכה לפופולרית יותר ויותר בסביבות מיינפריים בשל עצמאות הפלטפורמה שלה, תכונות מונחה עצמים ותמיכה נרחבת בספרייה.
מרכזיות כמו z/OS של יבמ תומכות ב-Java, מה שמאפשר ליישומים מודרניים לפעול לצד מערכות מדור קודם.
HLASM
HLASM היא שפת ה-assembler היי לבל של IBM עבור מערכות ההפעלה z/OS ו-z/VM שלה.
היא מספקת את השליטה בלאו לבל הקשורה לשפת assembly אך עם תכונות שהופכות את התכנות לקל ופרודוקטיבי יותר.
JCL
JCL אינה שפת תכנות במובן המסורתי, אך היא חיונית להפעלת עבודות אצווה במיינפריים של IBM.
היא מפרטת כיצד להפעיל תוכניות, כולל המשאבים הדרושים, ומטפלת בזרימת העבודה.
SQL
SQL משמשת בסביבות מיינפריים כדי ליצור אינטראקציה עם מסדי נתונים יחסיים, כגון DB2, הפועל על מיינפריים של IBM.
SQL חיונית עבור מניפולציה של נתונים ושאילתות.
CICS (מערכת בקרת מידע על לקוחות)
CICS הוא שרת טרנזקציות הפועל בעיקר על מערכות מיינפריים של IBM.
למרות שאינה שפת תכנות, היא מספקת API לעיבוד עסקאות שניתן לגשת אליו באמצעות COBOL, PL/I ו-Java,
בין היתר, לפיתוח יישומים אינטראקטיביים.
מודרניזציית מערכות מיינפריים
מודרניזציה של מיינפריים כרוכה בעדכון או החלפה של מערכות מיינפריים מדור קודם בטכנולוגיות וגישות חדשות יותר לשיפור הזריזות,
היעילות והשילוב עם סביבות IT מודרניות.
תהליך זה חיוני עבור ארגונים המסתמכים על מיינפריים לפעולות קריטיות אך צריכים להסתגל לנוף הדיגיטלי המתפתח במהירות.
אסטרטגיות מודרניזציה יכולות להשתנות בהתאם למטרות הארגון, המשאבים והיישומים הספציפיים המעורבים.
להלן גישות ושיקולים מרכזיים במודרניזציה של מיינפריים:
אירוח מחדש (lift and shift)
אחסון מחדש, הידוע גם בשם “הרמה והסטה” (rehosting \ lift and shift), כולל העברת יישומים מהמיינפריים לסביבה חדשה
(כגון הענן או מערכת מקומית מודרנית יותר) ללא שינויים משמעותיים בקוד.
גישה זו יכולה להפחית עלויות ולשפר את הגמישות תוך שמירה על ההשקעה ביישומים קיימים.
ארגון מחדש (Refactoring)
ארגון מחדש כרוך בביצוע שיפורים בקוד האפליקציה מבלי לשנות את ההתנהגות החיצונית שלו.
בהקשר של מיינפריים, זה עשוי להיות אופטימיזציה של הקוד כך שיפעל בצורה יעילה יותר על המיינפריים
או הכנת האפליקציה למעבר לפלטפורמה חדשה.
פיתוח פלטפורמה חדשה
פיתוח פלטפורמה חדשה כוללת העברת יישומים לפלטפורמת זמן ריצה חדשה, אשר עשויה לדרוש שינויים מסוימים בקוד אך לא שכתוב מלא.
זה יכול לכלול מעבר ממסד נתונים מיינפריים למערכת ניהול מסד נתונים יחסי (RDBMS) הפועלת על פלטפורמה אחרת.
ארכיטקטורה חדשה
ארכיטקטורה חדשה כרוכה בשינויים משמעותיים בארכיטקטורת האפליקציה כדי לנצל את מלוא היתרונות של טכנולוגיות ענן מודרניות.
זה עשוי להיות כרוך בפירוק יישום מונוליטי למיקרו-שירותים או אימוץ ארכיטקטורות נטולת שרת.
החלפת מערכות
החלפה כרוכה בהחלפת יישום המיינפריים הישן בפתרון תוכנה חדש לחלוטין שיכול לספק פונקציונליות דומה או משופרת.
זה יכול להיות מוצר מדף מסחרי (COTS) או אפליקציה שפותחה בהתאמה אישית.
השבתה
ייתכן שחלק מהיישומים מדור קודם כבר לא יהיו נחוצים או שהם יכולים להיות מאוחדים עם מערכות אחרות.
במקרים כאלה השבתת האפליקציה היא אסטרטגיית מודרניזציה בת קיימא.
אינטגרציה
שילוב יישומי מיינפריים עם תשתית ויישומי IT מודרניים הוא היבט קריטי במודרניזציה.
זה כרוך בפיתוח ממשקי API או שימוש בתוכנת ביניים כדי לאפשר תקשורת בין מערכות מיינפריים ליישומים חדשים או שירותי ענן.
אתגרים בתהליכי מודרניזציה של מערכות מיינפריים
תאימות ויכולת פעולה הדדית: הבטחה שמערכות מודרניות יכולות לתקשר ולפעול עם שאר המערכות מדור קודם וסטאק טכנולוגיות חדשות יותר.
העברת נתונים: העברה בטוחה של נתונים ממסדי נתונים מדור קודם למסדי נתונים מודרניים, תוך התחשבות בשינויי פורמט ושלמות הנתונים.
מערכי מיומנויות: גישור על הפער בין מיומנויות מיינפריים מסורתיות לבין שיטות פיתוח מודרניות, כולל מחשוב ענן, DevOps ומתודולוגיות אג’ייליות.
אבטחה ותאימות: שמירה או שיפור אמצעי אבטחה ועמידה בתקנות במהלך ואחרי תהליך המודרניזציה.
מודרניזציה של מיינפריים אינה תהליך שמתאים לכולם, והגישה הטובה ביותר תלויה בצרכים ובאילוצים הספציפיים של הארגון.
מודרניזציה של מערכות מיינפריים דורשת תכנון קפדני וניהול שוטף כדי להבטיח שהמערכות המודרניות יכולות לתמוך ביעדי הארגון תוך מזעור הפרעות בפעילות.

