MongoSQL

מחברים את Looker לאשכול MongoSQL ישירות באמצעות הדיאלקט MongoSQL (מופעל על ידי ממשק MongoSQL). כשמקשרים את Looker ל-MongoSQL, אפשר לנתח נתוני מסמכים באמצעות שאילתות SQL יחסיות וליצור מרכזי בקרה אינטראקטיביים ב-Looker.

‫Looker כולל מנהל התקן JDBC מובנה עם רישיון Apache-2.0 לממשק MongoSQL. בניגוד לניב MongoBI הקודם, אין צורך בהתקנה ידנית של קובצי JAR של מנהלי התקנים של JDBC בהתאמה אישית שלא נארזו.

דרישות מוקדמות והגדרת MongoSQL

לפני שיוצרים חיבור ב-Looker, צריך לבצע את שלבי ההגדרה הבאים ב-MongoSQL:

יצירת סכימה יחסית באמצעות SQL Schema Builder

ב-MongoDB, הנתונים מאוחסנים בפורמט גמיש של מסמכים לא יחסיים (JSON/BSON). כדי ש-Looker יוכל לשלוח שאילתות לאוספים של MongoDB באמצעות SQL סטנדרטי, צריך להשתמש ב-SQL Schema Builder ב-MongoSQL כדי ליצור סכימת SQL.

ממשק MongoSQL מסתמך על הסכימה הרלציונית שנוצרה על ידי SQL Schema Builder כדי למפות מבני מסמכים, שדות מוטמעים ומערכים לטבלאות, שורות ועמודות SQL סטנדרטי. בלי סכימת SQL פעילה, ממשק ה-SQL לא יוכל לתרגם שאילתות SQL לאוספי MongoDB.

לפני שיוצרים את החיבור ב-Looker, צריך להגדיר ולפרסם את הסכימות הטבלאיות לפי ההוראות במסמכי התיעוד של MongoSQL Schema Builder.

במכונות מקומיות של MongoDB Enterprise, משתמשים ב-MongoDB SQL Schema Builder CLI כדי להגדיר את הסכימות.

הוספת כתובות ה-IP של Looker לרשימת הגישה של כתובות ה-IP ב-Atlas

‫MongoSQL מגביל את החיבורים של הלקוחות לכתובות IP מורשות. כדי לשלוח שאילתות ל-MongoSQL מהמופע של Looker, צריך להוסיף את כתובות ה-IP של Looker לרשימת הגישה של כתובות ה-IP ב-Atlas. כך עושים את זה:

  1. משיגים את רשימת כתובות ה-IP של Looker לאזור של המכונה של Looker.
  2. מוסיפים את כתובות ה-IP האלה לרשימת הגישה של כתובות ה-IP בפרויקט Atlas, לפי המסמכים של רשימת הגישה של כתובות ה-IP ב-Atlas.

יצירת חשבון משתמש ב-MongoDB בשביל Looker

כדי ליצור חשבון משתמש במסד הנתונים בשביל Looker, משתמשים במסוף האינטרנט של MongoDB Atlas ופועלים לפי השלבים הבאים:

  1. נכנסים למסוף MongoDB Atlas.
  2. בתפריט הניווט הראשי, בקטע Security, לוחצים על Database Access.
  3. לוחצים על Add New Database User.
  4. בוחרים באפשרות Password (סיסמה) בתור שיטת האימות. מזינים שם משתמש (לדוגמה, looker) וסיסמה מאובטחת.
  5. בקטע Database User Privileges, בוחרים באפשרות Built-in Role ומקצים את התפקיד read (או הרשאות קריאה בהתאמה אישית) למסד הנתונים שאליו Looker ייגש.
  6. לוחצים על הוספת משתמש כדי לשמור את פרטי הכניסה של המשתמש.

קבלת פרמטרים של חיבור ל-Atlas SQL

כדי ליצור את החיבור ל-Looker, תצטרכו להזין פרמטרים של חיבור ל-Atlas SQL. כדי לקבל את פרטי הפרמטר, מבצעים את השלבים הבאים:

  1. נכנסים למסוף MongoDB Atlas.
  2. עוברים לאשכול ולוחצים על Connect.
  3. בוחרים באפשרות Atlas SQL (או Connect your application using SQL).
  4. בוחרים באפשרות JDBC Driver.
  5. שימו לב לערכים שנוצרו בשדות Host,‏ Port (בדרך כלל 27017),‏ Database ולדרישות ה-SSL. תצטרכו להזין את הפרטים האלה כשתבצעו את החיבור ל-Looker.

יצירת החיבור של Looker למסד הנתונים

כדי ליצור את החיבור בין Looker ל-MongoSQL, פועלים לפי השלבים הבאים:

  1. בקטע Admin ב-Looker, בוחרים באפשרות Connections ולוחצים על Add Connection.
  2. ממלאים את פרטי החיבור. רוב ההגדרות משותפות לרוב הניבים של מסדי הנתונים. מידע נוסף זמין בדף התיעוד קישור Looker למסד הנתונים. בהמשך מתוארות חלק מההגדרות. משתמשים בערכי ברירת המחדל בכל שאר השדות, או משאירים אותם ריקים.

    • שם: מזינים שם ייחודי לחיבור.
    • Dialect: בוחרים באפשרות MongoSQL בתפריט הנפתח.
    • מארח: שם המארח שסופק על ידי ממשק MongoSQL (לדוגמה, <cluster-name>.a.query.mongodb.net).
    • יציאה: מספר היציאה של Atlas SQL (ברירת המחדל: 27017).
    • ‫Database: שם מסד הנתונים שיצרתם לו סכימה באמצעות SQL Schema Builder.
    • שם משתמש: שם המשתמש של מסד הנתונים שנוצר בשביל Looker.
    • סיסמה: סיסמת המשתמש של מסד הנתונים.
    • ‫SSL: מפעילים את SSL (ssl=true).
    • ‫Additional JDBC parameters: (אופציונלי) פרמטרים נוספים של JDBC שנתמכים על ידי מנהל ההתקן של MongoDB, כמו authSource=admin או connectTimeoutMS=10000. פרמטרים נתמכים של JDBC
  3. כדי לאמת את הקישוריות למסד הנתונים, לוחצים על Test Connection.

  4. אם ב-Looker מוצגת ההודעה Can Connect, לוחצים על Connect כדי ליצור את החיבור.

החיבור למסד הנתונים יתווסף לרשימה בדף Admin (ניהול) בקטע Connections (חיבורים) ב-Looker.

פרמטרים נתמכים של JDBC

בניב MongoSQL, ‏Looker תומך בפרמטרים הבאים של JDBC בשדה Additional JDBC parameters:

  • appName
  • authSource
  • clientinfo
  • connectTimeoutMS
  • directConnection
  • disableclientcache
  • extjsonmode
  • heartbeatFrequencyMS
  • journal
  • localThresholdMS
  • maxIdleTimeMS
  • maxWaitTimeMS
  • readPreference
  • replicaSet
  • retryReads
  • retryWrites
  • serverSelectionTimeoutMS
  • socketTimeoutMS
  • ssl
  • tls
  • tlsAllowInvalidHostnames
  • tlsInsecure
  • w
  • wtimeoutMS

מגבלות על שאילתות והתנהגות של SQL

כשיוצרים מודלים של LookML ושולחים שאילתות ל-MongoSQL באמצעות ממשק ה-SQL, חשוב לזכור את המאפיינים הבאים של הניב:

  • דרישה של SQL Schema Builder: כמו שצוין בדרישות המוקדמות, שאילתות SQL דורשות סכימה יחסית שהוגדרה מראש ב-Atlas SQL Schema Builder.
  • טבלאות נגזרות: יש תמיכה בטבלאות נגזרות ארעיות (רגילות), אבל אין תמיכה בטבלאות נגזרות מתמידות (PDT).
  • סוגי תאריכים וחותמות זמן: סוג הנתונים date לא נתמך. השיטה המקובלת היא לאחסן תאריכים כ-timestamp ולבנות להם מודלים.
  • אזורי זמן: כל חותמות הזמן שאליהן ניגשים מממשק MongoSQL מטופלות ב-UTC. Looker לא ממיר אזורי זמן במסד הנתונים בחיבורים ל-MongoDB.

תמיכה בתכונות

כדי ש-Looker יתמוך בתכונות מסוימות, גם הניב של מסד הנתונים צריך לתמוך בהן.

החל מגרסה 26.22 של Looker,‏ MongoSQL תומך בתכונות הבאות:

תכונה יש תמיכה?
Looker (Google Cloud core)‎
צבירה סימטרית
טבלאות נגזרות
טבלאות נגזרות מתמידות של SQL
טבלאות נגזרות מתמידות מבוססות LookML
תצוגות יציבות
סגירת שאילתות
טבלאות ציר שמבוססות על SQL
אזורי זמן
SSL
סיכומי ביניים
פרמטרים נוספים של JDBC
תלוי אותיות רישיות (case-sensitive)
סוג מיקום
סוג הרשימה
מאון
מאון ייחודי
הצגת תהליכים ב-SQL Runner
‫SQL Runner Describe Table
הצגת אינדקסים ב-SQL Runner
‫SQL Runner Select 10
מספר השאילתות ב-SQL Runner
הסבר על קוד SQL
פרטי כניסה של OAuth 2.0
הערות להוספת הקשר
מאגר חיבורים (connection pooling)
שרטוטי HLL
מודעות מצטברת
טבלאות PDT מצטברות
אלפיות השנייה
מיקרו-שניות
תצוגות מהותיות
מדדים להשוואה בין תקופות שונות
ספירה משוערת של ערכים ייחודיים
מודלים של ניתוח נתונים במסד הנתונים
יומנים בהתאמה אישית