‫MongoDB Connector for BI

מעבר מ-MongoBI ל-MongoSQL

מעכשיו יש ב-Looker תמיכה ב-MongoSQL, ומומלץ לבצע מיגרציה ל-MongoSQL מ-MongoDB Connector for BI.

בגלל ההבדלים בתחביר SQL בין MongoDB Connector for BI‏ (MongoBI) לבין MongoSQL, יכול להיות שיהיה צורך לבצע שינויים בתחביר של מודלים קיימים של LookML שמשתמשים בבלוקים מותאמים אישית של SQL, בעיצוב תאריכים או בפונקציות של מסד נתונים. אל תעבירו חיבור קיים של סביבת ייצור ישירות ל-MongoSQL בלי לאמת קודם את קוד ה-LookML, כי זה עלול לשבור לוחות בקרה, תצוגות ותזמונים או התראות.

כדי לבצע מיגרציה בטוחה מ-MongoBI ל-MongoSQL, צריך לבצע את השלבים הבאים:

  1. אפשר לעיין בהבדלים בתחביר SQL בין MongoBI לבין MongoSQL במסמכי התיעוד של MongoDB מעבר מ-Atlas BI Connector ל-MongoSQL.
  2. יוצרים חיבור חדש ל-MongoSQL ב-Looker כחיבור משני.
  3. בסניף פיתוח חדש בפרויקט של LookML, מעדכנים את הפרמטר connection בקובץ המודל כך שיצביע על החיבור החדש ל-MongoSQL.
  4. ב-SQL Runner, בודקים ומריצים שאילתות לדוגמה מ-Explores כדי לאמת את התחביר והתוצאות של השאילתות.
  5. מאמתים את הפרויקט והתוכן:
  6. אחרי שפותרים את כל שגיאות האימות, פורסים את השינויים בסביבת הייצור.

שימוש ב-MongoDB Connector for BI‏ (MongoBI)

ל-Looker יש גישה ל-MongoDB באמצעות MongoDB Connector for BI בשתי דרכים:

  • שימוש ב-MongoDB Connector for BI ב-MongoDB Atlas.
  • שימוש ב-MongoDB Connector for BI שמותקן באותו שרת שבו מותקן מסד הנתונים של MongoDB.

‫MongoDB Atlas

ב-MongoDB Atlas צריך להשתמש באשכול M10 ואילך. כדי ש-Looker יוכל להשתמש במסד נתונים של MongoDB שפועל ב-MongoDB Atlas, צריך להשתמש ב-MongoDB Connector for BI (MongoBI)‎. כדי להפעיל את BI Connector ל-Atlas, צריך להשתמש באשכול M10+‎ ב-MongoDB Atlas.

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

הגדרת MongoDB Connector for BI

לפני שיוצרים חיבור ב-Looker, האדמין של MongoDB או Atlas צריך להגדיר את MongoDB Connector for BI לפי השלבים הבאים, שמוסברים בדף הזה:

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

ב-Atlas, אפשר להתחבר ללקוחות רק מרשומות ברשימת הגישה של כתובות ה-IP של הפרויקט. מוסיפים את כתובת ה-IP של Looker לרשימת הגישה של פרויקט Atlas:

  1. משיגים את כתובת ה-IP של Looker.
  2. פועלים לפי ההוראות להגדרת רשימת גישה ל-IP ב-Atlas כדי להוסיף את כתובת ה-IP של Looker לרשימת גישה ל-IP ב-Atlas.

הפעלת MongoDB Connector for BI

מפעילים את MongoDB Connector for BI:

  1. מוודאים שאתם נמצאים באשכול M10+‎.
  2. ב-Atlas, פותחים את הדף Connect של האשכול. רושמים את שם המארח, היציאה והמשתמש. תצטרכו להשתמש במידע הזה כשמגדירים את הקישור ב-Looker.

‫MongoDB באותו שרת

לפני שיוצרים חיבור ב-Looker, האדמין של MongoDB צריך להגדיר את MongoDB ואת Mongo Connector for BI לפי השלבים הבאים, שמוסברים בדף הזה:

התקנת Mongo Connector for BI

מתקינים את MongoDB Connector for BI באותו שרת שבו נמצא מסד הנתונים של MongoDB, כמו שמוסבר בדף התיעוד של MongoDB בנושא Install BI Connector On Premises .

הצפנת התנועה ברשת

המחבר של MongoDB ל-BI דורש שימוש בהצפנת SSL בין השרת של MongoDB לבין אפליקציית Looker. פועלים לפי ההוראות להגדרת SSL בדף התיעוד של MongoDB בנושא הגדרת SSL ל-BI Connector.

הגדרת המשתמש וההרשאות ב-Looker

ב-MongoDB shell, מזינים את הפקודה use כדי לעבור למסד הנתונים שאליו Looker יתחבר. אחר כך יוצרים משתמש ל-Looker באמצעות db.createUser() עם התפקיד readWrite:

use looker_database

db.createUser({ user: looker,
                pwd: `some_password_here`,
                roles: [ "readWrite" ]
              })

התקנת קובצי מנהל ההתקן של MongoBI JDBC

בשתי האפשרויות של MongoDB Connector for BI, צריך להגדיר קובצי מנהל התקן של JDBC ב-Looker. כדי לעשות את זה:

מורידים את שני קובצי ה-JAR האלה:

פועלים לפי השלבים בדף התיעוד Unpackaged JDBC drivers באמצעות הערכים הבאים:

סמל הנהג: mongobi

רשומת נהג:

- name: mongobi
  dir_name: mongobi
  module_path: com.mysql.jdbc.Driver
  override_jdbc_url_subprotocol: mysql

אם אתם משתמשים ב-Looker בגרסה 6.2 או בגרסה קודמת:

- name: maria15x
  dir_name: mongobi
  module_path: com.mysql.jdbc.Driver
  override_jdbc_url_subprotocol: mysql

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

  • looker/custom_jdbc_drivers/mongobi/mongosql-auth-1.0.0-rc0.jar
  • looker/custom_jdbc_drivers/mongobi/mysql-connector-java-5.1.47.jar

מתן הרשאה לשימוש בטבלאות נגזרות רגילות (מומלץ)

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

המחבר של MongoDB ל-BI תומך בטבלאות נגזרות רגילות זמניות, אבל לא תומך בטבלאות נגזרות מתמידות (PDT).

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

כדי להוסיף את התפקיד dbOwner ב-looker_tmp למשתמש ש-Looker ישתמש בו כדי להתחבר, פועלים לפי ההוראות שבקטע Modify MongoDB Users (שינוי משתמשי MongoDB) בדף התיעוד הזה של MongoDB בנושא הגדרת משתמשי מסד נתונים.

db.grantRolesToUser("looker", [ {role: "dbOwner", db: "looker_tmp"} ])

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

כדי ליצור את החיבור בין Looker למסד הנתונים:

  1. בקטע ניהול ב-Looker, בוחרים באפשרות חיבורים ואז לוחצים על הוספת חיבור.
  2. בתפריט הנפתח ניב, בוחרים באפשרות MongoBI.

  3. ממלאים את פרטי החיבור. רוב ההגדרות משותפות לרוב הניבים של מסדי הנתונים. מידע נוסף זמין בדף התיעוד קישור Looker למסד הנתונים.

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

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

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

שימוש בפונקציות ובאופרטורים של SQL עם MongoDB Connector for BI

כשמפתחים באמצעות חיבור של MongoDB Connector for BI, אפשר להשתמש בפונקציות ובאופרטורים של SQL שמפורטים במסמכי התיעוד של MongoDB.

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

ב-MongoDB Connector for BI, ‏ Looker תומך בפרמטרים הבאים של JDBC בשדה Additional JDBC parameters של החיבור. מידע על הפרמטרים האלה מופיע במסמכי התיעוד של מסד הנתונים.

  • allowMultiQueries
  • appName
  • authSource
  • autoReconnect
  • cachePrepStmts
  • characterEncoding
  • connectTimeout
  • connectTimeoutMS
  • elideSetAutoCommits
  • enabledSslProtocolSuites
  • enabledTLSProtocols
  • explainSlowQueries
  • maxAllowedPacket
  • password
  • queryInterceptors
  • queryTimeoutKillsConnection
  • replicaSet
  • rewriteBatchedStatements
  • socketTimeout
  • ssl
  • sslMode
  • tcpKeepAlive
  • useCompression
  • useCursorFetch
  • useLocalSessionState
  • user
  • useServerPrepStmts
  • useSSL
  • verifyServerCertificate
  • zeroDateTimeBehavior

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

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

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

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

בנוסף: