שימוש ב-NVME SSD RAID לעריכת וידאו מקצועי

במשך שנים רבות צלמי וידאו עובדים בשיטות שונות על מנת לצלם וידאו, לערוך, לקודד ולשחרר אותו. בדרך כלל הוידאו יוקלט ישירות לכרטיס SD, או XQD או כרטיס אחר, לאחר מכן הכרטיס יועבר אחר כבוד למחשב נייד/נייח והתוכן יועתק בעזרת קורא כרטיסים אל הדיסק הקשיח במחשב או אל דיסק קשיח/SSD חיצוני המחובר למחשב. משם תבוצע עריכה, קידוד והעברת החומר המוכן ליעדו.

בחלק מהמקרים, אצל עורכים יותר מקצועיים, קיים מכשיר DAS המחובר דרך SFF-8087 או דרך Thunderbolt למחשב. המכשיר מכיל מספר דיסקים מכניים והעריכה נעשית ישירות מול אותו מכשיר בסטודיו של העורך. היתרון בשיטה זו – אין צורך בערימת SSD חיצוניים פר צילום/פרויקט, מספיק אחד כדי להעביר את הוידאו מהשטח (אם צלם חיצוני או חברת צילום חיצונית מצלמת והעורך הוא מישהו אחר שיושב במקום אחר) אל מכשיר ה-DAS.

הבעיה הגדולה כיום היא שקבצי וידאו הולכים וגדלים גם במצלמות סמי מקצועיות. מצלמות כמו GH5 או Sony A7 R4 ומצלמות מקצועיות כמו Canon C300, או RED או ARRI למיניהן – מקליטות וידאו באיכות יותר ויותר גבוהה וכל שניה של וידאו תופסת יותר ויותר שטח, ואנחנו מדברים רק על וידאו, לא אודיו, לא Assets, לא אפקטים ושום דבר אחר, כך שמגיע מצב שגם SSD חיצוני טוב מתחיל להיות איטי – והמצב לא הולך להשתפר (נכון, קיים קידוד H.265 HEVC, אבל לא מומלץ להקליט איתו וידאו כי קידוד כזה יותר מתאים ל-Delivery מאשר לעריכה). הבעיה מתגלית בחומרתה לא רק בזמן ה"טיול" ב-Timeline, אלא במיוחד בקידוד הוידאו – ה-Encoder יסיים את הקידוד אך יקח עוד דקות ארוכות עד שהתהליך יסתיים מכיוון שצריך להעתיק את הנתונים מהמחשב המקומי ל-DAS (כן, גם אם בחרת לקודד ישירות ל-DAS, המחשב קודם מבצע את הפעילות בדיסק המקומי).

אחד הפתרונות הטובים הקיימים לבעיה כזו הוא שימוש ב-RAID NVME. זהו כרטיס ריק שלתוכו אנחנו מכניסים מקלות SSD NVME בחיבור M.2. עד 4 כרטיסים כאשר כל כרטיס מגיע עד גודל 2 טרהבייט. את הכרטיס נגדיר כ-RAID-0.

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

היתרון בשיטה זו הוא עצום. לא חשוב איזה חיבור יש לך לאחסון חיצוני גדול (סטורג', DAS) – ה-RAID המדובר נותן ביצועי מהירות של עד 15 ג'יגהבייט לשניה. סתם לשם השווה: אם יש לך DAS של 4 דיסקים, תקבל אולי מהירות של 800 מגהבייט לשניה, כך שההבדל התיאורתי במהירות הוא כמעט פי 20.

ה-RAID שאני מתאר יכול להיות עד גודל 8 טרהבייט, אבל כל מי שקנה פעם SSD NVME M.2 יוכל לאמר לכם שמחירי המקלות לא זולים. התשובה לכך פשוטה: לא חייבים ישר לרוץ ולרכוש את המקלות של 2 טרהבייט פר מקל. אפשר לדוגמא להתחיל עם מקלות SSD של סמסונג מסידרה 970 Evo Plus בגודל חצי טרהבייט. כל מקל כזה עולה 600 שקלים ב-KSP/IVORY, והכרטיס לעיל עולה 250 שקלים כולל משלוח מאמזון. ההרכבה וההגדרות די פשוטות, אולם צריך מחשב נייח די עדכני ודי חזק עם לפחות 2 כניסות PCIe 3 X16 ותמיכה ב-BIOS ב-PCI bifurcation. אם המחשב הנייח שלך הוא בן שנתיים-שלוש ויש לו 6-8 ליבות, סביר להניח שתוכל להטמיע פתרון כזה. אני מקווה בשבועות הקרובים להעלות וידאו כיצד להגדיר זאת.

פתרון זה, כמו שציינתי, הוא למחשב נייח/תחנת עבודה. מה עם מחשבים ניידים? לצערי חיבור Thunderbolt 3 לא מספק מספיק רוחב פס לעשות את הטריק הזה. (ה-RAID הזה משתמש בכל רוחב הפס של PCIe 3.0 X16).

משהו חשוב: ה-RAID הזה לא מחליף אחסון מקומי למערכת הפעלה (אלא אם יש לכם מחשב נייח עם מעבדי Skylake X או מעבדי Threadripper), כך שאם יש לכם מעבד 6-8 ליבות מהדור השביעי ומעלה, עדיין תצטרכו את הדיסק הקשיח המקומי או SSD המקומי שיש לכם במחשב על מנת לעבוד עם מערכת ההפעלה והאפליקציות.

לסיכום: השיטה שהצגתי קצת לא קונבציונאלית, אבל היא יכולה לעזור רבות כשיש תוכן רב שנמדד בטרה בייטים של מידע לפרויקט אחד. השיטה לא מאיצה את מהירות הקידוד, אך היא בהחלט מאיצה את זמן הגישה לקבצים ולנקודות זמן השונות בוידאו/אודיו/תכנים אחרים. אפשר להתחיל בקטן ולגדול בהמשך, ולא צריך תוכנות מיוחדות בשביל להקים זאת.

ה-LAB הבא פרק 4 – בניית Storage חלק שני

בפוסט הקודם דיברתי על בניית Storage ל-LAB שלכם, ודיברתי יותר על תוכנה (OS וכו') מאשר חומרה. הפעם אשלים את הפערים לגבי חומרה.

טכנית, הפתרון הכי פשוט ל-LAB קטן זה לקחת שרת 1U, למלא אותו בדיסקים, להקים בשרת VM, ולייעד חלק מה-Datastore שיהיה שרת iSCSI/NFS/CIFS וכו'. זה לא יתן את הביצועים הכי טובים (בכל זאת, אתם לא יכולים למפות את הכרטיס RAID ל-VM כי המערכת משתמשת בו, אלא אם תפרידו פורטים של SAS מהכרטיס RAID הפנימי לטובת כרטיס RAID אחר) – אבל כשהתקציב מצומצם וצריך משהו פה ועכשיו – זה יכול להיות פתרון.

אבל יש עוד פתרונות.

אחד הפתרונות הפופולריים הוא קניה של JBOD (כלומר Just a Bunch Of Disks, יש גם הסברים אחרים ל-JBOD). בעקרון JBOD הוא דבר די "טיפש" שאינו מכיל מחשב X86 בתוכו אלא בקר יעודי שכל תפקידו הוא להתחבר לחיבורי המיני SAS ב-Backplane (חיבור עם כבל SFF 8087) ולהוציא אותם החוצה, כך שאם יש לך לדוגמא ב-JBOD כ-3 שורות של 4 דיסקים לדוגמא, תצטרך לחבר 3 כבלי SFF-8088 (בתמונה מימין) בין ה-JBOD לבין המכונה שתריץ ה-OS שיתן שרותי קבצים.

ישנם קופסאות עם JBOD עם כרטיסים יותר חכמים שמוציאים את כל תעבורת הדיסקים שלכם על SFF-8088 יחיד ויש עוד כניסה שמאפשרת שרשור מתמשך של קופסאות JBOD (כך ניתן לשרשר עד 1024 דיסקים SATA או SAS), כך שבסופו של דבר, שרת 1U שמריץ פתרון וירטואליזציה, כרטיס RAID עם כניסות חיצוניות שממופה ל-VM – ותוכלו להרים יופי של פתרון שרת קבצים.

ויש כמובן את הפתרון שהרבה יעדיפו – לרכוש מארז 2U גנרי לשרת כמו Chenbro, iStarUSA, NorcoTek ואחרים, להכניס שם לוח אם דסקטופ עם מעבד פשוט וכמות זכרון צנועה וכרטיס רשת, לדחוף דיסקים ולבנות שרת קבצים כמכונה יעודית או לרכוש פשוט שרת 2U יעודי יד שניה. החסרון ברכישת שרת יעודי יד שניה זה שאתה עלול למצוא את עצמך עם ביצועים מופחתים ב-50%, הואיל ושרתים רבים הם ישנים ועדיין עובדים עם SATA 2, כלומר מחצית מהמהירות של SATA-3. במקרים כאלו אם מחליטים לרכוש שרת כזה, קנו כרטיס RAID יעודי וחברו אותו ל-Backplane במקום כרטיס ה-RAID שנמצא בשרת, רק תוודאו שהוא תומך ב-SATA-3.

לסיכום: ה-LAB שלך יכול לתת ביצועים טובים או גרועים – תלוי בפתרון Storage שתבחר להקים/לרכוש. אם בחרת לדוגמא להכניס דיסקים מכניים 2.5 אינטש של לאפטופים (כי מצאת בזול) – יהיה מצב שה-VM יעלו לאט וכל פעולה שדורשת שימוש בדיסקים תהיה איטית בגלל שמהירות הדיסקים הזו היא איטית יחסית (5400 סיבובים לדקה מול 7200 בדיסק טוב). לעומת זאת, אם תבחר דיסקים קשיחים במהירות 7200 RPM ותוסיף דיסק או 2 SSD שישמשו כ-Cache, הביצועים שלך יהיו (יחסית) טובים. נכון, זה רק LAB ביתי, אבל חוק מרפי אומר שלפעמים כשאתה בדיוק צריך לבדוק משהו ועכשיו – ביצועים טובים מאוד יעזרו לך.

אז איזה כרטיס RAID לרכוש?

בפוסט הקודם דיברתי על כרטיס MegaRaid של LSI מבוסס מעבד 9220/9240 שגם נקרא M1015 של IBM, ויש לו שמות נוספים לפי החברה המשווקת (אינטל, HP, DELL, LENOVO ואחרים משווקים אותו בשמות שונים). אני ממליץ אותו לאלו שמעוניינים להרים שרת עם מערכת ZFS, מכיוון שהכרטיס הזה מצד אחד נותן חיבור אמין ויציב בין הדיסקים למערכת, ומצד שני הוא לא "מתערב" ממש בהעברת נתונים, והמקסימום מבחינת RAID שהוא יכול לעשות זה RAID-1/10. הוא יכול לבצע גם RAID-5/6 אבל אז כל העבודה נופלת על המעבד במחשב, בדיוק כמו RAID תוכנה. ב-ZFS זה יתרון, במערכות מבוססות RAID תוכנה אחרות – זה לא ממש יתרון.

ZFS זה טוב, אבל יש מצבים שאי אפשר (או לא מעוניינים) להשתמש ב-ZFS. אם לדוגמא אתם רוצים להשתמש בשרת Windows כשרת קבצים, או מערכות File System אחרות כמו EXT4 או XFS. במערכות הקבצים הללו מאוד מומלץ שיהיה כרטיס RAID אמיתי שידע לא רק לבצע את ה-RAID (שוב – החל ב-RAID 1/10 וכלה ב-5/50/60), אלא גם ידע לדווח לכם על שגיאות בדיסקים במקרה של תקלה.

אז איזה כרטיס אני ממליץ? תסתכלו בתמונה – ניחשתם נכון, אני עדיין ממליץ על הכרטיסים המבוססים LSI. הם הכי נפוצים בשוק עם התמיכה הכי רחבה שיש, תהיה מערכת ההפעלה שתהיה – הכרטיס נתמך עם כל הפונקציות שלו.

אבל איזה דגם לרכוש? פה זה כבר תלוי בכם. הנה מספר דוגמאות:

  • אם כל הדיסקים יושבים בתוך השרת (או "שרת") – אז כרטיס שמסתיים ב-8i (ה-i זה internal וה-e זה external) עם מעבד 9260 יכול לתת לכם את כל פונקציות ה-RAID בחומרה (צ'יפ 9240 עושה RAID 1/10 בחומרה, אבל שאר מצבי ה-RAID נעשים על המעבד שלכם, לא על הצ'יפ של הכרטיס) ואפשר לחבר אליה עד 8 דיסקים SAS או SATA. אם יש לכם רק 2-3 דיסקים ואתם לא מתכוננים להתרחב, אתם יכולים לרכוש את גירסה 4i שאפשר לחבר עד 4 דיסקים. ההבדל במחירים בין 4i ל-8i זניח ולכן אני ממליץ ללכת על 9260 8i.
  • אם לעומת זאת אתם חושבים להכניס קופסת JBOD חיצונית שבתוכה ישבו הדיסקים ואת הקופסא אתם רוצים לחבר לשרת – אז חפשו כרטיסים 9260 עם אחת האופציות כמו 8e או 4e, הבעיה בד"כ בחיפוש כרטיסים כאלו שקל למצוא – אבל הם יקרים, כמה אלפי שקלים לכרטיסים חדשים. במקום זה הייתי ממליץ לכם לתחמן קצת ולקנות מתאם כמו זה בתמונה מימין – זה עולה בערך 100 שקל (כאן לדוגמא) כך שאתם מחברים את הכרטיסון הזה אל הכרטיס בקר שלכם מבפנים עם כבל SFF 8087 (רכשו כבל קצר של SFF 8087 מ-2 הצדדים) וכבל SFF 8088 בין הכרטיסון לקופסת JBOD. עם החיבור הזה אתם יכולים גם לשרשר בין מספר קופסאות JBOD לשרת.
  • סוללה – הפסקות חשמל קורות ורוב מערכות ה-RAID לא ממש יודעות לעמוד טוב בהפסקת חשמל (אם ה-UPS לא עבד לדוגמא). עם ZFS יש לו פתרון משלו, אבל במקרה של מערכות קבצים אחרות – סוללת גיבוי על כרטיס הבקר תעזור לסנכרן את המידע ברגע שהחשמל יחזור.
  • זכרון נדיף (FLASH) או זכרון RAM כתוסף לכרטיס על מנת להאיץ ביצועים – ותרו. בפוסט הבא נדבר על פתרון הרבה יותר רציני לגבי האצה.

אם אתם קונים שרת יד שניה (אני מדבר על שרת פיזי ולא PC שעשה "גיור" להיות שרת), סביר להניח שיש לכם כבר כרטיס RAID בתוכו. בדקו מה הפונקציות שקיימות והאם יש צורך ברכישת כרטיס RAID חלופי. ספקים רבים עושים טריקים (כמו עם הכרטיסים הנ"ל) על מנת לאלץ אתכם לרכוש "כרטיס אחות" על מנת לקבל פונקציה מסויימת והכרטיסי "אחות" האלו לא ממש זולים.

חשוב לזכור: ישנם כרטיסים רבים שמאפשרים חיבורים של SAS או SATA אולם כרטיסים אלו אינם כרטיסי RAID, הם מאופיינים בכך שהם זולים מאוד (בערך 200-400 שקל). אם אתם רוצים לחסוך ויש לכם JBOD חיצוני – קנו כרטיס 8i, את המתאם בתמונה למעלה מימין וחברו בין כל הציודים. זהו פתרון שמתאים לבית או לעסק קטן. אם מדובר בחברה רצינית, אז תפסו שיחה צפופה עם אחד הסמנכל"ים הטכניים ורכשו כרטיס RAID רציני מבוסס 9280 עם פורטים פנימיים וחיצוניים.

בפוסט הבא נדבר על דיסקים ואיך לקבל ביצועים גבוהים גם עם דיסקים SATA פשוטים.

Exit mobile version