הרצת שאילתות במערך נתונים ציבורי באמצעות ספריות הלקוח של BigQuery
איך מריצים שאילתות במערך נתונים ציבורי באמצעות ספריות הלקוח של BigQuery
כדי לקבל הסבר מפורט על המשימה ישירות במסוףCloud de Confiance , בוחרים את שפת התכנות המועדפת:
C#
Go
Java
Node.js
PHP
Python
Ruby
לפני שמתחילים
-
Create or select a Cloud de Confiance project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Create a Cloud de Confiance project:
gcloud projects create PROJECT_ID
Replace
PROJECT_IDwith a name for the Cloud de Confiance project you are creating. -
Select the Cloud de Confiance project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_IDwith your Cloud de Confiance project name.
-
בוחרים אם להשתמש ב-Sandbox של BigQuery ללא תשלום או להפעיל חיוב עבור הפרויקט Cloud de Confiance .
אם לא מפעילים חיוב בפרויקט, המערכת מעבירה אתכם אוטומטית ל-Sandbox של BigQuery. ארגז החול של BigQuery מאפשר לכם ללמוד על BigQuery באמצעות קבוצה מוגבלת של תכונות BigQuery ללא תשלום. אם אתם לא מתכננים להשתמש בפרויקט מעבר למה שמתואר במסמך הזה, מומלץ להשתמש ב-Sandbox של BigQuery.
-
Grant roles to your user account. Run the following command once for each of the following IAM roles:
roles/serviceusage.serviceUsageAdmin, roles/bigquery.jobUsergcloud projects add-iam-policy-binding PROJECT_ID --member="user:USER_IDENTIFIER" --role=ROLE
Replace the following:
PROJECT_ID: Your project ID.USER_IDENTIFIER: The identifier for your user account. For examples, see Represent workforce pool users in IAM policies.ROLE: The IAM role that you grant to your user account.
-
Enable the BigQuery API:
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.gcloud services enable bigquery
בפרויקטים חדשים, BigQuery API מופעל באופן אוטומטי.
-
In the Cloud de Confiance console, activate Cloud Shell.
מפעילים את Cloud de Confiance הפרויקט ב-Cloud Shell:
gcloud config set project PROJECT_IDמחליפים את PROJECT_ID בפרויקט שבחרתם להדרכה הזו.
הפלט אמור להיראות כך:
Updated property [core/project].
ב-Cloud Shell, יוצרים פרויקט וקובץ חדשים של C#:
dotnet new console -n BigQueryCsharpDemo
הפלט אמור להיראות כך: כדי לפשט את הפלט, השמטנו כמה שורות.
Welcome to .NET 6.0! --------------------- SDK Version: 6.0.407 ... The template "Console App" was created successfully. ...
הפקודה הזו יוצרת פרויקט C# בשם
BigQueryCsharpDemoוקובץ בשםProgram.cs.פותחים את Cloud Shell Editor:
cloudshell workspace BigQueryCsharpDemo
כדי לפתוח טרמינל ב-Cloud Shell Editor, לוחצים על Open Terminal.
פותחים את ספריית הפרויקט:
cd BigQueryCsharpDemo
מתקינים את ספריית הלקוח של BigQuery ל-C#:
dotnet add package Google.Cloud.BigQuery.V2
הפלט אמור להיראות כך: כדי לפשט את הפלט, השמטנו כמה שורות.
Determining projects to restore... Writing /tmp/tmpF7EKSd.tmp ... info : Writing assets file to disk. ...
מגדירים את המשתנה
GOOGLE_PROJECT_IDלערךGOOGLE_CLOUD_PROJECTומייצאים את המשתנה:export GOOGLE_PROJECT_ID=$GOOGLE_CLOUD_PROJECT
לוחצים על פתיחת הכלי לעריכה.
בחלונית Explorer, מאתרים את הפרויקט
BIGQUERYCSHARPDEMO.לוחצים על הקובץ
Program.csכדי לפתוח אותו.כדי ליצור שאילתה מול מערך הנתונים
bigquery-public-data.stackoverflowשמחזירה את 10 הדפים הכי נצפים ב-Stack Overflow ואת מספר הצפיות שלהם, מחליפים את התוכן של הקובץ בקוד הבא:לוחצים על Open Terminal (פתיחת הטרמינל).
במסוף, מריצים את הסקריפט
Program.cs. אם מתבקשים לאשר את Cloud Shell ולהסכים לתנאים, לוחצים על Authorize (אישור).dotnet runהתוצאה אמורה להיראות כך:
Query Results: ------------ https://stackoverflow.com/questions/35159967: 170023 views https://stackoverflow.com/questions/22879669: 142581 views https://stackoverflow.com/questions/10604135: 132406 views https://stackoverflow.com/questions/44564887: 128781 views https://stackoverflow.com/questions/27060396: 127008 views https://stackoverflow.com/questions/12482637: 120766 views https://stackoverflow.com/questions/20673986: 115720 views https://stackoverflow.com/questions/39109817: 108368 views https://stackoverflow.com/questions/11057219: 105175 views https://stackoverflow.com/questions/43195143: 101878 views
ב-Cloud Shell, יוצרים פרויקט וקובץ חדשים של Go:
mkdir bigquery-go-quickstart \ && touch \ bigquery-go-quickstart/app.go
הפקודה הזו יוצרת פרויקט Go בשם
bigquery-go-quickstartוקובץ בשםapp.go.פותחים את Cloud Shell Editor:
cloudshell workspace bigquery-go-quickstart
כדי לפתוח טרמינל ב-Cloud Shell Editor, לוחצים על Open Terminal.
פותחים את ספריית הפרויקט:
cd bigquery-go-quickstart
יוצרים קובץ
go.mod:go mod init quickstart
הפלט אמור להיראות כך:
go: creating new go.mod: module quickstart go: to add module requirements and sums: go mod tidyמתקינים את ספריית הלקוח של BigQuery ל-Go:
go get cloud.google.com/go/bigquery
הפלט אמור להיראות כך: כדי לפשט את הפלט, השמטנו כמה שורות.
go: downloading cloud.google.com/go/bigquery v1.49.0 go: downloading cloud.google.com/go v0.110.0 ... go: added cloud.google.com/go/bigquery v1.49.0 go: added cloud.google.com/go v0.110.0
לוחצים על פתיחת הכלי לעריכה.
בחלונית Explorer, מאתרים את הפרויקט
BIGQUERY-GO-QUICKSTART.לוחצים על הקובץ
app.goכדי לפתוח אותו.כדי ליצור שאילתה על מערך הנתונים
bigquery-public-data.stackoverflowשמחזירה את 10 הדפים הנצפים ביותר ב-Stack Overflow ואת מספר הצפיות שלהם, מעתיקים את הקוד הבא לקובץapp.go:לוחצים על Open Terminal (פתיחת הטרמינל).
במסוף, מריצים את הסקריפט
app.go. אם מתבקשים לאשר את Cloud Shell ולהסכים לתנאים, לוחצים על Authorize (אישור).go run app.go
התוצאה אמורה להיראות כך:
https://stackoverflow.com/questions/35159967 : 170023 views https://stackoverflow.com/questions/22879669 : 142581 views https://stackoverflow.com/questions/10604135 : 132406 views https://stackoverflow.com/questions/44564887 : 128781 views https://stackoverflow.com/questions/27060396 : 127008 views https://stackoverflow.com/questions/12482637 : 120766 views https://stackoverflow.com/questions/20673986 : 115720 views https://stackoverflow.com/questions/39109817 : 108368 views https://stackoverflow.com/questions/11057219 : 105175 views https://stackoverflow.com/questions/43195143 : 101878 views
ב-Cloud Shell, יוצרים פרויקט Java חדש באמצעות Apache Maven:
mvn archetype:generate \ -DgroupId=com.google.app \ -DartifactId=bigquery-java-quickstart \ -DinteractiveMode=false
הפקודה הזו יוצרת פרויקט Maven בשם
bigquery-java-quickstart.הפלט אמור להיראות כך: כדי לפשט את הפלט, השמטנו כמה שורות.
[INFO] Scanning for projects... ... [INFO] Building Maven Stub Project (No POM) 1 ... [INFO] BUILD SUCCESS ...
יש הרבה מערכות לניהול תלות שאפשר להשתמש בהן חוץ מ-Maven. מידע נוסף על הגדרת סביבת פיתוח בשפת Java לשימוש בספריות לקוח
משנים את השם של הקובץ
App.javaשנוצר כברירת מחדל על ידי Maven:mv \ bigquery-java-quickstart/src/main/java/com/google/app/App.java \ bigquery-java-quickstart/src/main/java/com/google/app/SimpleApp.java
פותחים את Cloud Shell Editor:
cloudshell workspace bigquery-java-quickstart
אם מוצגת בקשה לסנכרן את נתיב המחלקה או את ההגדרה של Java, לוחצים על תמיד.
אם לא מוצגת לכם הנחיה ואתם נתקלים בשגיאה שקשורה לנתיב המחלקה במהלך ההסבר המפורט הזה, אתם צריכים לפעול באופן הבא:
- לוחצים על קובץ > העדפות > פתיחת הגדרות (ממשק משתמש).
- לוחצים על תוספים > Java.
- גוללים אל Configuration: Update Build Configuration ובוחרים באפשרות automatic.
בחלונית Explorer, מאתרים את הפרויקט
BIGQUERY-JAVA-QUICKSTART.לוחצים על הקובץ
pom.xmlכדי לפתוח אותו.בתוך התג
<dependencies>, מוסיפים את יחסי התלות הבאים אחרי יחסי תלות קיימים. לא להחליף תלות קיימת.<dependency> <groupId>com.google.cloud</groupId> <artifactId>google-cloud-bigquery</artifactId> </dependency>בשורה שאחרי תג הסגירה (
</dependencies>), מוסיפים את השורה הבאה:<dependencyManagement> <dependencies> <dependency> <groupId>com.google.cloud</groupId> <artifactId>libraries-bom</artifactId> <version>26.1.5</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement>בחלונית Explorer, בפרויקט
BIGQUERY-JAVA-QUICKSTART, לוחצים על src > main/java/com/google/app > SimpleApp.java. הקובץ ייפתח.כדי ליצור שאילתה על מערך הנתונים
bigquery-public-data.stackoverflow, משאירים את השורה הראשונה בקובץ (package com.google.app;) ומחליפים את שאר התוכן בקובץ בקוד הבא:השאילתה מחזירה את 10 הדפים הנצפים ביותר ב-Stack Overflow ואת מספר הצפיות שלהם.
לוחצים לחיצה ימנית על SimpleApp.java ואז על Run Java. אם מתבקשים לאשר את Cloud Shell ומסכימים לתנאים, לוחצים על Authorize.
התוצאה אמורה להיראות כך:
https://stackoverflow.com/questions/35159967 : 170023 views https://stackoverflow.com/questions/22879669 : 142581 views https://stackoverflow.com/questions/10604135 : 132406 views https://stackoverflow.com/questions/44564887 : 128781 views https://stackoverflow.com/questions/27060396 : 127008 views https://stackoverflow.com/questions/12482637 : 120766 views https://stackoverflow.com/questions/20673986 : 115720 views https://stackoverflow.com/questions/39109817 : 108368 views https://stackoverflow.com/questions/11057219 : 105175 views https://stackoverflow.com/questions/43195143 : 101878 views
ב-Cloud Shell, יוצרים פרויקט וקובץ חדשים של Node.js:
mkdir bigquery-node-quickstart \ && touch \ bigquery-node-quickstart/app.js
הפקודה הזו יוצרת פרויקט Node.js בשם
bigquery-node-quickstartוקובץ בשםapp.js.פותחים את Cloud Shell Editor:
cloudshell workspace bigquery-node-quickstart
כדי לפתוח טרמינל ב-Cloud Shell Editor, לוחצים על Open Terminal.
פותחים את ספריית הפרויקט:
cd bigquery-node-quickstart
מתקינים את ספריית הלקוח של BigQuery ל-Node.js:
npm install @google-cloud/bigquery
הפלט אמור להיראות כך:
added 63 packages in 2s
לוחצים על פתיחת הכלי לעריכה.
בחלונית Explorer, מאתרים את הפרויקט
BIGQUERY-NODE-QUICKSTART.לוחצים על הקובץ
app.jsכדי לפתוח אותו.כדי ליצור שאילתה על מערך הנתונים
bigquery-public-data.stackoverflowשמחזירה את 10 הדפים הנצפים ביותר ב-Stack Overflow ואת מספר הצפיות שלהם, מעתיקים את הקוד הבא לקובץapp.js:לוחצים על Open Terminal (פתיחת הטרמינל).
במסוף, מריצים את הסקריפט
app.js. אם מתבקשים לאשר את Cloud Shell ולהסכים לתנאים, לוחצים על Authorize (אישור).node app.jsהתוצאה אמורה להיראות כך:
Query Results: url: https://stackoverflow.com/questions/35159967, 170023 views url: https://stackoverflow.com/questions/22879669, 142581 views url: https://stackoverflow.com/questions/10604135, 132406 views url: https://stackoverflow.com/questions/44564887, 128781 views url: https://stackoverflow.com/questions/27060396, 127008 views url: https://stackoverflow.com/questions/12482637, 120766 views url: https://stackoverflow.com/questions/20673986, 115720 views url: https://stackoverflow.com/questions/39109817, 108368 views url: https://stackoverflow.com/questions/11057219, 105175 views url: https://stackoverflow.com/questions/43195143, 101878 views
ב-Cloud Shell, יוצרים פרויקט וקובץ חדשים של PHP:
mkdir bigquery-php-quickstart \ && touch \ bigquery-php-quickstart/app.php
הפקודה הזו יוצרת פרויקט PHP בשם
bigquery-php-quickstartוקובץ בשםapp.php.פותחים את Cloud Shell Editor:
cloudshell workspace bigquery-php-quickstart
כדי לפתוח טרמינל ב-Cloud Shell Editor, לוחצים על Open Terminal.
פותחים את ספריית הפרויקט:
cd bigquery-php-quickstart
מתקינים את ספריית הלקוח של BigQuery ל-PHP:
composer require google/cloud-bigquery
הפלט אמור להיראות כך: כדי לפשט את הפלט, השמטנו כמה שורות.
Running composer update google/cloud-bigquery Loading composer repositories with package information Updating dependencies ... No security vulnerability advisories found Using version ^1.24 for google/cloud-bigquery
לוחצים על פתיחת הכלי לעריכה.
בחלונית Explorer, מאתרים את הפרויקט
BIGQUERY-PHP-QUICKSTART.לוחצים על הקובץ
app.phpכדי לפתוח אותו.כדי ליצור שאילתה על מערך הנתונים
bigquery-public-data.stackoverflowשמחזירה את 10 הדפים הנצפים ביותר ב-Stack Overflow ואת מספר הצפיות שלהם, מעתיקים את הקוד הבא לקובץapp.php:לוחצים על Open Terminal (פתיחת הטרמינל).
במסוף, מריצים את הסקריפט
app.php. אם מתבקשים לאשר את Cloud Shell ולהסכים לתנאים, לוחצים על Authorize (אישור).php app.phpהתוצאה אמורה להיראות כך:
--- Row 1 --- url: https://stackoverflow.com/questions/35159967, 170023 views --- Row 2 --- url: https://stackoverflow.com/questions/22879669, 142581 views --- Row 3 --- url: https://stackoverflow.com/questions/10604135, 132406 views --- Row 4 --- url: https://stackoverflow.com/questions/44564887, 128781 views --- Row 5 --- url: https://stackoverflow.com/questions/27060396, 127008 views --- Row 6 --- url: https://stackoverflow.com/questions/12482637, 120766 views --- Row 7 --- url: https://stackoverflow.com/questions/20673986, 115720 views --- Row 8 --- url: https://stackoverflow.com/questions/39109817, 108368 views --- Row 9 --- url: https://stackoverflow.com/questions/11057219, 105175 views --- Row 10 --- url: https://stackoverflow.com/questions/43195143, 101878 views Found 10 row(s)
ב-Cloud Shell, יוצרים פרויקט וקובץ חדשים של Python:
mkdir bigquery-python-quickstart \ && touch \ bigquery-python-quickstart/app.py
הפקודה הזו יוצרת פרויקט Python בשם
bigquery-python-quickstartוקובץ בשםapp.py.פותחים את Cloud Shell Editor:
cloudshell workspace bigquery-python-quickstart
כדי לפתוח טרמינל ב-Cloud Shell Editor, לוחצים על Open Terminal.
פותחים את ספריית הפרויקט:
cd bigquery-python-quickstart
מתקינים את ספריית הלקוח של BigQuery ל-Python:
pip install --upgrade google-cloud-bigquery
הפלט אמור להיראות כך: כדי לפשט את הפלט, השמטנו כמה שורות.
Installing collected packages: google-cloud-bigquery ... Successfully installed google-cloud-bigquery-3.9.0 ...
לוחצים על פתיחת הכלי לעריכה.
בחלונית Explorer, מאתרים את הפרויקט
BIGQUERY-PYTHON-QUICKSTART.לוחצים על הקובץ
app.pyכדי לפתוח אותו.כדי ליצור שאילתה על מערך הנתונים
bigquery-public-data.stackoverflowשמחזירה את 10 הדפים הנצפים ביותר ב-Stack Overflow ואת מספר הצפיות שלהם, מעתיקים את הקוד הבא לקובץapp.py:לוחצים על Open Terminal (פתיחת הטרמינל).
במסוף, מריצים את הסקריפט
app.py. אם מתבקשים לאשר את Cloud Shell ולהסכים לתנאים, לוחצים על Authorize (אישור).python app.pyהתוצאה אמורה להיראות כך:
https://stackoverflow.com/questions/35159967 : 170023 views https://stackoverflow.com/questions/22879669 : 142581 views https://stackoverflow.com/questions/10604135 : 132406 views https://stackoverflow.com/questions/44564887 : 128781 views https://stackoverflow.com/questions/27060396 : 127008 views https://stackoverflow.com/questions/12482637 : 120766 views https://stackoverflow.com/questions/20673986 : 115720 views https://stackoverflow.com/questions/39109817 : 108368 views https://stackoverflow.com/questions/11057219 : 105175 views https://stackoverflow.com/questions/43195143 : 101878 views
ב-Cloud Shell, יוצרים פרויקט וקובץ חדשים של Ruby:
mkdir bigquery-ruby-quickstart \ && touch \ bigquery-ruby-quickstart/app.rb
הפקודה הזו יוצרת פרויקט Ruby בשם
bigquery-ruby-quickstartוקובץ בשםapp.rb.פותחים את Cloud Shell Editor:
cloudshell workspace bigquery-ruby-quickstart
כדי לפתוח טרמינל ב-Cloud Shell Editor, לוחצים על Open Terminal.
פותחים את ספריית הפרויקט:
cd bigquery-ruby-quickstart
מתקינים את ספריית הלקוח של BigQuery ל-Ruby:
gem install google-cloud-bigquery
הפלט אמור להיראות כך: כדי לפשט את הפלט, השמטנו כמה שורות.
23 gems installed
לוחצים על פתיחת הכלי לעריכה.
בחלונית Explorer, מאתרים את הפרויקט
BIGQUERY-RUBY-QUICKSTART.לוחצים על הקובץ
app.rbכדי לפתוח אותו.כדי ליצור שאילתה על מערך הנתונים
bigquery-public-data.stackoverflowשמחזירה את 10 הדפים הנצפים ביותר ב-Stack Overflow ואת מספר הצפיות שלהם, מעתיקים את הקוד הבא לקובץapp.rb:לוחצים על Open Terminal (פתיחת הטרמינל).
במסוף, מריצים את הסקריפט
app.rb. אם מתבקשים לאשר את Cloud Shell ולהסכים לתנאים, לוחצים על Authorize (אישור).ruby app.rbהתוצאה אמורה להיראות כך:
https://stackoverflow.com/questions/35159967: 170023 views https://stackoverflow.com/questions/22879669: 142581 views https://stackoverflow.com/questions/10604135: 132406 views https://stackoverflow.com/questions/44564887: 128781 views https://stackoverflow.com/questions/27060396: 127008 views https://stackoverflow.com/questions/12482637: 120766 views https://stackoverflow.com/questions/20673986: 115720 views https://stackoverflow.com/questions/39109817: 108368 views https://stackoverflow.com/questions/11057219: 105175 views https://stackoverflow.com/questions/43195143: 101878 views
- In the Cloud de Confiance console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
ב-Cloud Shell, עוברים לספרייה ברמה גבוהה יותר:
cd ..
מוחקים את התיקייה
BigQueryCsharpDemoשיצרתם:rm -R BigQueryCsharpDemo
הדגל
-Rמוחק את כל הנכסים בתיקייה.ב-Cloud Shell, עוברים לספרייה ברמה גבוהה יותר:
cd ..
מוחקים את התיקייה
bigquery-go-quickstartשיצרתם:rm -R bigquery-go-quickstart
הדגל
-Rמוחק את כל הנכסים בתיקייה.ב-Cloud Shell, עוברים לספרייה ברמה גבוהה יותר:
cd ..
מוחקים את התיקייה
bigquery-java-quickstartשיצרתם:rm -R bigquery-java-quickstart
הדגל
-Rמוחק את כל הנכסים בתיקייה.ב-Cloud Shell, עוברים לספרייה ברמה גבוהה יותר:
cd ..
מוחקים את התיקייה
bigquery-node-quickstartשיצרתם:rm -R bigquery-node-quickstart
הדגל
-Rמוחק את כל הנכסים בתיקייה.ב-Cloud Shell, עוברים לספרייה ברמה גבוהה יותר:
cd ..
מוחקים את התיקייה
bigquery-php-quickstartשיצרתם:rm -R bigquery-php-quickstart
הדגל
-Rמוחק את כל הנכסים בתיקייה.ב-Cloud Shell, עוברים לספרייה ברמה גבוהה יותר:
cd ..
מוחקים את התיקייה
bigquery-python-quickstartשיצרתם:rm -R bigquery-python-quickstart
הדגל
-Rמוחק את כל הנכסים בתיקייה.ב-Cloud Shell, עוברים לספרייה ברמה גבוהה יותר:
cd ..
מוחקים את התיקייה
bigquery-ruby-quickstartשיצרתם:rm -R bigquery-ruby-quickstart
הדגל
-Rמוחק את כל הנכסים בתיקייה.
הרצת שאילתות במערך נתונים ציבורי
בוחרים אחת מהשפות הבאות:
C#
הצלחתם להריץ שאילתות במערך נתונים ציבורי באמצעות ספריית הלקוח BigQuery C#.
Go
הצלחתם להריץ שאילתה במערך נתונים ציבורי באמצעות ספריית הלקוח BigQuery Go.
Java
הצלחתם להריץ שאילתה במערך נתונים ציבורי באמצעות ספריית הלקוח של BigQuery Java.
Node.js
הצלחתם להריץ שאילתה במערך נתונים ציבורי באמצעות ספריית הלקוח BigQuery Node.js.
PHP
הצלחתם להריץ שאילתות במערך נתונים ציבורי באמצעות ספריית הלקוח של BigQuery PHP.
Python
הצלחתם להריץ שאילתה במערך נתונים ציבורי באמצעות ספריית הלקוח של BigQuery Python.
Ruby
הצלחתם להריץ שאילתה במערך נתונים ציבורי באמצעות ספריית הלקוח BigQuery Ruby.
הסרת המשאבים
כדי להימנע מחיובים בחשבון Cloud de Confiance , אפשר למחוק את הפרויקט Cloud de Confiance או למחוק את המשאבים שיצרתם במדריך הזה.
מחיקת הפרויקט
הדרך הקלה ביותר לבטל את החיוב היא למחוק את הפרויקט שיצרתם בשביל המדריך הזה.
כדי למחוק את הפרויקט:
מחיקת המשאבים
אם השתמשתם בפרויקט קיים, מוחקים את המשאבים שיצרתם: