MongoDB (גרסה 2)

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

גרסאות נתמכות

  • ‫MongoDB גרסאות 3.6 עד 6.1
  • ‫Mongo Atlas שנפרס ב-Google Cloud.

לפני שמתחילים

לפני שמשתמשים במחבר MongoDB, צריך לבצע את המשימות הבאות:

  • בפרויקט שלכם ב-Google Cloud:
    • מוודאים שהגדרתם חיבור לרשת. מידע על תבניות רשת זמין במאמר קישוריות לרשת. במאמר קישוריות פרטית לאשכול MongoDB Atlas מוסבר איך מגדירים קישוריות לרשת עבור אשכול MongoDB Atlas.
    • נותנים למשתמש שמגדיר את המחבר את תפקיד ה-IAM‏ roles/connectors.admin.
    • מקצים לחשבון השירות שרוצים להשתמש בו עבור המחבר את תפקידי ה-IAM הבאים:
      • roles/secretmanager.viewer
      • roles/secretmanager.secretAccessor

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

    • מפעילים את השירותים הבאים:
      • ‫secretmanager.googleapis.com (Secret Manager API)
      • ‫connectors.googleapis.com (Connectors API)

      מידע על הפעלת שירותים זמין במאמר הפעלת שירותים.

      אם השירותים או ההרשאות האלה לא הופעלו בפרויקט שלכם בעבר, תתבקשו להפעיל אותם כשאתם מגדירים את המחבר.

    • הגבלת הגישה לרשת לאשכול Atlas באמצעות חומת אש:

      כדי להגביל את הגישה לרשת של אשכול Atlas, צריך להגדיר את המחבר של MongoDB כך שישתמש בקבוצה של כתובות IP סטטיות לתעבורה שמגיעה מהחיבורים. כדי להבין איך לאפשר לחיבור להתחבר דרך חומת אש, אפשר לעיין במאמר חיבור לאפליקציית קצה עורפי ציבורית דרך חומת אש.

הגדרת המחבר

החיבור הוא ספציפי למקור נתונים. אם יש לכם הרבה מקורות נתונים, תצטרכו ליצור חיבור נפרד לכל אחד מהם. כדי ליצור קישור:

  1. במסוף Cloud, עוברים לדף Integration Connectors > Connections ובוחרים או יוצרים פרויקט בענן.

    כניסה לדף Connections

  2. לוחצים על + יצירת חיבור חדש כדי לפתוח את הדף יצירת חיבור.
  3. בקטע מיקום, בוחרים את המיקום של החיבור.
    1. אזור: בוחרים מיקום מהרשימה הנפתחת.

      רשימה של כל האזורים הנתמכים מופיעה במאמר מיקומים.

    2. לוחצים על הבא.
  4. בקטע פרטי החיבור, ממלאים את הפרטים הבאים:
    1. מחבר: בוחרים באפשרות MongoDB מהרשימה הנפתחת של המחברים הזמינים.
    2. גרסת המחבר: בוחרים את הגרסה 2 מרשימת הגרסאות.
    3. בשדה Connection Name (שם החיבור), מזינים שם למופע החיבור.

      השמות של החיבורים צריכים לעמוד בקריטריונים הבאים:

      • שמות החיבורים יכולים לכלול אותיות, מספרים או מקפים.
      • האותיות צריכות להיות קטנות.
      • שמות החיבורים צריכים להתחיל באות ולהסתיים באות או במספר.
      • שמות החיבורים לא יכולים לכלול יותר מ-49 תווים.
    4. אופציונלי: מזינים תיאור למופע החיבור.
    5. אופציונלי: מפעילים את Cloud Logging ואז בוחרים רמת יומן. כברירת מחדל, רמת היומן מוגדרת כ-Error.
    6. חשבון שירות: בוחרים חשבון שירות שיש לו את התפקידים הנדרשים.
    7. אופציונלי: מגדירים את ההגדרות של צומת החיבור:

      • מספר מינימלי של צמתים: מזינים את המספר המינימלי של צמתי חיבור.
      • מספר הצמתים המקסימלי: מזינים את מספר צמתי החיבור המקסימלי.

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

    8. מסד נתונים: השם של מסד הנתונים של MongoDB שאליו רוצים להתחבר.
    9. זמן קצוב לתפוגה של חיבור: מציינים את הזמן בשניות להמתנה עד לסיום פעולה לפני ביטולה.
    10. ‫Connection Pool max size (גודל מקסימלי של מאגר חיבורים): מציינים את המספר המקסימלי של חיבורים שמותרים במאגר החיבורים.
    11. גודל מינימלי של מאגר החיבורים: מציינים את המספר המינימלי של החיבורים שיישארו במאגר החיבורים.
    12. משך הזמן ללא פעילות של החיבור בשניות: מציינים את משך הזמן המקסימלי ללא פעילות בשניות שחיבור יכול להתקיים במאגר לפני שהוא נסגר.
    13. ‫Connection Lifetime in secs (משך החיים של החיבור בשניות): מציינים את משך החיים המקסימלי של החיבור בשניות. אחרי פרק הזמן הזה, החיבור ייסגר.
    14. שימוש ב-SSL: מציינים אם SSL מופעל או לא.
    15. שם האפליקציה: שם האפליקציה המותאם אישית ל-Mongo.
    16. ‫Max Staleness Seconds: משך הזמן בשניות שבו שרת משני יכול להיות לא עדכני לפני שהלקוח מפסיק להשתמש בו לפעולות קריאה.
    17. Write Concern(אפשרות w): אפשרות לבקש אישור לכך שפעולת הכתיבה הועברה למספר מסוים של מופעים עם תגים ספציפיים.
    18. Write Concern(אפשרות wtimeoutMS): מציינת מגבלת זמן, באלפיות השנייה, עבור Write Concern.
    19. Write Concern(journal Option): בקשות אישור מ-MongoDB שפעולת הכתיבה נכתבה ביומן.
    20. העדפת קריאה: מגדירים את האפשרות הזו לשיטה לקריאה ממערכת שכפול. הערכים הקבילים הם primary,‏ primaryPreferred,‏ secondary,‏ secondaryPreferred ו-nearest.
    21. ‫Cluster Type: מציינים את סוג אשכול MongoDB.
    22. הפעלת הצפנה: מציינים אם ההצפנה מופעלת.
    23. סוג ההצפנה: מציינים את סוג ההצפנה שמופעל. בשלב הזה יש תמיכה רק בסוג Local Encryption.
    24. סכימת הצפנה: מציינים את פרטי סכימת ההצפנה, כולל השדות ואלגוריתם ההצפנה, שם חלופי של המפתח, סוג השאילתה וגורם ההתנגשות. לדוגמה:
      {
        "database.collection": {
          "encryptMetadata": {
            "algorithm": "parentAlgo"
          },
          "properties": {
            "passportId": {},
            "medicalRecords": {
              "encryptMetadata": {
                "algorithm": "medicalRecordParentAlgo"
              },
              "properties": {
                "medicalRecord1": {},
                "medicalRecord2": {
                  "encrypt": {
                    "algorithm": "medicalRecord2Algo",
                    "keyAltName": "medicalRecord2Altkey",
                    "queryType": "equality",
                    "contentionFactor": 3
                  }
                }
              }
            },
            "insuranceProperties": {
              "properties": {
                "policyNumber": {},
                "insuranceRecord1": {
                  "encrypt": {
                    "algorithm": "insuranceRecord1Algo",
                    "keyAltName": "insuranceRecord1AltKey"
                  }
                },
                "insuranceRecord2": {
                  "encrypt": {
                    "algorithm": "insuranceRecord2Algo",
                    "keyAltName": "insuranceRecord2AltKey",
                    "contentionFactor": 5
                  }
                }
              }
            }
          }
        }
      }
    25. ‫encryption_master_key: סוד ב-Secret Manager שמכיל את מפתח המאסטר להצפנה.
    26. ‫encryption_key_vault: הערך של כספת מפתחות ההצפנה.
    27. מסד נתונים לאימות: מציינים את השם של מסד הנתונים של MongoDB לאימות.
    28. אופציונלי: לוחצים על + הוספת תווית כדי להוסיף תווית לקישור בצורה של צמד מפתח/ערך.
    29. לוחצים על הבא.
  5. בקטע יעדים, מזינים את הפרטים של המארח המרוחק (מערכת העורף) שאליו רוצים להתחבר.
    1. סוג היעד: אפשר לציין את פרטי היעד ככתובת מארח, שיכולה להיות אחת מהאפשרויות הבאות:
      • מחרוזת SRV יחידה של Mongo. לדוגמה, mongodb+srv://cluster2.2f.mongodb.net
      • עותקים משוכפלים נפרדים. לדוגמה, dasdsf.2f.mongodb01.net
      • כתובת IP. לדוגמה,10.23.123.12

      הקידומת mongodb:// תתווסף לכתובת ה-URL הסופית אחרי שכל העותקים ישולבו במחרוזת החיבור, אם לא צוין mongodb+srv.

      • כתובת המארח: מציינים את שם המארח או את כתובת ה-IP של היעד.

        כדי ליצור חיבור פרטי לשרת העורפי, פועלים לפי השלבים הבאים:

      כדי להזין יעדים נוספים, לוחצים על +הוספת יעד.

    2. לוחצים על הבא.
  6. בקטע אימות, מזינים את פרטי האימות.
    1. בוחרים סוג אימות ומזינים את הפרטים הרלוונטיים.

      החיבור ל-MongoDB תומך בסוגי האימות הבאים:

      • שם משתמש וסיסמה
    2. כדי להבין איך להגדיר את סוגי האימות האלה, אפשר לעיין במאמר הגדרת אימות.

    3. לוחצים על הבא.
  7. בדיקה: בודקים את פרטי החיבור והאימות.
  8. לוחצים על יצירה.

הגדרת אימות

מזינים את הפרטים בהתאם לאימות שבו רוצים להשתמש.

  • שם משתמש וסיסמה
    • שם משתמש: שם המשתמש של המחבר
    • ‫Password: סוד ב-Secret Manager שמכיל את הסיסמה של המשתמש.
    • סכמת אימות: הסכמה שמשמשת לאימות.

      החיבור ל-MongoDB תומך בסכימות האימות הבאות:

      • פשוט
      • SCRAM-SHA-1
      • SCRAM-SHA-256

ישויות, פעולות ופעולות

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

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

    עם זאת, יכול להיות שמחבר לא תומך בישויות או שאין לו ישויות, ובמקרה כזה הרשימה Entities תהיה ריקה.

  • פעולה: פעולה היא הפעילות שאפשר לבצע בישות. אפשר לבצע כל אחת מהפעולות הבאות בישות:

    בחירה של ישות מתוך הרשימה הזמינה יוצרת רשימה של פעולות שזמינות לישות. תיאור מפורט של הפעולות זמין במאמר פעולות על ישויות של משימת המחברים. עם זאת, אם מחבר לא תומך באף אחת מהפעולות על ישויות, הפעולות הלא נתמכות האלה לא יופיעו ברשימה Operations.

  • פעולה: פעולה היא פונקציה מסוג first class שזמינה לשילוב דרך ממשק המחבר. פעולה מאפשרת לבצע שינויים בישות אחת או בכמה ישויות, והיא משתנה ממתחם למתחם. בדרך כלל, לפעולה יהיו כמה פרמטרים של קלט ופרמטר של פלט. עם זאת, יכול להיות שמחבר לא תומך באף פעולה, ובמקרה כזה הרשימה Actions תהיה ריקה.

מגבלות המערכת

מחבר MongoDB יכול לעבד עד 70 עסקאות בשנייה, לכל צומת, ומגביל עסקאות שחורגות מהמגבלה הזו. כברירת מחדל, Integration Connectors מקצה 2 צמתים (לזמינות טובה יותר) לחיבור.

מידע על המגבלות שחלות על Integration Connectors זמין במאמר מגבלות.

סוגי נתונים נתמכים

אלה סוגי הנתונים הנתמכים במחבר הזה:

  • BIGINT
  • BINARY
  • BIT
  • בוליאני
  • CHAR
  • תאריך
  • DECIMAL
  • DOUBLE
  • FLOAT
  • מספר שלם
  • LONGN VARCHAR
  • LONG VARCHAR
  • NCHAR
  • NUMERIC
  • NVARCHAR
  • REAL
  • SMALL INT
  • שעות
  • TIMESTAMP
  • TINY INT
  • VARBINARY
  • VARCHAR

הגדרות לאשכול MongoDB Atlas

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

  1. בתצוגת האשכולות, לוחצים על Connect (חיבור) באשכול שאליו רוצים להתחבר.
  2. לוחצים על Connect Your Application (קישור האפליקציה).
  3. בוחרים באחת מאפשרויות הדרייבר כדי להציג מחרוזת חיבור.

כדי לבצע אימות מול אשכול Atlas, משתמשים בהגדרה הבאה:

  • ‫Auth Database: מגדירים את הערך ל-admin, כי כל המשתמשים ב-MongoDB Atlas משויכים למסד הנתונים admin.
  • Use SSL (שימוש ב-SSL): מגדירים את הערך ל-true.
  • ‫Server: מגדירים את הערך ל-mongodb+srv://MongoDB INSTANCE SERVER NAME בלי לכלול את שם המשתמש והסיסמה.

פעולות

בקטע הזה מפורטות כל הפעולות שנתמכות בחיבור ל-MongoDB.

פעולה של AggregatePipeline

הפעולה הזו צוברת את השינויים בצינור באוסף.

פרמטרים של קלט לפעולה AggregatePipeline

שם הפרמטר סוג נתונים חובה תיאור
אוסף String כן השם של אוסף MongoDB.
פייפליין String כן צינור צבירה שמכיל שלבי שדות כרשימה של מחרוזות.
page_size מספר שלם לא מספר הפריטים שייכללו בכל דף של קבוצת התוצאות.
page_no מספר שלם לא האינדקס של הדף שיש לאחזר מתוך קבוצת התוצאות. האינדקס מתחיל מ-0.

דוגמה להגדרת הפעולה AggregatePipeline מופיעה במאמר דוגמאות.

פעולת CountDocuments

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

פרמטרים של קלט לפעולה CountDocuments

שם הפרמטר סוג נתונים חובה תיאור
אוסף String כן השם של אוסף MongoDB.
מסנ String לא תנאי סינון שמוצג בפורמט של שאילתת MongoDB. התנאי הזה יכול להכיל שדות מוצפנים אם סכמת ההצפנה מופעלת עבור שוויון של querytype.

פרמטרים של פלט של הפעולה CountDocuments

הפעולה הזו מחזירה את מספר כל המסמכים שעומדים בתנאי נתון.

דוגמה להגדרת הפעולה CountDocuments מופיעה במאמר דוגמאות.

הפעולה DeleteDocuments

הפעולה הזו מוחקת מסמכים באוסף.

פרמטרים של קלט בפעולה DeleteDocuments

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

פרמטרים של פלט של הפעולה DeleteDocuments

הפעולה מחזירה את מספר המסמכים שנמחקו.

דוגמה להגדרת הפעולה DeleteDocuments מופיעה במאמר דוגמאות.

הפעולה DistinctValues

הפעולה הזו מחזירה את הערכים הייחודיים של שדה באוסף.

פרמטרים של קלט לפעולה DistinctValues

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

דוגמה להגדרת הפעולה DistinctValues מופיעה במאמר דוגמאות.

פעולת InsertDocument

הפעולה הזו מוסיפה מסמך לאוסף.

בטבלאות הבאות מתוארים פרמטרי הקלט והפלט של פעולת InsertDocument.

פרמטרים של קלט לפעולה InsertDocument

שם הפרמטר סוג נתונים חובה תיאור
אוסף String כן השם של אוסף MongoDB.
מסמך String לא מסמך שיוסף לאוסף MongoDB.

פרמטרים של פלט של הפעולה InsertDocument

הפעולה הזו מחזירה את המזהה של המסמך שהוכנס.

דוגמה להגדרת הפעולה InsertDocument מופיעה במאמר דוגמאות.

הפעולה ListDocuments

בטבלאות הבאות מתוארים פרמטרי הקלט והפלט של הפעולה ListDocuments.

פרמטרים של קלט לפעולה ListDocuments

שם הפרמטר סוג נתונים חובה תיאור
אוסף String כן השם של אוסף MongoDB.
מסנ String לא תנאי סינון שמוצג בפורמט של שאילתת MongoDB. התנאי הזה יכול להכיל שדות מוצפנים אם סכמת ההצפנה מופעלת עבור שוויון querytype.
page_size מספר שלם לא מספר הפריטים שייכללו בכל דף של קבוצת התוצאות.
page_no מספר שלם לא האינדקס של הדף שיש לאחזר מתוך קבוצת התוצאות. האינדקס מתחיל מ-0.
היטל String לא קבוצת השדות או המאפיינים שייכללו בהקרנת השאילתה בפורמט Mongo.
sort_by String לא המפרט של סדר תוצאות השאילתה בפורמט Binary JSON ‏ (BSON) של MongoDB.

פרמטרים של פלט של הפעולה ListDocuments

הפעולה מחזירה את רשימת המסמכים שעומדים בתנאי הסינון לפי גודל הדף. גודל הדף שמוגדר כברירת מחדל הוא 25, והגודל המקסימלי של הדף הוא 50,000.

דוגמה להגדרת הפעולה ListDocuments מופיעה במאמר דוגמאות.

פעולת UpdateDocuments

בטבלאות הבאות מתוארים פרמטרי הקלט והפלט של פעולת UpdateDocuments.

פרמטרים של קלט לפעולה UpdateDocuments

שם הפרמטר סוג נתונים חובה תיאור
אוסף String כן השם של אוסף MongoDB.
ערכים String לא הערכים שיש לעדכן בפורמט Mongo.
מסנ String לא תנאי סינון שמוצג בפורמט של שאילתת MongoDB. התנאי הזה יכול להכיל שדות מוצפנים אם סכימת ההצפנה מופעלת לשוויון מסוג שאילתה.
upsert בוליאני לא האם הפעולה היא upsert או לא.

פרמטרים של פלט של הפעולה UpdateDocuments

הפעולה מחזירה את מספר המסמכים שעודכנו.

דוגמה להגדרת הפעולה UpdateDocuments מופיעה במאמר דוגמאות.

פעולת UpdateDocumentsWithEncryption

הפעולה הזו מאפשרת למשתמש לעדכן את הערכים המוצפנים.בטבלאות הבאות מתוארים פרמטרים של קלט ופלט של הפעולה UpdateDocumentsWithEncryption.

פרמטרים של קלט בפעולה UpdateDocumentsWithEncryption

שם הפרמטר סוג נתונים חובה תיאור
אוסף String כן השם של אוסף MongoDB.
מסמך String לא מסמך שמכיל ערכים שצריך לעדכן. הערכים יכולים להכיל שדות שיוצפנו באמצעות CSFLE.
מסנ String לא תנאי סינון שמוצג בפורמט של שאילתת MongoDB. התנאי הזה יכול להכיל שדות מוצפנים אם סכמת ההצפנה מופעלת עבור שוויון של סוג השאילתה.
upsert בוליאני לא הגדרה שקובעת אם הפעולה היא upsert.

פרמטרים של פלט של הפעולה UpdateDocumentsWithEncryption

הפעולה מחזירה את מספר המסמכים שעודכנו.

דוגמה להגדרת הפעולה UpdateDocumentsWithEncryption מופיעה במאמר דוגמאות.

דוגמאות

בקטע הזה מוסבר איך לבצע חלק מהפעולות והפעולות על ישויות במחבר הזה.

דוגמה – שינויים מצטברים בצינור

  1. בתיבת הדו-שיח Configure connector task, לוחצים על Actions.
  2. בוחרים את הפעולה AggregatePipeline ולוחצים על סיום.
  3. בקטע Task Input (קלט משימה) של המשימה Connectors (מחברים), לוחצים על connectorInputPayload ואז מזינים ערך דומה לערך הבא בשדה Default Value:
    {
      "collection": "restaurants",
      "pipeline": {
        "stages": [
          "{$addFields: { \"new_menu_item\": \"tea\"}}"
        ]
      },
      "page_size": 1,
      "page_no": 0
    }
  4. בדוגמה הזו נוסף פריט תפריט חדש לכל המסמכים באוסף restaurant ומוחזר הדף הראשון של התוצאה.

דוגמה – ספירת מסמכים

  1. בתיבת הדו-שיח Configure connector task, לוחצים על Actions.
  2. בוחרים את הפעולה CountDocuments ולוחצים על סיום.
  3. בקטע Task Input (קלט משימה) של המשימה Connectors (מחברים), לוחצים על connectorInputPayload ואז מזינים ערך דומה לערך הבא בשדה Default Value:
    {
    "collection":"restaurants",
    "filter": "{\"name\": \"CarvelIceCream1\"}"
    }
  4. בדוגמה הזו מוחזרת ספירת המסמכים שתואמים לקריטריוני הסינון. אם הפעולה מצליחה, פרמטר התגובה connectorOutputPayload של המשימה Connectors יקבל ערך שדומה לדוגמה הבאה:

    {
      "results": [
       {
        "count": 5
       }
      ]
    }

דוגמה – מחיקת מסמכים

  1. בתיבת הדו-שיח Configure connector task, לוחצים על Actions.
  2. בוחרים את הפעולה DeleteDocuments ולוחצים על סיום.
  3. בקטע Task Input (קלט של משימה) במשימה Connectors (מחברים), לוחצים על connectorInputPayload ומזינים את הפרטים הבאים בשדה Default Value:
    {
      "collection": "Insurancedocuments",
      "filter": "{\"insurance.provider\":\"ABC\"}"}
  4. בדוגמה הזו נמחקים כל המסמכים שספק הביטוח שלהם הוא ABC.

דוגמה – חיפוש ערכים ייחודיים בקולקציה

  1. בתיבת הדו-שיח Configure connector task, לוחצים על Actions.
  2. בוחרים את הפעולה DistinctValues ולוחצים על סיום.
  3. בקטע Task Input (קלט משימה) של המשימה Connectors (מחברים), לוחצים על connectorInputPayload ואז מזינים ערך דומה לערך הבא בשדה Default Value:
    {"collection":"restaurants","field":"contact"}
  4. בדוגמה הזו, הפונקציה מחזירה את הערכים הייחודיים באוסף restaurants. אם הפעולה מצליחה, פרמטר התגובה connectorOutputPayload של המשימה Connectors יקבל ערך שדומה לדוגמה הבאה:

    {
     "results": [
      {
       "DistinctValues": [
        "3217902323",
        "8747479023",
        "3492619023"
       ]
      }
     ]
    }

דוגמה – הוספת מסמך

  1. בתיבת הדו-שיח Configure connector task, לוחצים על Actions.
  2. בוחרים את הפעולה InsertDocument ולוחצים על סיום.
  3. בקטע Task Input (קלט משימה) של המשימה Connectors (מחברים), לוחצים על connectorInputPayload ואז מזינים ערך דומה לערך הבא בשדה Default Value:
    { {
    "collection": "Insurancedocuments",
    "document": "{\"fname\":\"firstName\",
    \"lname\":\"lastName\",
    \"passportId\":\"ABCD1234\",
    \"bloodType\":\"A\",
    \"medicalRecords\":[{\"item\":\"name1\"},{\"item\":\"name2\"}],
    \"insurance\":{\"policyNumber\":\"12345\",\"provider\":\"provider2\"}}"
    } }
  4. בדוגמה הזו מוסיפים מסמך לאוסף Insurancedocuments. תוכן המסמך מצוין בשדה document. אם ההוספה תצליח, תקבלו את המזהה של המסמך שהוסף בפרמטר התגובה connectorOutputPayload של המשימה Connectors.

דוגמה – רשימת מסמכים

  1. בתיבת הדו-שיח Configure connector task, לוחצים על Actions.
  2. בוחרים את הפעולה ListDocuments ולוחצים על סיום.
  3. בקטע Task Input (קלט משימה) של המשימה Connectors (מחברים), לוחצים על connectorInputPayload ואז מזינים ערך דומה לערך הבא בשדה Default Value:
    {
    "collection": "Insurancedocuments",
    "filter": "{\"insurance.provider\":\"ABC\"}",
    "page_size": 10
    }
  4. בדוגמה הזו מוצגים מסמכים באוסף Insurancedocuments שבהם ספק הביטוח הוא ABC. גודל הדף של קבוצת התוצאות מוגדר ל-10, ורשימת הקבצים תהיה זמינה בפורמט JSON בפרמטר התגובה connectorOutputPayload של משימת Connectors.

דוגמה – עדכון מסמכים

  1. בתיבת הדו-שיח Configure connector task, לוחצים על Actions.
  2. בוחרים את הפעולה UpdateDocuments ולוחצים על סיום.
  3. בקטע Task Input (קלט משימה) של המשימה Connectors (מחברים), לוחצים על connectorInputPayload ואז מזינים ערך דומה לערך הבא בשדה Default Value:
    {"collection":"Insurancedocuments",
    "values":" {$set: { lname:\"Smith\" }}",
    "filter":"{\"insurance.provider\":\"ABC\"}"}
  4. בדוגמה הזו, שם המשפחה מתעדכן ל-Smith במסמכים שתואמים לקריטריונים של המסנן. אם העדכון יצליח, תקבלו את מספר המסמכים שעודכנו. התשובה תהיה זמינה בפרמטר התשובה connectorOutputPayload של המשימה Connectors.

דוגמה – עדכון מסמכים בהצפנה

  1. בתיבת הדו-שיח Configure connector task, לוחצים על Actions.
  2. בוחרים את הפעולה UpdateDocumentsWithEncryption ולוחצים על סיום.
  3. בקטע Task Input (קלט של משימה) במשימה Connectors (מחברים), לוחצים על connectorInputPayload ומזינים את הפרטים הבאים בשדה Default Value:
    { {"collection":"Insurancedocuments",
    "document":" { \"insurance.provider\":\"XYZ\" }",
    "filter":"{\"insurance.provider\":\"ABC\"}"}
  4. בדוגמה הזו, ספק הביטוח מתעדכן ל-XYZ בכל המסמכים שבהם ספק הביטוח הוא ABC.

יצירת חיבורים באמצעות Terraform

אפשר להשתמש במשאב של Terraform כדי ליצור חיבור חדש.

כדי ללמוד איך להחיל הגדרות ב-Terraform או להסיר אותן, ראו פקודות בסיסיות ב-Terraform.

כדי לראות תבנית לדוגמה של Terraform ליצירת חיבור, אפשר לעיין בתבנית לדוגמה.

כשיוצרים את החיבור הזה באמצעות Terraform, צריך להגדיר את המשתנים הבאים בקובץ ההגדרות של Terraform:

שם הפרמטר סוג נתונים חובה תיאור
מסד נתונים מחרוזת נכון השם של מסד הנתונים של MongoDB.
זמן קצוב לתפוגה מספר שלם לא נכון הזמן הקצוב לתפוגה של החיבור בשניות.
enable_ssl בוליאני לא נכון השדה הזה קובע אם SSL מופעל.
app_name מחרוזת לא נכון שם אפליקציה מותאם אישית ל-MongoDB.
max_staleness_seconds מספר שלם לא נכון משך הזמן בשניות שבו משני יכול להיות לא עדכני, לפני שהלקוח מפסיק להשתמש בו לפעולות קריאה.
write_concern מחרוזת לא נכון אפשרות לבקש אישור לכך שפעולת הכתיבה הועברה למספר מסוים של מופעים עם תגים ספציפיים.
write_concern_timeout מספר שלם לא נכון מציין מגבלת זמן, באלפיות השנייה, לבעיית הכתיבה.
write_concern_journal בוליאני לא נכון בקשות אישור מ-MongoDB שפעולת הכתיבה נכתבה ביומן.
read_preference ENUM לא נכון קריאת ההעדפות של החיבור הזה. הערכים הנתמכים הם: primary, primaryPreferred, secondary, secondaryPreferred, nearest
cluster_type ENUM לא נכון מציין את הסוג של אשכול MongoDB. הערכים הנתמכים הם: REPLICA_SET, ‏ STANDALONE, ‏ SHARDED, ‏ UNKNOWN
enable_encryption בוליאני לא נכון השדה הזה מגדיר אם ההצפנה מופעלת.
encryption_type ENUM לא נכון בשדה הזה מגדירים את סוג ההצפנה שמופעלת. הערכים הנתמכים הם: local
encryption_schema מחרוזת לא נכון מידע על סכימת ההצפנה, כולל השדות ואלגוריתם ההצפנה שבהם נעשה שימוש.
encryption_master_key SECRET לא נכון סוד ב-Secret Manager שמכיל את מפתח המאסטר להצפנה.
encryption_key_vault מחרוזת לא נכון הערך של Encryption Key Vault.
auth_database מחרוזת נכון השם של מסד הנתונים של MongoDB לאימות.

שימוש בחיבור ל-MongoDB בשילוב

אחרי שיוצרים את החיבור, הוא זמין גם ב-Apigee Integration וגם ב-Application Integration. אפשר להשתמש בחיבור בשילוב באמצעות המשימה Connectors.

  • כדי להבין איך ליצור ולהשתמש במשימה Connectors ב-Apigee Integration, אפשר לעיין במאמר משימת Connectors.
  • מידע על יצירה ושימוש במשימת מחברים ב-Application Integration זמין במאמר משימת מחברים.

קבלת עזרה מקהילת Google Cloud

אתם יכולים לפרסם את השאלות שלכם ולדון במחבר הזה בקהילת Google Cloud בפורומים של Cloud.

המאמרים הבאים