במדריך הזה תיצרו צינור עיבוד נתונים בסטרימינג של Dataflow שמבצע טרנספורמציה של נתונים של מסחר אלקטרוני מנושאים וממינויים של Pub/Sub, ומייצא את הנתונים ל-BigQuery ול-Bigtable. במדריך הזה נדרש Gradle.
במדריך מוצגת אפליקציה לדוגמה של מסחר אלקטרוני מקצה לקצה, שמעבירה נתונים בסטרימינג מחנות אינטרנט אל BigQuery ו-Bigtable. באפליקציה לדוגמה מוצגים תרחישי שימוש נפוצים ושיטות מומלצות להטמעה של ניתוח נתוני סטרימינג ובינה מלאכותית (AI) בזמן אמת. במדריך הזה תלמדו איך להגיב באופן דינמי לפעולות של לקוחות כדי לנתח אירועים ולהגיב להם בזמן אמת. במדריך הזה מוסבר איך לאחסן ולנתח נתוני אירועים, ואיך להציג אותם בצורה ויזואלית כדי לקבל תובנות נוספות לגבי התנהגות הלקוחות.
אפליקציה לדוגמה זמינה ב-GitHub. כדי להריץ את המדריך הזה באמצעות Terraform, צריך לפעול לפי השלבים שמפורטים באפליקציה לדוגמה ב-GitHub.
מטרות
- לאמת את הנתונים הנכנסים ולבצע בהם תיקונים במידת האפשר.
- לנתח נתוני clickstream כדי לספור את מספר הצפיות בכל מוצר בתקופה נתונה. אחסון המידע הזה במאגר עם זמן אחזור נמוך. לאחר מכן, האפליקציה יכולה להשתמש בנתונים כדי להציג ללקוחות באתר הודעות עם מספר האנשים שצפו במוצר הזה.
שימוש בנתוני עסקאות כדי לקבל החלטות לגבי הזמנת מלאי:
- ניתוח נתוני העסקאות כדי לחשב את המספר הכולל של המכירות של כל פריט, גם בחנות וגם באופן גלובלי, לתקופה נתונה.
- תנתח את נתוני המלאי כדי לחשב את המלאי הנכנס של כל פריט.
- העברת הנתונים האלה למערכות מלאי באופן רציף, כדי שאפשר יהיה להשתמש בהם לקבלת החלטות לגבי רכישת מלאי.
לאמת את הנתונים הנכנסים ולבצע בהם תיקונים במידת האפשר. לכתוב נתונים שלא ניתן לתקן בתור להודעות שלא נמסרו, לצורך ניתוח ועיבוד נוספים. יצירת מדד שמייצג את אחוז הנתונים הנכנסים שנשלחים לתור ההודעות המתות, כך שיהיה אפשר לעקוב אחריו ולקבל התראות לגביו.
עיבוד כל הנתונים הנכנסים לפורמט סטנדרטי ואחסון שלהם במחסן נתונים לשימוש בניתוח והדמיה עתידיים.
לבצע דה-נורמליזציה של נתוני עסקאות של מכירות בחנות הפיזית, כדי שהם יוכלו לכלול מידע כמו קווי הרוחב והאורך של מיקום החנות. מספקים את פרטי החנות באמצעות טבלה שמשתנה לאט ב-BigQuery, כשמזהה החנות משמש כמפתח.
נתונים
האפליקציה מעבדת את סוגי הנתונים הבאים:
- נתוני קליקסטרים שנשלחים ממערכות אונליין אל Pub/Sub.
- נתוני עסקאות שנשלחים ממערכות מקומיות או ממערכות של תוכנה כשירות (SaaS) אל Pub/Sub.
- נתוני מלאי שנשלחים ממערכות מקומיות או ממערכות SaaS אל Pub/Sub.
דפוסי משימות
האפליקציה מכילה את דפוסי המשימות הנפוצים הבאים שמאפיינים צינורות שנוצרו באמצעות Apache Beam SDK for Java:
- סכימות של Apache Beam לעבודה עם נתונים מובְנים
JsonToRowכדי להמיר נתוני JSON- הכלי
AutoValueליצירת קוד כדי ליצור אובייקטים פשוטים של Java (POJO) - הוספת נתונים שלא ניתן לעבד לתור לצורך ניתוח נוסף
- טרנספורמציות של אימות נתונים סדרתיים
DoFn.StartBundleכדי לבצע קבוצות קטנות של שיחות לשירותים חיצוניים- תבניות של קלט צדדי
עלויות
במסמך הזה משתמשים ברכיבים הבאים של Google Cloud, והשימוש בהם כרוך בתשלום:
- BigQuery
- Bigtable
- Cloud Scheduler
- Compute Engine
- Dataflow
- Pub/Sub
כדי להעריך את ההוצאות בהתאם לתחזית השימוש שלכם, אתם יכולים להיעזר במחשבון העלויות.
כשמסיימים את המשימות שמתוארות במסמך הזה אפשר למחוק את המשאבים שיצרתם כדי להימנע מחיובים נוספים. מידע נוסף זמין בקטע הסרת המשאבים.
לפני שמתחילים
- נכנסים לחשבון Google Cloud . אם אתם משתמשים חדשים ב- Google Cloud, צרו חשבון כדי שתוכלו להעריך את הביצועים של המוצרים שלנו בתרחישים מהעולם האמיתי. לקוחות חדשים מקבלים בחינם גם קרדיט בשווי 300$ להרצה, לבדיקה ולפריסה של עומסי העבודה.
-
התקינו את ה-CLI של Google Cloud.
-
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
כדי לאתחל את ה-CLI של gcloud, הריצו את הפקודה הבאה:
gcloud init -
יוצרים או בוחרים Google Cloud פרויקט.
תפקידים שנדרשים כדי לבחור או ליצור פרויקט
- Select a project: כדי לבחור פרויקט לא צריך תפקיד IAM ספציפי – אפשר לבחור כל פרויקט שקיבלתם בו תפקיד.
-
יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד Project Creator (
roles/resourcemanager.projectCreator), שכולל את ההרשאהresourcemanager.projects.create. איך מקצים תפקידים
-
יוצרים Google Cloud פרויקט:
gcloud projects create PROJECT_ID
מחליפים את
PROJECT_IDבשם של פרויקט Google Cloud שיוצרים. -
בוחרים את הפרויקט שיצרתם: Google Cloud
gcloud config set project PROJECT_ID
מחליפים את
PROJECT_IDבשם הפרויקט ב- Google Cloud .
מפעילים את ממשקי ה-API של Compute Engine, Dataflow, Pub/Sub, BigQuery, Bigtable, Bigtable Admin ו-Cloud Scheduler, אם אחד מהם לא מופעל:
תפקידים שנדרשים להפעלת ממשקי API
כדי להפעיל ממשקי API, נדרשת ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידיםgcloud services enable compute.googleapis.com
dataflow.googleapis.com pubsub.googleapis.com bigquery.googleapis.com bigtable.googleapis.com bigtableadmin.googleapis.com cloudscheduler.googleapis.com -
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
מעניקים תפקידים לחשבון המשתמש. מריצים את הפקודה הבאה לכל אחד מהתפקידים הבאים ב-IAM:
roles/iam.serviceAccountUsergcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט. -
USER_IDENTIFIER: המזהה של חשבון המשתמש . לדוגמה,myemail@example.com. -
ROLE: תפקיד ה-IAM שאתם מקצים לחשבון המשתמש.
-
-
התקינו את ה-CLI של Google Cloud.
-
אם אתם משתמשים בספק זהויות חיצוני (IdP), קודם אתם צריכים להיכנס ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
כדי לאתחל את ה-CLI של gcloud, הריצו את הפקודה הבאה:
gcloud init -
יוצרים או בוחרים Google Cloud פרויקט.
תפקידים שנדרשים כדי לבחור או ליצור פרויקט
- Select a project: כדי לבחור פרויקט לא צריך תפקיד IAM ספציפי – אפשר לבחור כל פרויקט שקיבלתם בו תפקיד.
-
יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד Project Creator (
roles/resourcemanager.projectCreator), שכולל את ההרשאהresourcemanager.projects.create. איך מקצים תפקידים
-
יוצרים Google Cloud פרויקט:
gcloud projects create PROJECT_ID
מחליפים את
PROJECT_IDבשם של פרויקט Google Cloud שיוצרים. -
בוחרים את הפרויקט שיצרתם: Google Cloud
gcloud config set project PROJECT_ID
מחליפים את
PROJECT_IDבשם הפרויקט ב- Google Cloud .
מפעילים את ממשקי ה-API של Compute Engine, Dataflow, Pub/Sub, BigQuery, Bigtable, Bigtable Admin ו-Cloud Scheduler, אם אחד מהם לא מופעל:
תפקידים שנדרשים להפעלת ממשקי API
כדי להפעיל ממשקי API, נדרשת ההרשאה
serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידיםgcloud services enable compute.googleapis.com
dataflow.googleapis.com pubsub.googleapis.com bigquery.googleapis.com bigtable.googleapis.com bigtableadmin.googleapis.com cloudscheduler.googleapis.com -
יוצרים פרטי כניסה לאימות מקומי עבור חשבון המשתמש:
gcloud auth application-default login
אם מוחזרת שגיאת אימות ואתם משתמשים בספק זהויות חיצוני (IdP), ודאו ש נכנסתם ל-CLI של gcloud באמצעות המאגר המאוחד לניהול זהויות.
-
מעניקים תפקידים לחשבון המשתמש. מריצים את הפקודה הבאה לכל אחד מהתפקידים הבאים ב-IAM:
roles/iam.serviceAccountUsergcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
מחליפים את מה שכתוב בשדות הבאים:
-
PROJECT_ID: מזהה הפרויקט. -
USER_IDENTIFIER: המזהה של חשבון המשתמש . לדוגמה,myemail@example.com. -
ROLE: תפקיד ה-IAM שאתם מקצים לחשבון המשתמש.
-
יוצרים חשבון שירות חדש של Worker שמנוהל על ידי משתמש עבור צינור עיבוד הנתונים החדש, ומקצים לחשבון השירות את התפקידים הנדרשים.
כדי ליצור את חשבון השירות, מריצים את הפקודה
gcloud iam service-accounts create:gcloud iam service-accounts create retailpipeline \ --description="Retail app data pipeline worker service account" \ --display-name="Retail app data pipeline access"
נותנים לחשבון השירות תפקידים. מריצים את הפקודה הבאה לכל אחד מהתפקידים הבאים ב-IAM:
roles/dataflow.adminroles/dataflow.workerroles/pubsub.editorroles/bigquery.dataEditorroles/bigtable.adminroles/bigquery.jobUser
gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:retailpipeline@PROJECT_ID.iam.gserviceaccount.com" --role=SERVICE_ACCOUNT_ROLE
מחליפים את
SERVICE_ACCOUNT_ROLEבכל אחד מהתפקידים.נותנים לחשבון Google תפקיד שמאפשר ליצור אסימוני גישה לחשבון השירות:
gcloud iam service-accounts add-iam-policy-binding retailpipeline@PROJECT_ID.iam.gserviceaccount.com --member="user:EMAIL_ADDRESS" --role=roles/iam.serviceAccountTokenCreator
- אם צריך, מורידים ומתקינים את Gradle.
יצירת המקורות וה-sinks לדוגמה
בקטע הזה מוסבר איך ליצור את הפריטים הבאים:
- קטגוריה של Cloud Storage לשימוש כמיקום אחסון זמני
- מקורות נתונים בסטרימינג באמצעות Pub/Sub
- מערכי נתונים לטעינת הנתונים לתוך BigQuery
- מכונת Bigtable
יצירת קטגוריה של Cloud Storage
מתחילים ביצירת קטגוריה של Cloud Storage. המאגר הזה משמש כמיקום אחסון זמני על ידי צינור Dataflow.
משתמשים בפקודה gcloud storage buckets create:
gcloud storage buckets create gs://BUCKET_NAME --location=LOCATION
מחליפים את מה שכתוב בשדות הבאים:
- BUCKET_NAME: שם לקטגוריה של Cloud Storage שעומד בדרישות למתן שמות לקטגוריות. שמות של קטגוריות של Cloud Storage חייבים להיות ייחודיים באופן גלובלי.
- LOCATION: המיקום של הקטגוריה.
יצירת נושאים ומינויים ב-Pub/Sub
יוצרים ארבעה נושאים ב-Pub/Sub ואז יוצרים שלושה מינויים.
כדי ליצור את הנושאים, מריצים את הפקודה
gcloud pubsub topics create
פעם אחת לכל נושא. מידע על מתן שמות למינויים זמין במאמר הנחיות למתן שמות לנושאים או למינויים.
gcloud pubsub topics create TOPIC_NAME
מחליפים את TOPIC_NAME בערכים הבאים ומריצים את הפקודה ארבע פעמים, פעם לכל נושא:
Clickstream-inboundTransactions-inboundInventory-inboundInventory-outbound
כדי ליצור מינוי לנושא, מריצים את הפקודה gcloud pubsub subscriptions create פעם אחת לכל מינוי:
יצירת מינוי ל-
Clickstream-inbound-sub:gcloud pubsub subscriptions create --topic Clickstream-inbound Clickstream-inbound-subיצירת מינוי ל-
Transactions-inbound-sub:gcloud pubsub subscriptions create --topic Transactions-inbound Transactions-inbound-subיצירת מינוי ל-
Inventory-inbound-sub:gcloud pubsub subscriptions create --topic Inventory-inbound Inventory-inbound-sub
יצירת טבלאות ומערכי נתונים ב-BigQuery
יוצרים מערך נתונים ב-BigQuery וטבלה עם חלוקה למחיצות עם הסכימה המתאימה לנושא Pub/Sub.
משתמשים בפקודה
bq mkכדי ליצור את מערך הנתונים הראשון.bq --location=US mk \ PROJECT_ID:Retail_Storeיוצרים את מערך הנתונים השני.
bq --location=US mk \ PROJECT_ID:Retail_Store_Aggregationsמשתמשים בCREATE TABLE הצהרת SQL כדי ליצור טבלה עם סכימה ונתוני בדיקה. נתוני הבדיקה כוללים חנות אחת עם ערך המזהה
1. הטבלה הזו משמשת את תבנית הקלט הצדדי לעדכון איטי.bq query --use_legacy_sql=false \ 'CREATE TABLE Retail_Store.Store_Locations ( id INT64, city STRING, state STRING, zip INT64 ); INSERT INTO Retail_Store.Store_Locations VALUES (1, "a_city", "a_state",00000);'
יצירת טבלה ומופע Bigtable
יוצרים טבלה ומופע Bigtable. מידע נוסף על יצירת מופעים של Bigtable זמין במאמר בנושא יצירת מופע.
אם צריך, מריצים את הפקודה הבאה כדי להתקין את
cbtCLI:gcloud components install cbtמשתמשים בפקודה
bigtable instances createכדי ליצור מכונה:gcloud bigtable instances create aggregate-tables \ --display-name=aggregate-tables \ --cluster-config=id=aggregate-tables-c1,zone=CLUSTER_ZONE,nodes=1מחליפים את CLUSTER_ZONE בתחום שבו פועלת האשכול.
משתמשים בפקודה
cbt createtableכדי ליצור טבלה:cbt -instance=aggregate-tables createtable PageView5MinAggregatesכדי להוסיף קבוצת עמודות לטבלה, משתמשים בפקודה הבאה:
cbt -instance=aggregate-tables createfamily PageView5MinAggregates pageViewAgg
הרצת צינור עיבוד הנתונים
שימוש ב-Gradle להפעלת צינור עיבוד נתונים בסטרימינג. כדי לראות את קוד ה-Java שצינור עיבוד הנתונים משתמש בו, אפשר לעיין ב-RetailDataProcessingPipeline.java.
משתמשים בפקודה
git cloneכדי לשכפל את מאגר GitHub:git clone https://github.com/GoogleCloudPlatform/dataflow-sample-applications.gitעוברים לספריית האפליקציה:
cd dataflow-sample-applications/retail/retail-java-applicationsכדי לבדוק את צינור הנתונים, מריצים את הפקודה הבאה באמצעות Gradle בשורת הפקודה או בטרמינל:
./gradlew :data-engineering-dept:pipelines:test --tests RetailDataProcessingPipelineSimpleSmokeTest --info --rerun-tasksכדי להריץ את צינור העיבוד, מריצים את הפקודה הבאה באמצעות Gradle:
./gradlew tasks executeOnDataflow -Dexec.args=" \ --project=PROJECT_ID \ --tempLocation=gs://BUCKET_NAME/temp/ \ --runner=DataflowRunner \ --region=REGION \ --clickStreamPubSubSubscription=projects/PROJECT_ID/subscriptions/Clickstream-inbound-sub \ --transactionsPubSubSubscription=projects/PROJECT_ID/subscriptions/Transactions-inbound-sub \ --inventoryPubSubSubscriptions=projects/PROJECT_ID/subscriptions/Inventory-inbound-sub \ --aggregateStockPubSubOutputTopic=projects/PROJECT_ID/topics/Inventory-outbound \ --dataWarehouseOutputProject=PROJECT_ID \ --serviceAccount=retailpipeline.PROJECT_ID.iam.gserviceaccount.com"
אפשר לראות את קוד המקור של צינור העיבוד ב-GitHub.
יצירה והרצה של משימות Cloud Scheduler
יוצרים ומריצים שלוש משימות של Cloud Scheduler: אחת לפרסום נתוני קליקסטרים, אחת לנתוני מלאי ואחת לנתוני עסקאות. בשלב הזה נוצרים נתונים לדוגמה עבור צינור העיבוד.
כדי ליצור משימה של Cloud Scheduler לצורך המדריך הזה, משתמשים בפקודה
gcloud scheduler jobs create. בשלב הזה נוצרת ישות Publisher לנתוני clickstream, שמפרסמת הודעה אחת בכל דקה.gcloud scheduler jobs create pubsub clickstream \ --schedule="* * * * *" \ --location=LOCATION \ --topic="Clickstream-inbound" \ --message-body='{"uid":464670,"sessionId":null,"returning":false,"lat":39.669082,"lng":-80.312306,"agent":"Mozilla/5.0 (iPad; CPU OS 12_2 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148;","event":"add-to-cart","transaction":false,"timestamp":1660091197071,"ecommerce":{"items":[{"item_name":"Donut Friday Scented T-Shirt","item_id":"67890","price":33.75,"item_brand":"Google","item_category":"Apparel","item_category_2":"Mens","item_category_3":"Shirts","item_category_4":"Tshirts","item_variant":"Black","item_list_name":"Search Results","item_list_id":"SR123","index":1,"quantity":2}]},"user_id":74378,"client_id":"52393559","page_previous":"P_3","page":"P_3","event_datetime":"2022-08-10 12:26:37"}'כדי להפעיל את המשימה של Cloud Scheduler, משתמשים בפקודה
gcloud scheduler jobs run.gcloud scheduler jobs run --location=LOCATION clickstreamיוצרים ומריצים עוד בעל תוכן דיגיטלי דומה לנתוני מלאי ששולח הודעה אחת כל שתי דקות.
gcloud scheduler jobs create pubsub inventory \ --schedule="*/2 * * * *" \ --location=LOCATION \ --topic="Inventory-inbound" \ --message-body='{"count":1,"sku":0,"aisleId":0,"product_name":null,"departmentId":0,"price":null,"recipeId":null,"image":null,"timestamp":1660149636076,"store_id":1,"product_id":10050}'מריצים את המשימה השנייה ב-Cloud Scheduler.
gcloud scheduler jobs run --location=LOCATION inventoryיוצרים ומריצים בעל תוכן דיגיטלי שלישי לנתוני עסקאות שמפרסם הודעה אחת כל שתי דקות.
gcloud scheduler jobs create pubsub transactions \ --schedule="*/2 * * * *" \ --location=LOCATION \ --topic="Transactions-inbound" \ --message-body='{"order_number":"b8be9222-990d-11ea-9c05-42010af00081","user_id":998685,"store_id":1,"returning":false,"time_of_sale":0,"department_id":0,"product_id":4,"product_count":1,"price":25.0,"order_id":0,"order_dow":0,"order_hour_of_day":0,"order_woy":0,"days_since_prior_order":null,"product_name":null,"product_sku":0,"image":null,"timestamp":1660157951000,"ecommerce":{"items":[{"item_name":"Donut Friday Scented T-Shirt","item_id":"67890","price":33.75,"item_brand":"Google","item_category":"Apparel","item_category_2":"Mens","item_category_3":"Shirts","item_category_4":"Tshirts","item_variant":"Black","item_list_name":"Search Results","item_list_id":"SR123","index":1,"quantity":2}]},"client_id":"1686224283","page_previous":null,"page":null,"event_datetime":"2022-08-10 06:59:11"}'מריצים את המשימה השלישית ב-Cloud Scheduler.
gcloud scheduler jobs run --location=LOCATION transactions
צפייה בתוצאות
צפייה בנתונים שנכתבו בטבלאות BigQuery. כדי לבדוק את התוצאות ב-BigQuery, מריצים את השאילתות הבאות. בזמן שהצינור הזה פועל, אפשר לראות שורות חדשות שמתווספות לטבלאות ב-BigQuery מדי דקה.
יכול להיות שתצטרכו לחכות עד שהטבלאות יתמלאו בנתונים.
bq query --use_legacy_sql=false 'SELECT * FROM `'"PROJECT_ID.Retail_Store.clean_inventory_data"'`'
bq query --use_legacy_sql=false 'SELECT * FROM `'"PROJECT_ID.Retail_Store.clean_transaction_data"'`'
הסרת המשאבים
כדי להימנע מחיובים בחשבון Google Cloud בגלל השימוש במשאבים שנעשה במסגרת המדריך הזה, אפשר למחוק את הפרויקט שמכיל את המשאבים, או להשאיר את הפרויקט ולמחוק את המשאבים בנפרד.
מחיקת הפרויקט
הדרך הקלה ביותר לבטל את החיוב היא למחוק את Google Cloud הפרויקט שיצרתם בשביל המדריך.
- במסוף Google Cloud , נכנסים לדף Manage resources.
- ברשימת הפרויקטים, בוחרים את הפרויקט שרוצים למחוק ולוחצים על Delete.
- כדי למחוק את הפרויקט, כותבים את מזהה הפרויקט בתיבת הדו-שיח ולוחצים על Shut down.
מחיקת המשאבים הבודדים
אם רוצים להשתמש שוב בפרויקט, צריך למחוק את המשאבים שיצרתם בשביל המדריך.
מחיקת משאבי הפרויקט Google Cloud
כדי למחוק את המשימות של Cloud Scheduler, משתמשים בפקודה
gcloud scheduler jobs delete.gcloud scheduler jobs delete transactions --location=LOCATIONgcloud scheduler jobs delete inventory --location=LOCATIONgcloud scheduler jobs delete clickstream --location=LOCATIONכדי למחוק את המינויים והנושאים ב-Pub/Sub, משתמשים בפקודות
gcloud pubsub subscriptions deleteו-gcloud pubsub topics delete.gcloud pubsub subscriptions delete SUBSCRIPTION_NAME gcloud pubsub topics delete TOPIC_NAMEכדי למחוק את הטבלה ב-BigQuery, משתמשים בפקודה
bq rm.bq rm -f -t PROJECT_ID:Retail_Store.Store_Locationsמוחקים את מערכי הנתונים ב-BigQuery. אין חיובים על מערך הנתונים עצמו.
bq rm -r -f -d PROJECT_ID:Retail_Storebq rm -r -f -d PROJECT_ID:Retail_Store_Aggregationsכדי למחוק את מופע Bigtable, משתמשים בפקודה
cbt deleteinstance. השימוש בדלי עצמו לא כרוך בחיובים.cbt deleteinstance aggregate-tablesכדי למחוק את הקטגוריה של Cloud Storage ואת האובייקטים שבה, משתמשים בפקודה
gcloud storage rm. השימוש בדלי עצמו לא כרוך בחיובים.gcloud storage rm gs://BUCKET_NAME --recursive
ביטול פרטי הכניסה
מבטלים את התפקידים שהקציתם לחשבון השירות של העובד שנוהל על ידי המשתמש. מריצים את הפקודה הבאה לכל אחד מהתפקידים הבאים ב-IAM:
roles/dataflow.adminroles/dataflow.workerroles/pubsub.editorroles/bigquery.dataEditorroles/bigtable.adminroles/bigquery.jobUser
gcloud projects remove-iam-policy-binding PROJECT_ID \ --member=serviceAccount:retailpipeline@PROJECT_ID.iam.gserviceaccount.com \ --role=ROLE
-
אם תרצו, תוכלו לבטל את פרטי הכניסה שיצרתם ולמחוק את הקובץ המקומי של פרטי הכניסה.
gcloud auth application-default revoke
-
אם רוצים, מבטלים את פרטי הכניסה של ה-CLI של gcloud.
gcloud auth revoke
המאמרים הבאים
- אפשר לראות את האפליקציה לדוגמה ב-GitHub.
- מומלץ לקרוא את הפוסט בבלוג בנושא Learn Beam patterns with Clickstream processing of Google Tag Manager data (לימוד דפוסי Beam באמצעות עיבוד נתוני Clickstream מ-Google Tag Manager).
- אפשר לקרוא על שימוש ב-Pub/Sub כדי ליצור נושאים ולהשתמש בהם וגם להשתמש במינויים.
- מידע נוסף על יצירת מערכי נתונים באמצעות BigQuery
- כדאי להעמיק את הקריאה ולהכיר דוגמאות לארכיטקטורות, תרשימים ושיטות מומלצות בנושאי Google Cloud. כל אלה זמינים במרכז הארכיטקטורה של Cloud.