הצפנה של תנועה ברשת
מומלץ להצפין את תעבורת הנתונים ברשת בין אפליקציית Looker לבין מסד הנתונים. כדאי לשקול אחת מהאפשרויות שמתוארות בדף הפעלת גישה מאובטחת למסד נתונים.
אם אתם רוצים להשתמש בהצפנת SSL, תוכלו לעיין במסמכי התיעוד של MySQL RDS.
אפשרויות
מטעמי ביצועים, נהוג להשתמש ב-Looker במסדי נתונים משוכפלים לקריאה בלבד – שנקראים גם עותקים לקריאה. כך מסד הנתונים של הייצור יכול לבצע את הפונקציה העיקרית שלו בלי ששאילתות יאטו אותו.
במאמר הזה מוסבר איך:
- שינוי של מסד נתונים קיים של רפליקה כדי לעבוד עם Looker
- יצירת מסד נתונים חדש של רפליקת קריאה והגדרתו לעבודה עם Looker
שינוי של עותק קיים
משתמשים ואבטחה
משנים את <some_password_here> לסיסמה ייחודית ומאובטחת:
CREATE USER looker;
SET PASSWORD FOR looker = PASSWORD ('<some_password_here>');
GRANT SELECT ON database_name.* TO 'looker'@'%';
RDS וטבלאות זמניות
ברפליקות לקריאה בלבד של RDS, מופעל כברירת מחדל דגל קריאה בלבד שמונע מ-Looker לכתוב לטבלאות זמניות. Looker אף פעם לא משנה נתונים קיימים, אבל MySQL עדיין דורש הרשאת כתיבה כדי להשתמש בטבלאות זמניות. כדי לפתור את הבעיה, צריך לשנות את הדגל ב-RDS. מתוך שאלות נפוצות בנושא RDS:
ש': האם העתקים לקריאה יכולים לקבל רק פעולות קריאה של מסד נתונים?
העתקים לקריאה נועדו לטפל בתנועת קריאה. עם זאת, יכולים להיות תרחישי שימוש שבהם משתמשים מתקדמים ירצו להשלים הצהרות SQL של שפת הגדרת נתונים (DDL) מול עותק לקריאה. לדוגמה, אפשר להוסיף אינדקס למסד נתונים לעותק לקריאה שמשמש לדיווח עסקי, בלי להוסיף את אותו אינדקס למופע מסד הנתונים המקביל של המקור.
אפשר להגדיר את Amazon RDS ל-MySQL כך שיאפשר הצהרות DDL SQL לגבי העתק לקריאה. אם רוצים להפעיל פעולות אחרות מלבד קריאות עבור עותק לקריאה נתון, צריך לשנות את קבוצת הפרמטרים הפעילה של מסד הנתונים עבור העותק לקריאה, ולהגדיר את הפרמטר read_only לערך 0.
בשלב הזה, Amazon RDS ל-PostgreSQL לא תומך בהרצה של הצהרות DDL SQL מול עותק לקריאה.
אם משנים את קבוצת הפרמטרים של מסד הנתונים, צריך להפעיל מחדש את העותק לקריאה כדי שהשינויים ייכנסו לתוקף.
יצירת מסד נתונים והענקת הרשאות
יוצרים מסד נתונים זמני ומעניקים למשתמש looker הרשאות כתיבה בו. ההצהרה CREATE TEMPORARY ב-MySQL צריכה להיות משויכת למסד נתונים למטרות הרשאה.
CREATE SCHEMA looker_tmp;
GRANT
SELECT,
INDEX,
INSERT,
UPDATE,
DELETE,
CREATE,
DROP,
ALTER,
CREATE TEMPORARY TABLES
ON looker_tmp.* TO 'looker'@'%';
יצירת עותק חדש
חשוב לדעת: ב-AWS RDS אפשר ליצור עותקים לקריאה רק עם מופעי מסד נתונים שמופעל בהם שמירת גיבויים.
שלבים מקדימים ב-AWS
שלב 1
mysql אל מסד הנתונים שיהיה מופע מסד הנתונים הראשי:
mysql -h hostname.uid.region.rds.amazonaws.com -P 3306 -u root -p
שלב 2
יוצרים משתמש בשם looker (מחליפים את <some_password_here> בסיסמה ייחודית ומאובטחת):
CREATE USER looker IDENTIFIED BY '<some_password_here>';
שלב 3
יוצרים מסד נתונים זמני ומעניקים ל-Looker הרשאות קריאה למסדי נתונים ולטבלאות אחרים. בדרך כלל, Looker לא כותב לתוך מסד הנתונים looker_tmp, אלא משתמש בו כדי להריץ פקודות CREATE TEMPORARY TABLE.
CREATE SCHEMA looker_tmp;
GRANT
SELECT,
INDEX,
INSERT,
UPDATE,
DELETE,
CREATE,
DROP,
ALTER,
CREATE TEMPORARY TABLES
ON looker_tmp.* TO 'looker'@'%';
GRANT
SELECT,
SHOW DATABASES
ON *.* TO 'looker'@'%';
שלב 4
ניקוי ההרשאות:
FLUSH PRIVILEGES;
שלבים ב-AWS
שלב 1
מתחברים ועוברים ללוח הבקרה של AWS. בקטע Database, בוחרים באפשרות RDS.

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

שלב 3
בחלון הקופץ Create Read Replica DB Instance (יצירת מופע מסד נתונים של העתקה לקריאה), מגדירים את מסד הנתונים של ההעתקה לקריאה ולוחצים על Yes, Create Read Replica (כן, יצירת העתקה לקריאה).

שלב 4
בזמן שמחכים ליצירת מסד הנתונים של העותק לקריאה, אפשר להגדיר את קבוצת הפרמטרים של מסד הנתונים, שתכיל את ערכי ההגדרה של המנוע שיוחלו על מופע מסד הנתונים של העותק לקריאה. בסרגל הצד, בוחרים בדף DB Parameter Groups (קבוצות פרמטרים של מסד נתונים) ואז בלחצן Create DB Parameter Group (יצירת קבוצת פרמטרים של מסד נתונים).

שלב 5
בוחרים באפשרות DB Parameter Group Family (משפחה של קבוצות פרמטרים של מסד נתונים) ובאפשרות DB Parameter Group Name (שם של קבוצת פרמטרים של מסד נתונים), ומזינים DB Parameter Group Description (תיאור של קבוצת פרמטרים של מסד נתונים). לאחר מכן לוחצים על כן, יצירה.
שלב 6
לוחצים על סמל זכוכית המגדלת בשורה שמכילה את קבוצת הפרמטרים של מסד הנתונים של העותק לקריאה, או בוחרים את השורה הזו ולוחצים על עריכת פרמטרים.
Step 7
בשדה Filters (מסננים) בקטע Parameters (פרמטרים), מחפשים את read_only. משנים את ערך הפרמטר ל-0. לאחר מכן לוחצים על שמירת השינויים.
שלב 8
אחרי שנוצר העותק לקריאה, בוחרים אותו מרשימת מופעי מסד הנתונים, לוחצים על הלחצן Instance Action (פעולת מופע) ובוחרים באפשרות Modify (שינוי) בפעולת המופע.
שלב 9
בחלון הקופץ Modify DB Instance, משנים את Parameter Group של מופע מסד הנתונים לקבוצת הפרמטרים החדשה של העותק לקריאה. אחר כך מסמנים את התיבה החלה מיידית, לוחצים על המשך ובוחרים באפשרות שינוי של מופע מסד הנתונים.
שלב 10
באמצעות לקוח MySQL, מתחברים למופע מסד הנתונים של העותק לקריאה בתור looker ובודקים אם יש גישה לנתונים.
יצירת חיבור Looker למסד הנתונים
בקטע ניהול ב-Looker, בוחרים באפשרות חיבורים ואז לוחצים על הוספת חיבור.
ממלאים את פרטי החיבור. רוב ההגדרות משותפות לרוב הניבים של מסדי הנתונים. מידע נוסף זמין בדף חיבור Looker למסד הנתונים.
כדי לוודא שהחיבור בוצע בהצלחה, לוחצים על הלחצן בדיקת החיבור בקטע פרטי הסטטוס בחלק התחתון של הדף הגדרות החיבורים.
אם ב-Looker מוצגת האפשרות Can Connect (אפשר להתחבר), לוחצים על Connect (התחברות) כדי ליצור את החיבור.
החיבור למסד הנתונים יתווסף לרשימה בדף Connections Admin ב-Looker.
פרמטרים נתמכים של JDBC
ב-Amazon RDS for MySQL, Looker תומך בפרמטרים הבאים של JDBC בשדה Additional JDBC parameters של החיבור. מידע על הפרמטרים האלה מופיע במאמרי העזרה של מסד הנתונים.
allowMultiQueriesautocommitcharacterSetResultsclientCertificateKeyStorePasswordclientCertificateKeyStoreUrlconnectionAttributesconnectionCollationconnectionTimeZoneconnectTimeoutdefaultAuthenticationPlugindisableSslHostnameVerificationdisconnectOnExpiredPasswordsenabledSslCipherSuitesfailOverReadOnlyfallbackToSystemTrustStoreforceConnectionTimeZoneToSessioninteractiveClientlookerFailovermaxIdleTimemaxQuerySizeToLogoldModeNoPrecisionTimestamppasswordpasswordCharacterEncodingpermitMysqlSchemepinGlobalTxToPhysicalConnectionpreserveInstantsqueryInterceptorsrestrictedAuthrewriteBatchedStatementssocketTimeoutsslModetcpKeepAlivetrustCertificateKeyStorePasswordtrustCertificateKeyStoreUrluseCompressionusePipelineAuthuseruseServerPrepStmtsverifyServerCertificateyearIsDateType
תמיכה בתכונות
כדי ש-Looker יתמוך בתכונות מסוימות, הדיאלקט של מסד הנתונים צריך לתמוך בהן גם כן.
החל מגרסה Looker 26.18, MySQL תומך בתכונות הבאות:
| התכונה | נתמך? |
|---|---|
| Looker (Google Cloud core) | |
| צבירה סימטרית | |
| טבלאות נגזרות | |
| טבלאות נגזרות מתמידות שמבוססות על SQL | |
| טבלאות נגזרות מתמידות מבוססות LookML | |
| תצוגות יציבות | |
| ביטול שאילתות | |
| טבלאות ציר שמבוססות על SQL | |
| אזורי זמן | |
| SSL | |
| סיכומי ביניים | |
| פרמטרים נוספים של JDBC | |
| תלוי אותיות רישיות | |
| סוג מיקום | |
| סוג הרשימה | |
| מאון | |
| אחוזון ייחודי | |
| SQL Runner Show Processes | |
| SQL Runner Describe Table | |
| SQL Runner Show Indexes | |
| SQL Runner Select 10 | |
| מספר המשתמשים ב-SQL Runner | |
| הסבר על SQL | |
| פרטי כניסה של OAuth 2.0 | |
| תגובות להוספת הקשר | |
| איגום חיבורים | |
| סקיצות HLL | |
| מודעות מצטברת | |
| PDT מצטברות | |
| אלפיות השנייה | |
| מיקרו-שניות | |
| תצוגות מהותיות | |
| מדדים של השוואה בין תקופות שונות | |
| ספירה משוערת של ערכים ייחודיים | |
| מודלים אנליטיים במסד הנתונים | |
| יומנים בהתאמה אישית |