מעבר מ-MongoBI ל-MongoSQL
עכשיו Looker תומך ב-MongoSQL, ומומלץ לעבור ל-MongoSQL מ-MongoDB Connector for BI.
בגלל ההבדלים בתחביר ה-SQL בין MongoDB Connector for BI (MongoBI) לבין MongoSQL, יכול להיות שתצטרכו לשנות את התחביר במודלים קיימים של LookML שמשתמשים בבלוקים של SQL בהתאמה אישית, בפורמט תאריך או בפונקציות של מסד נתונים. אל תעבירו חיבור קיים בסביבת הייצור ישירות ל-MongoSQL בלי לאמת קודם את קוד ה-LookML, כי זה עלול לשבש את לוחות הבקרה, את ה-Looks, את לוחות הזמנים או את ההתראות.
כדי לעבור באופן בטוח מ-MongoBI ל-MongoSQL, צריך לבצע את השלבים הבאים:
- במסמכי התיעוד של MongoDB, בקטע Transition from Atlas BI Connector to MongoSQL, תוכלו לקרוא על ההבדלים בתחביר ה-SQL בין MongoBI ל-MongoSQL.
- יוצרים חיבור חדש ל-MongoSQL ב-Looker כחיבור משני.
- ב-development branch חדש בפרויקט של LookML, מעדכנים את הפרמטר
connectionבקובץ המודל כך שיפנה לחיבור החדש ל-MongoSQL. - ב-SQL Runner, בודקים ומריצים שאילתות לדוגמה מ-Explores כדי לאמת את התחביר והתוצאות של השאילתות.
- מאמתים את הפרויקט והתוכן:
- משתמשים בכלי לאימות התוכן כדי לסרוק את כל מרכזי הבקרה והתצוגות ולחפש שדות או הפניות לא תקינים.
- משתמשים במאמת ה-SQL של Looker CI כדי לאמת את המאפיינים ב-Explores מול מסד הנתונים.
- אחרי שפותרים את כל שגיאות האימות, פורסים את השינויים בסביבת הייצור.
שימוש ב-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
- הפעלת MongoDB Connector for BI
- לאפשר שימוש בטבלאות נגזרות רגילות (מומלץ)
הוספת שרת Looker לרשימת הגישה של כתובות ה-IP ב-Atlas
ב-Atlas אפשר ליצור חיבורי לקוח רק מרשומות ברשימת הגישה לכתובות IP של הפרויקט. מוסיפים את כתובת ה-IP של Looker לרשימת הגישה של כתובות ה-IP בפרויקט Atlas:
- משיגים את כתובת ה-IP של Looker.
- פועלים לפי ההוראות להגדרת רשימת הגישה של כתובות ה-IP ב-Atlas כדי להוסיף את כתובת ה-IP של Looker לרשימת הגישה של כתובות ה-IP ב-Atlas.
הפעלת MongoDB Connector for BI
מפעילים את MongoDB Connector for BI:
- מוודאים שאתם נמצאים באשכול M10+.
- ב-Atlas, פותחים את הדף Connect של האשכול. רושמים את שם המארח, היציאה והמשתמש. תצטרכו להשתמש במידע הזה כשתגדירו את החיבור ב-Looker.
MongoDB באותו שרת
לפני שיוצרים חיבור ב-Looker, האדמין של MongoDB צריך להגדיר את MongoDB ואת Mongo Connector for BI לפי השלבים הבאים, שמוסברים בדף הזה:
- התקנת Mongo Connector for BI
- הצפנת תנועה ברשת
- הגדרת המשתמש וההרשאות ב-Looker
- מתן הרשאה לשימוש בטבלאות נגזרות רגילות (מומלץ)
התקנת Mongo Connector for BI
מתקינים את MongoDB Connector for BI באותו שרת שבו נמצא מסד הנתונים של MongoDB, כמו שמוסבר בדף התיעוד של MongoDB בנושא התקנת BI Connector On Premises.
הצפנת התנועה ברשת
כדי להשתמש ב-MongoDB Connector for 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, צריך להגדיר ב-Looker קובצי מנהל התקן של JDBC. כדי לעשות את זה:
מורידים את שני קובצי ה-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.jarlooker/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 בנושא הגדרת משתמשים במסד נתונים.
db.grantRolesToUser("looker", [ {role: "dbOwner", db: "looker_tmp"} ])
יצירת החיבור של Looker למסד הנתונים
כדי ליצור את החיבור בין Looker למסד הנתונים:
- בקטע Admin ב-Looker, בוחרים באפשרות Connections ולוחצים על Add Connection.
בתפריט הנפתח Dialect, בוחרים באפשרות MongoBI.
ממלאים את פרטי החיבור. רוב ההגדרות משותפות לרוב הניבים של מסדי הנתונים. מידע נוסף זמין בדף התיעוד קישור Looker למסד הנתונים.
כדי לוודא שהחיבור הצליח, לוחצים על הכפתור בדיקת החיבור בקטע פרטי הסטטוס בתחתית הדף הגדרות החיבור.
אם ב-Looker מוצגת ההודעה Can Connect, לוחצים על Connect כדי ליצור את החיבור.
החיבור למסד הנתונים יתווסף לרשימה בדף Admin (ניהול) בקטע Connections (חיבורים) ב-Looker.
שימוש בפונקציות ובאופרטורים של SQL עם MongoDB Connector for BI
כשמפתחים באמצעות חיבור של MongoDB Connector for BI, אפשר להשתמש בפונקציות ובאופרטורים של SQL שמפורטים במסמכי התיעוד של MongoDB.
פרמטרים נתמכים של JDBC
ב-MongoDB Connector for BI, Looker תומך בפרמטרים הבאים של JDBC בשדה Additional JDBC parameters של החיבור. מידע על הפרמטרים האלה מופיע במסמכי התיעוד של מסד הנתונים.
allowMultiQueriesappNameauthSourceautoReconnectcachePrepStmtscharacterEncodingconnectTimeoutconnectTimeoutMSelideSetAutoCommitsenabledSslProtocolSuitesenabledTLSProtocolsexplainSlowQueriesmaxAllowedPacketpasswordqueryInterceptorsqueryTimeoutKillsConnectionreplicaSetrewriteBatchedStatementssocketTimeoutsslsslModetcpKeepAliveuseCompressionuseCursorFetchuseLocalSessionStateuseruseServerPrepStmtsuseSSLverifyServerCertificatezeroDateTimeBehavior
תמיכה בתכונות
כדי ש-Looker יתמוך בתכונות מסוימות, גם הניב של מסד הנתונים צריך לתמוך בהן.
החל מגרסה 26.22 של Looker, MongoBI תומך בתכונות הבאות:
| תכונה | יש תמיכה? |
|---|---|
| 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 מצטברות | |
| אלפיות השנייה | |
| מיקרו-שניות | |
| תצוגות מהותיות | |
| מדדים להשוואה בין תקופות שונות | |
| ספירה משוערת של ערכים ייחודיים | |
| מודלים של ניתוח נתונים במסד הנתונים | |
| יומנים בהתאמה אישית |
בנוסף:
- ב-MongoDB אין תמיכה במסגרות זמן של אלפיות השנייה ומיקרו-שניות לקבוצות של מאפיינים.
- ב-MongoDB אין תמיכה בסוגי מילי-שנייה, millisecondX ומיקרו-שנייה למאפיינים.
- Looker מתייחס לכל חותמות הזמן שאליהן ניגשים מ-MongoBI כאילו הן באזור הזמן האוניברסלי המתואם (UTC).