DDS

המחשה - יכולת פעולה הדדית של שירות הפצת נתונים של OMG

DDS (ראשי תיבות באנגלית של: Data Distribution Service, תרגום: שירות הפצת הנתונים) הוא תקן מכונה-למכונה של קבוצת ניהול אובייקטים (OMG) (המכונה תווכה או "תשתית קישוריות") שמטרתו לאפשר העברת נתונים עם יכולות אמינות, ביצועים גבוהים, תפעוליות בינית, זמן אמת, סילומיות באמצעות דפוס פאב-סאב (publish-subscribe) .

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

ארכיטקטורה

[עריכת קוד מקור | עריכה]

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

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

מודל הפרסום-הרשמה של DDS ממזער למעשה תכנות רשת מורכבות עבור יישומים מבוזרים.

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

  • לקבוע מי צריך לקבל את ההודעות
  • היכן נמצאים הנמענים
  • מה קורה אם לא ניתן להעביר הודעות

יכולת תקשורת הדדית (Interoperability)

[עריכת קוד מקור | עריכה]

הן יישומי תוכנה קנייניים והן בקוד פתוח של DDS זמינים. אלה כוללים ממשקי תכנות יישומים (API) וספריות של יישומים ב־Ada, C, C++, C#, Java, Python, Scala, Lua, Pharo, Ruby ו־Rust .

ספקי DDS השתתפו בהדגמות של יכולת פעולה הדדית בפגישות הטכניות של OMG Spring מ-2009 עד 2013.[1][2][3][4][5][6]

הערות שוליים

[עריכת קוד מקור | עריכה]
  1. ^ Angelo Corsaro, Gerardo Pardo-Castellote and Clark Tucker (12 באוגוסט 2009). "DDS Interoperability Demo" (PDF). Object Management Group. אורכב מ-המקור (PDF) ב-15 בספטמבר 2011. נבדק ב-9 בנובמבר 2016. {{cite web}}: (עזרה)
  2. ^ "DDS Interoperability Demo December 2010" (PDF). Real-Time Innovations, Inc. 11 בדצמבר 2010. נבדק ב-9 בנובמבר 2016. {{cite web}}: (עזרה)
  3. ^ 2011, March 2011, https://community.rti.com/content/presentation/omg-dds-interoperability-demo-2011
  4. ^ 2012, March 2012, https://community.rti.com/content/presentation/omg-dds-interoperability-demo-2012
  5. ^ 2013, March 2013, http://www.slideshare.net/GerardoPardo/dds-interoperability-demo-2013-washington-dc
  6. ^ "DDS Interoperability Demonstration". video. Real-Time Innovations. 14 בדצמבר 2010. אורכב מ-המקור ב-2014-01-07. נבדק ב-9 בנובמבר 2016. {{cite web}}: (עזרה)