آزمایشگاه ۳: کشف محموله گمشده با BigQuery Graph و Conversational Analytics

۱. مقدمه

به آخرین مرحله از تحقیقات محموله گمشده خوش آمدید! پس از ردیابی کانتینر دزدیده شده حاوی مجسمه‌های اندروید از لندن تا سیدنی، ردپاها از بین رفته است. با غیرفعال کردن فرستنده آن، خزانه امنیتی هوشمند کانتینر به طور خودکار قفل اضطراری را فعال کرده است.

برای بازیابی محموله‌ی ارزشمند، قبل از اینکه برای همیشه قفل شود، ماموریت شما این است که محل نهایی کانتینر را پیدا کنید و رمز عبور دستی را برای باز کردن فیزیکی گاوصندوق بازیابی کنید .

پیش‌نمایش معماری تحلیل مکالمه‌ای آزمایشگاه محموله گمشده ۳

برای پیدا کردن کانتینر گمشده و ایمن‌سازی محموله، شما یک نمودار ویژگی BigQuery برای ردیابی مسیر حمل و نقل ایجاد خواهید کرد. سپس با استفاده از Conversational Analytics این شبکه را به زبان طبیعی جستجو خواهید کرد و در نهایت با انجام یک جستجوی معنایی روی فراداده‌های داده‌های خود با Knowledge Catalog ، کدهای جایگزین را پیدا خواهید کرد.

💡 آزمایشگاه ۱ یا آزمایشگاه ۲ را از دست داده‌اید ؟ نگران نباشید! این آزمایشگاه کاملاً مستقل است. مراحل راه‌اندازی محیط، هر آنچه را که نیاز دارید فراهم می‌کند تا بتوانید مستقیماً وارد آن شوید و آن را به‌طور مستقل تکمیل کنید.

کاری که انجام خواهید داد

  • مخزن را کلون کنید و اسکریپت راه‌اندازی را در Google Cloud Shell اجرا کنید.
  • یک نمودار املاک در BigQuery بسازید که داده‌های شرکت، کشتی و مانیفست را به هم پیوند می‌دهد.
  • از تحلیل مکالمه‌ای برای جستجوی نمودار به زبان طبیعی استفاده کنید و مسیر محموله را برای شناسایی اپراتور مسئول ردیابی کنید.
  • با استفاده از Knowledge Catalog، جدولی که کدهای لغو نهایی را در خود جای داده است، پیدا کنید.
  • از کنترل دسترسی سطح ستون BigQuery برای آشکارسازی و نمایش کد نهایی استفاده کنید .

آنچه نیاز دارید

  • یک مرورگر وب مانند کروم
  • یک پروژه گوگل کلود با قابلیت پرداخت صورتحساب
  • دسترسی به پوسته ابری گوگل

این آزمایشگاه کد برای متخصصان داده در تمام سطوح طراحی شده است.

منابع ایجاد شده در این آزمایشگاه کد باید کمتر از ۵ دلار هزینه داشته باشند.

مدت زمان تخمینی: تکمیل این آزمایشگاه کد تقریباً ۴۵ دقیقه طول خواهد کشید.

۲. قبل از شروع

ایجاد یک پروژه ابری گوگل

  1. در کنسول گوگل کلود ، در صفحه انتخاب پروژه، یک پروژه گوگل کلود را انتخاب یا ایجاد کنید .
  2. مطمئن شوید که پرداخت برای پروژه ابری شما فعال است.

شروع پوسته ابری

شما از Google Cloud Shell برای دانلود کد، اجرای اسکریپت‌های راه‌اندازی و استقرار برنامه استفاده خواهید کرد.

  1. در یک برگه مرورگر جدید ، Cloud Shell را باز کنید :

فعال کردن پوسته ابری

  1. پس از اتصال، شناسه پروژه خود را تنظیم کرده و محیط خود را تأیید کنید:
gcloud config set project <<YOUR_PROJECT_ID>>
export PROJECT_ID=$(gcloud config get-value project)
export REGION=us-central1

شما باید پیامی مشابه زیر را ببینید:

Your active configuration is: [cloudshell-####]
Updated property [core/project]

فعال کردن API های مورد نیاز

برای فعال کردن API های مورد نیاز، دستور زیر را در Cloud Shell اجرا کنید:

gcloud services enable \
 bigquery.googleapis.com \
 aiplatform.googleapis.com \
 datacatalog.googleapis.com  \
 geminidataanalytics.googleapis.com \
 cloudaicompanion.googleapis.com 

در صورت اجرای موفقیت‌آمیز، باید پیامی مشابه زیر را مشاهده کنید:

Operation "operations/..." finished successfully.

۳. محیط خود را آماده کنید

در آزمایش‌های قبلی این مجموعه، ما زمینه را برای تحقیقات خود فراهم کردیم.

۱. مخزن را کلون کنید

مخزن codelab را در محیط Cloud Shell خود کلون کنید:

cd ~/
git clone --filter=blob:none --no-checkout https://github.com/GoogleCloudPlatform/devrel-demos.git
cd ~/devrel-demos
git sparse-checkout init --cone
git sparse-checkout set codelabs/bigquery-graph-analytics
git checkout main
cd codelabs/bigquery-graph-analytics/

۲. تنظیم جداول پایه و برچسب‌های سیاست

اسکریپت راه‌اندازی را اجرا کنید تا مجموعه داده‌های BigQuery شما پر شود و برچسب‌های امنیتی سطح ستون را برای محدود کردن داده‌های حساس اعمال کنید:

bash setup_lab.sh

تأیید کنید که خروجی در ترمینال شما مقداردهی اولیه موفقیت‌آمیز را نشان می‌دهد:

🚀 Provisioning foundational tables and deploying Policy Tag security bindings...
🎯 Active Project: your-project-id
...
🎉 Success! Foundational tables initialized and Column-Level Policy Tags fully mapped out of the box!

با راه‌اندازی موفقیت‌آمیز محیط و جمع‌آوری داده‌های لجستیک در BigQuery، اکنون می‌توانید یک نمودار ویژگی (Property Graph) برای اتصال جداول خود و ردیابی مسیر محموله بسازید!

۴. داده‌های خود را با استفاده از BigQuery Graph متصل کنید

برای تجزیه و تحلیل داده‌های زنجیره تأمین، نحوه ارتباط شرکت‌ها، کشتی‌ها و بارنامه‌ها را با یکدیگر تعریف خواهیم کرد. ایجاد یک نمودار دارایی به ما امکان می‌دهد تا به راحتی این ارتباطات را جستجو کنیم.

۱. چگونه نمودارهای ویژگی روابط را مدل‌سازی می‌کنند

نقشه معماری کامپایل شده با نمودار املاک

یک نمودار ویژگی BigQuery شبکه‌ها را با استفاده از موارد زیر مدل‌سازی می‌کند:

  • گره‌ها : موجودیت‌های موجود در شبکه. در این آزمایش، گره‌ها نشان‌دهنده شرکت‌ها (که مستقیماً اطلاعات تماس را ذخیره می‌کنند)، مانیفست‌ها و مخازن هستند .
  • لبه‌ها : روابطی که گره‌ها را به هم متصل می‌کنند. برای مثال:
    • یک لبه، یک مانیفست را به یک ظرف (Vessel) متصل می‌کند (از طریق روابط موجود در جدول manifests ).
    • یک یال، یک کشتی (Vessel) را به یک شرکت (Company) متصل می‌کند (از طریق روابط موجود در جدول vessels ).
  • ویژگی‌ها : فراداده‌هایی که روی گره‌ها یا لبه‌ها ذخیره می‌شوند. برای مثال، یک گره Company دارای ستون‌هایی مانند company_name و phone_number است و یک گره Manifest دارای seal_integrity_status و مختصات ( last_ping_lat , last_ping_long ) است.
  • برچسب‌ها : نام‌های برچسبی که به گره‌ها (مثلاً Company ، Vessel ، Manifest ) و لبه‌ها (مثلاً CARRIED_BY ، OPERATED_BY ) اختصاص داده شده‌اند تا ابزارهای پرس‌وجو بتوانند انواع گره و رابطه را تشخیص دهند.

۲. نمودار ویژگی را در BigQuery مستقر کنید

فایل setup_graph.sql شامل SQL DDL برای تعریف و ایجاد گراف ویژگی است، اما در حال حاضر ناقص است. شما باید قبل از کامپایل و استقرار این فایل طرحواره، برچسب‌های لبه (روابط) را در آن تعریف کنید:

  1. ویرایشگر Cloud Shell را باز کنید.

ویرایشگر Cloud Shell را باز کنید

  1. فایل setup_graph.sql را در ویرایشگر Cloud Shell باز کنید.

ایجاد گراف در SQL

  1. محل قرارگیری برچسب‌های لبه را پیدا کنید:
    • خط ۲۲ : عبارت `EDGE_TABLE_PLACEHOLDER` را با یک تگ معنادار که نشان دهنده ارتباط مانیفست‌ها با کشتی‌ها باشد (مثلاً CARRIED_BY ) جایگزین کنید.
    • خط ۲۷ : عبارت `EDGE_TABLE_PLACEHOLDER` را با برچسبی که نشان دهنده ارتباط کشتی‌ها با شرکت‌ها است (مثلاً OPERATED_BY ) جایگزین کنید.
  2. فایل را ذخیره کنید.

اکنون، به ترمینال Cloud Shell برگردید و نمودار ویژگی به‌روز شده را با استفاده از اسکریپت تکمیل‌شده مستقر کنید:

bq query --use_legacy_sql=false < setup_graph.sql

باید خروجی را ببینید که نشان می‌دهد کار کامل شده است:

Waiting on bqjob_r... ... (0s) Current status: DONE

می‌توانید جزئیات نمودار ویژگی‌ها را در کنسول BigQuery مشاهده کنید:

مجموعه داده lost_cargo_dataset را پیدا کنید و نمودارها را انتخاب کنید:

نقشه معماری کامپایل شده با نمودار املاک

حالا که نمودار ویژگی‌ها با موفقیت کامپایل شد، بیایید برای پرس‌وجو و مصورسازی ارتباطات، به BigQuery Studio برویم!

۵. نمودار خود را جستجو کنید

شما می‌توانید با استفاده از زبان بومی جستجوی گراف (GQL) مستقیماً در داخل BigQuery Studio، نمودار را به صورت بصری جستجو و کاوش کنید.

۱. کانتینر -> کشتی -> زنجیره شرکت را جستجو کنید

بیایید با یافتن اینکه چه کسی کشتی‌های حمل بار را اداره می‌کند، پرس‌وجوهای GQL را بررسی کنیم. یافتن اپراتور مستلزم پیمایش سه گره موجودیت جداگانه در شبکه لجستیک ما است:

مفهوم گره گراف

  1. از گره Manifest کانتینر شروع کنید.
  2. لبه رابطه CARRIED_BY را دنبال کنید تا Vessel حامل را پیدا کنید.
  3. لبه رابطه OPERATED_BY را از آن کشتی تا Company مسئول دنبال کنید و شناسه آن را بازیابی کنید.

ابتدا، بیایید یک کوئری برای تجسم کل شبکه (بدون هیچ فیلتری) اجرا کنیم تا نمودار کامل را ببینیم.

  1. یک تب جدید در ویرایشگر SQL بیگ‌کوئری استودیو باز کنید، کوئری GQL زیر را جای‌گذاری کنید و روی Run کلیک کنید:
    SELECT * FROM GRAPH_TABLE(
      `lost_cargo_dataset.logistics_network`
      MATCH p = (m:Manifest)-[:CARRIED_BY]->(v:Vessel)-[:OPERATED_BY]->(comp:Company)
      RETURN TO_JSON(p) AS path
    );
    
  2. وقتی جستجو کامل شد، در قسمت نتایج جستجو در پایین، روی تب Graph (که در کنار تب Results table قرار دارد) کلیک کنید.

نتایج نمودار BigQuery 1

  1. BigQuery نتایج را به صورت یک نمودار بصری تعاملی ارائه می‌دهد! برای دیدن شبکه کامل کانتینرها، کشتی‌ها و اپراتورهای متصل، بزرگنمایی کنید.

آناتومی یک پرس‌وجوی GQL

بیایید کوئری GQL که اجرا کردیم را تجزیه و تحلیل کنیم:

  • GRAPH_TABLE : به BigQuery دستور می‌دهد تا یک کوئری گراف ویژگی را در گراف logistics_network اجرا کند.
  • MATCH : الگوی پیمایش چندگامی را اعلام می‌کند. ما از یک Manifest ( m ) شروع می‌کنیم، رابطه لبه‌ای :CARRIED_BY را که به Vessel ( v ) اشاره دارد، مطابقت می‌دهیم، سپس رابطه لبه‌ای :OPERATED_BY که به Company ( comp ) اشاره دارد، مطابقت می‌دهیم.
  • GQL منطق اتصال پیچیده را با فلش‌های رابطه‌ای ASCII-art ()->[]->() که برای انسان قابل خواندن هستند، جایگزین می‌کند و نوشتن و بهینه‌سازی کوئری‌های چندگامی را بسیار ساده می‌سازد.
  • RETURN : ویژگی‌ها یا مسیر JSON را از عناصر منطبق برمی‌گرداند.

۲. نتایج جستجوی GQL را فیلتر کنید

حالا، بیایید کوئری را فیلتر کنیم تا فقط مسیر کانتینر آلوده‌شده‌ی هدفمان MV-CAPYBARA-003 را بررسی کنیم.

  1. عبارت زیر را در ویرایشگر SQL وارد کنید و روی Run کلیک کنید:
    SELECT * FROM GRAPH_TABLE(
      `lost_cargo_dataset.logistics_network`
      MATCH p = (m:Manifest {shipment_id: 'MV-CAPYBARA-003'})-[:CARRIED_BY]->(v:Vessel)-[:OPERATED_BY]->(comp:Company)
      RETURN TO_JSON(p) AS path
    );
    
  2. روی برگه نمودار در زیر نتایج کلیک کنید.

نتایج نمودار BigQuery 2

  1. اکنون نمایشگر فقط مسیر پیمایش فعال برای MV-CAPYBARA-003 را نمایش می‌دهد. برای دیدن گره‌ها و اتصالات، بزرگنمایی کنید:
    • روی گره Company دوبار کلیک کنید تا پنل Properties باز شود. در قسمت Properties ، اپراتور company_id با 103 (Davy Jones Shipping) مشاهده خواهید کرد. این شناسه شرکت را یادداشت کنید - بعداً برای بازیابی کد عبور مجوز از رجیستری امنیتی به آن نیاز خواهید داشت!
    • برای تأیید اینکه گره Vessel همان Flying Dutchman است، روی آن دوبار کلیک کنید.

۶. با استفاده از تحلیل مکالمه‌ای با نمودار خود چت کنید

حالا که نمودار خود را به صورت دستی برای یافتن شناسه شرکت جستجو کرده‌اید، بیایید از Conversational Analytics برای چت مستقیم با نمودار خود و مشخص کردن مسیر کانتینرمان استفاده کنیم.

۱. یک جلسه تحلیل مکالمه‌ای را شروع کنید

  1. در کنسول گوگل کلود، به کنسول بیگ‌کوئری بروید و پنل منابع را گسترش دهید تا مجموعه داده خود ( lost_cargo_dataset ) را پیدا کنید.
  2. روی منبع نمودار دارایی خود کلیک کنید: logistics_network .
  3. در نوار ابزار پنل جزئیات در بالا، روی دکمه چت کلیک کنید. این یک جلسه تحلیل مکالمه‌ای را باز می‌کند که از قبل با محتوای نمودار شما بارگذاری شده است.

رابط پیکربندی BigQuery Data Agent که منبع کامپایل شده Property Graph را به آن متصل می‌کند

۲. نزدیکترین پورت اتصال به کانتینر ربوده شده را مشخص کنید

یک هواپیمای گشت دریایی به تازگی کشتی‌ای را مشاهده کرده است که با مشخصات کشتی باری ما مطابقت دارد و در مختصات POINT(-122.48 37.55) در حال حرکت خارج از شبکه (با فرستنده غیرفعال) است. برای رهگیری محموله، باید نزدیکترین بندر پهلوگیری را که سندیکای سایه Davy Jones Shipping در آن فعالیت می‌کند، پیدا کنیم.

به جای جستجوی دستی تمام پورت‌های جهانی، ما از شبکه گراف خود پرس و جو خواهیم کرد تا پورت‌های متصل به ناوگان فعال سندیکا را استخراج کرده و اندازه‌گیری کنیم که کدام یک از نظر فیزیکی به محل مشاهده نزدیک‌تر است!

  1. در کادر گفتگوی Conversational Analytics، عبارت زیر را وارد کنید:
    Find all ports associated with Davy Jones Shipping vessels. Which port is closest to coordinate POINT(-122.48 37.55), show the distance in km, and display it on a map.
    

رابط پیکربندی BigQuery Data Agent که منبع کامپایل شده Property Graph را به آن متصل می‌کند

  1. به پاسخ با دقت نگاه کنید. عامل نمودار را پیمایش می‌کند و نزدیکترین مرکز اتصال و فاصله آن را برمی‌گرداند:
    • بندر پهلوگیری : Mountain View Terminal
    • مسافت : 39.42 kilometers
  2. از آنجا که Conversational Analytics توسط Gemini با ادغام بومی اطلاعات مکانی (GIS) پشتیبانی می‌شود، می‌تواند نقاط مختصات جغرافیایی را تفسیر کند و از دانش جهانی خود برای تأیید موقعیت مکانی استفاده کند: "این کشتی تقریباً 39.42 کیلومتر از ترمینال مانتین ویو، کالیفرنیا فاصله دارد، که نشان می‌دهد برای پهلوگیری به آنجا می‌رود."

این تایید می‌کنه که محموله ما مستقیماً به سمت مانتین ویو در حرکته!

زیربنا: زبان پرس‌وجوی گراف (GQL) و GIS مکانی

در پشت صحنه، عامل Conversational Analytics به صورت پویا یک پرس‌وجو را کامپایل و اجرا کرد که تطبیق مسیر گراف را با محاسبات فاصله مکانی ترکیب می‌کند. این کار با استفاده از یک عبارت GQL COLUMNS بومی انجام می‌شود که فاصله ژئودزیک را به صورت بومی درون تطبیق پیمایش گراف محاسبه می‌کند:

SELECT port_id, port_name, country, latitude, longitude, distance_km 
FROM GRAPH_TABLE(
  `lost_cargo_dataset.logistics_network`
  MATCH (c:Company)<-[]-(v:Vessel)-[]->(p:Port)
  WHERE LOWER(c.company_name) = 'davy jones shipping'
  COLUMNS (
    p.port_id, 
    p.port_name, 
    p.country, 
    p.latitude, 
    p.longitude, 
    ROUND(ST_DISTANCE(ST_GEOGPOINT(p.longitude, p.latitude), ST_GEOGPOINT(-122.48, 37.55)) / 1000, 2) AS distance_km
  )
)
ORDER BY distance_km ASC;

با ترکیب توابع بومی مکانی (GIS) ( ST_DISTANCE ، ST_GEOGPOINT ) با تطابق نمودار ویژگی GQL ، BigQuery به صورت پویا ردپای عملیاتی سندیکا را حل می‌کند و نزدیکی فیزیکی دنیای واقعی را در یک پرس‌وجو محاسبه می‌کند!

۷. داده‌های گمشده خود را با کاتالوگ دانش پیدا کنید

نمودار ویژگی‌ها روابط را نشان می‌دهد، اما شامل جدولی که کدهای لغو واقعی در آن ذخیره می‌شوند، نیست.

در یک محیط سازمانی واقعی با صدها مجموعه داده و جدول، یافتن این اطلاعات می‌تواند دشوار باشد. ما از کاتالوگ دانش برای انجام جستجوی معنایی و یافتن جدول صحیح استفاده خواهیم کرد.

۱. جستجوی معنایی در کاتالوگ دانش

  1. در کنسول گوگل کلود ، عبارت «Knowledge CatalogSearch» را جستجو کرده و به آن بروید.
  2. در ستون فیلتر جستجو در زیر بخش «سیستم‌ها» ، گزینه‌ی «BigQuery» را تیک بزنید تا نتایج محدودتر شوند.
  3. در کادر جستجو، عبارت زیر را وارد کنید:
    container override codes
    

رابط جستجوی معنایی کاتالوگ دانش، به دنبال جدول مهر فیزیکی ایزوله می‌گردد.

  1. روی منبع جدول maritime_security_registry که در نتایج جستجو ظاهر می‌شود کلیک کنید:

با بررسی طرح فراداده، خواهید دید که جدول شامل ستون‌هایی برای داده‌های امنیتی کانتینر است - مانند شرکت هماهنگ‌کننده co_id ، توکن متولی cust_tok و از همه مهم‌تر، ستون کد عبور لغو کانتینر امن: clc_ovr_cd .

ما با موفقیت هم میز و هم ستون امن مورد نیاز برای بازیابی محموله‌مان را پیدا کردیم!

🔓 مدیریت در دنیای واقعی : در یک محیط سازمانی عملیاتی، تیم‌های امنیتی و مدیریتی از موارد زیر نیز بهره می‌برند:

  • قالب‌های جنبه‌ها و برچسب‌ها : برای پیوست کردن فراداده‌های تجاری (مانند مالک داده ، دوره نگهداری یا طبقه‌بندی PII ) به طرحواره‌های جدول.
  • تبار داده‌ها : برای تولید خودکار فلوچارت‌های بصری که نشان می‌دهند چگونه جداولی مانند maritime_security_registry توسط سیستم‌های پایین‌دستی مورد پرسش و استفاده قرار می‌گیرند.

۲. بررسی امنیت ستون‌ها در BigQuery

  1. به کنسول BigQuery برگردید.
  2. در برگه Explorer ، مجموعه lost_cargo_dataset را انتخاب کرده و روی جدول maritime_security_registry کلیک کنید.
  3. روی برگه طرحواره کلیک کنید.

نمای طرح جدول که برچسب سیاست اختصاص داده شده به ستون clc_ovr_cd را نمایش می‌دهد

  1. توجه داشته باشید که ستون clc_ovr_cd توسط یک برچسب سیاست با نام MaskShippingDetails (که در ستون برچسب‌های سیاست ذکر شده است) ایمن شده است.
  2. یک تب جدید SQL Editor در BigQuery باز کنید و با اجرای کوئری زیر، سعی کنید کدهای بازنویسی رجیستری را مشاهده کنید:
    SELECT * FROM `lost_cargo_dataset.maritime_security_registry` 
    WHERE co_id = 103;
    
  3. از آنجا که حساب شما هنوز مجوز خواندن ستون‌های برچسب‌گذاری شده با MaskShippingDetails را ندارد، پرس‌وجو بلافاصله با خطای امنیتی پایگاه داده Access Denied با شکست مواجه می‌شود:

نمای فضای کاری BigQuery که محدودیت‌های پوشش استاندارد سطح ستون یا عدم دسترسی را نمایش می‌دهد

۸. کرک کردن امنیت ستون برای بازیابی رمز عبور

برای خواندن کد نهایی بازنویسی شده به صورت متن ساده، باید به حساب کاربری خود اجازه خواندن ستون‌های برچسب‌گذاری شده با MaskShippingDetails را بدهیم.

۱. اعطای مجوزهای برچسب سیاست

  1. در پنل ناوبری سمت چپ کنسول BigQuery، به Policy tags بروید.
  2. طبقه‌بندی با نام LostCargoSecurity_ را انتخاب کنید. LostCargoSecurity_ .
  3. در لیست برچسب‌ها، روی MaskShippingDetails کلیک کنید.
  4. در پنل اطلاعات در سمت راست صفحه، روی «افزودن مدیر» کلیک کنید. (اگر پنل پنهان است، روی «نمایش پنل اطلاعات» در بالا سمت راست کلیک کنید).
  5. در فیلد «مدیران جدید» ، ایمیل فعال کاربر Google Cloud خود را وارد کنید.
  6. در منوی کشویی «انتخاب نقش» ، عبارت «خواننده‌ی ریزدانه» را جستجو و انتخاب کنید، سپس روی «ذخیره» کلیک کنید.

پنل مدیریت تگ‌های سیاست BigQuery که نقش خواننده دقیق (Fine-Grained Reader) را روی ماسک رشته هدف تعیین می‌کند

۲. جستجوی کد لغو (Override Code)

به ویرایشگر فضای کاری BigQuery خود برگردید. از آنجا که اکنون به خواننده ریز دسترسی دارید، باید بتوانیم دوباره پرس و جو را اجرا کنیم و بتوانیم داده‌های بدون نقاب را ببینیم:

SELECT *  FROM `lost_cargo_dataset.maritime_security_registry` 
WHERE co_id = 103;

🔓 نتیجه

این کوئری کد بازنویسی بدون نقاب را برمی‌گرداند:

SHIVER-ME-TIMBERS-888

نتایج اجرای فضای کاری BigQuery، پرچم رشته قطعی بدون نقاب را برمی‌گرداند

۹. تمیز کردن

برای جلوگیری از تحمیل هزینه، منابع سندباکس ایجاد شده در طول این آزمایش را پاک کنید.

به Cloud Shell Terminal برگردید و مجموعه داده‌های BigQuery حاوی جداول لجستیک را حذف کنید :

bq rm -r -f -d lost_cargo_dataset

فایل‌های مخزن کلون شده را حذف کنید:

cd ..
rm -rf data-cloud-roadshow-26

۱۰. تبریک

شما با موفقیت تحقیقات را حل کردید و کد لغو مجوز را بازیابی کردید!

آنچه آموخته‌اید

  • نحوه ساخت نمودار ویژگی در BigQuery برای نمایش موجودیت‌ها و روابط پیچیده.
  • نحوه پیکربندی گره‌ها ، لبه‌ها ، ویژگی‌ها و برچسب‌ها برای ثبت اتصالات داده.
  • نحوه پرس و جو در نمودارهای ویژگی با استفاده از زبان طبیعی با BigQuery Conversational Analytics .
  • چگونه عبارات زبان پرس و جوی گراف (GQL) برای پیمایش مسیرهای رابطه‌ای ساختار یافته‌اند.
  • نحوه کشف دارایی‌های امن با استفاده از کاتالوگ دانش و دسترسی به داده‌های محدود شده در سطح ستون با استفاده از برچسب‌های سیاست.