डार्क डेटा को स्ट्रक्चर्ड गोल्ड में बदलना

1. खास जानकारी

हम सभी "डार्क डेटा" की समस्या से वाक़िफ़ हैं. ये क्लाउड स्टोरेज बकेट में मौजूद PDF, इमेज, और टेक्स्ट फ़ाइलें होती हैं. ये आपकी एसक्यूएल क्वेरी और बीआई डैशबोर्ड में नहीं दिखती हैं. पहले, इस डेटा को अनलॉक करने के लिए, जटिल ओसीआर पाइपलाइन, मैन्युअल डेटा एंट्री या कस्टम स्क्रिप्ट की ज़रूरत होती थी.

अब नहीं.

इस लैब में, हम आपको यह दिखाएंगे कि टेक्स्ट, टेबल, और इमेज वाली 400 अनस्ट्रक्चर्ड PDF फ़ाइलों को, साफ़ तौर पर स्ट्रक्चर्ड BigQuery टेबल में कैसे बदला जाता है. साथ ही, यह भी दिखाएंगे कि उनके बीच के संबंध अपने-आप कैसे तय होते हैं. हम BigQuery Knowledge Catalog और Dataplex का इस्तेमाल करके, इसे कुछ ही मिनटों में पूरा करेंगे.

आपको क्या बनाना है

इसे समझने के लिए, आइए एक काल्पनिक कारोबार के बारे में जानते हैं: यह तेज़ी से बढ़ती हुई दही से बनी मिठाई की फ़्रैंचाइज़ी है.

मान लें कि आपको इस फ़्रोयो कारोबार का डेटा मैनेज करना है. आपके पास सैकड़ों रेसिपी और सप्लायर की स्पेसिफ़िकेशन शीट हैं. ये सभी PDF के तौर पर सेव हैं. कारोबार के लीडर, एआई एजेंट लॉन्च करना चाहते हैं. इससे स्टोर मैनेजर और खरीदारों को प्रॉडक्ट की जानकारी के बारे में सवाल पूछने में मदद मिलेगी.

यहां एक मुश्किल स्थिति दी गई है: एक ग्राहक पूछता है, "मुझे आपके मिडनाइट स्वर्ल फ़्रोज़न योगर्ट में बहुत दिलचस्पी है. क्या इसमें कोई एलर्जन मौजूद है?"

इस सवाल का जवाब देने के लिए, आपके सिस्टम को आम तौर पर ये काम करने होंगे:

  1. "मिडनाइट स्वर्ल" रेसिपी का PDF ढूंढें.
  2. सामग्री पढ़ें. जैसे, "कोको पाउडर", "डेयरी बेस", "इमल्सिफ़ायर X".
  3. सप्लायर के दर्जनों PDF में खोज करके, उन खास सामग्रियों की स्पेसिफ़िकेशन शीट ढूंढें.
  4. सप्लायर की शीट में, उन सामग्रियों से जुड़े छिपे हुए ऐलर्जन देखें.

अगर आपको ऐसा एआई एजेंट बनाना है जो रनटाइम में 400 रॉ PDF पढ़कर, तुरंत जवाब दे सके, तो इसमें समय लगेगा, ज़्यादा खर्च आएगा, और यह गलत जानकारी दे सकता है. इसके बजाय, हम सिमैंटिक इन्फ़रेंस का इस्तेमाल करके, इस सभी डेटा को पहले रिलेशनल डेटाबेस में एक्सट्रैक्ट करेंगे. इससे, आने वाले समय में हमारा एआई एजेंट बहुत तेज़ी से काम कर पाएगा. साथ ही, वह 100% सटीक एसक्यूएल डेटा पर आधारित होगा.

आइए, बनाना शुरू करें!

2381f1453211387d.png

आपको क्या सीखने को मिलेगा

  • सोर्स फ़ाइलों (PDF) के लिए Cloud Storage बकेट को सेट अप करने का तरीका
  • सोर्स पीडीएफ़ से डेटा निकालने के लिए, Knowledge Catalog में डेटास्कैन जॉब और सिमैंटिक इन्फ़रेंस को सेट अप और चलाने का तरीका. साथ ही, कनेक्शन और कॉन्टेक्स्ट के बारे में सिमैंटिक इन्फ़रेंस करना और उसे BigQuery में सेव करना
  • नए डेटासेट के साथ चैट करने के लिए, BigQuery एजेंटों का इस्तेमाल कैसे करें

ज़रूरी शर्तें

  • कोई ब्राउज़र, जैसे कि Chrome या Firefox.
  • बिलिंग की सुविधा वाला Google Cloud प्रोजेक्ट.
  • एसक्यूएल और Java की बुनियादी जानकारी.

2. शुरू करने से पहले

प्रोजेक्ट बनाना

  1. Google Cloud Console में, प्रोजेक्ट चुनने वाले पेज पर, Google Cloud प्रोजेक्ट चुनें या बनाएं.
  2. पक्का करें कि आपके Cloud प्रोजेक्ट के लिए बिलिंग चालू हो. किसी प्रोजेक्ट के लिए बिलिंग चालू है या नहीं, यह देखने का तरीका जानें.
  1. आपको Cloud Shell का इस्तेमाल करना होगा. यह Google Cloud में चलने वाला कमांड-लाइन एनवायरमेंट है. Google Cloud Console में सबसे ऊपर मौजूद, Cloud Shell चालू करें पर क्लिक करें.

Cloud Shell बटन की इमेज चालू करें

  1. Cloud Shell से कनेक्ट होने के बाद, यह देखने के लिए कि आपकी पुष्टि हो चुकी है और प्रोजेक्ट को आपके प्रोजेक्ट आईडी पर सेट किया गया है, इस कमांड का इस्तेमाल करें:
gcloud auth list
  1. यह पुष्टि करने के लिए कि gcloud कमांड को आपके प्रोजेक्ट के बारे में पता है, Cloud Shell में यह कमांड चलाएं.
gcloud config list project
  1. अगर आपको पुष्टि करनी है
gcloud auth login
  1. अगर आपका प्रोजेक्ट सेट नहीं है, तो इसे सेट करने के लिए इस निर्देश का इस्तेमाल करें:
export PROJECT_ID=<YOUR_PROJECT_ID>
gcloud config set project <YOUR_PROJECT_ID>
  1. ज़रूरी एपीआई चालू करें: सभी ज़रूरी एपीआई चालू करने के लिए, यह निर्देश चलाएं:
gcloud services enable \
    dataplex.googleapis.com \
    datacatalog.googleapis.com \
    discoveryengine.googleapis.com \
    bigqueryconnection.googleapis.com \
    bigquery.googleapis.com \
    aiplatform.googleapis.com \
    cloudresourcemanager.googleapis.com \
    serviceusage.googleapis.com \
    storage.googleapis.com

समस्याएं और उन्हें हल करने का तरीका

"घोस्ट प्रोजेक्ट" सिंड्रोम

आपने gcloud config set project चलाया है, लेकिन Console के यूज़र इंटरफ़ेस (यूआई) में कोई दूसरा प्रोजेक्ट देखा जा रहा है. सबसे ऊपर बाईं ओर मौजूद ड्रॉपडाउन में प्रोजेक्ट आईडी देखें!

बिलिंग बैरिकेड

आपने प्रोजेक्ट चालू कर दिया है, लेकिन बिलिंग खाते की जानकारी नहीं दी है. AlloyDB एक हाई-परफ़ॉर्मेंस इंजन है. अगर "गैस टैंक" (बिलिंग) खाली है, तो यह शुरू नहीं होगा.

एपीआई के डेटा को अपडेट होने में लगने वाला समय

आपने "एपीआई चालू करें" पर क्लिक किया है, लेकिन कमांड लाइन में अब भी Service Not Enabled दिख रहा है. इसे 60 सेकंड तक दबाकर रखें. क्लाउड को अपने न्यूरॉन को चालू करने में कुछ समय लगता है.

कोटा Quags

अगर आपने नया ट्रायल खाता इस्तेमाल किया है, तो हो सकता है कि आपने AlloyDB इंस्टेंस के लिए क्षेत्र के हिसाब से तय किया गया कोटा पूरा कर लिया हो. अगर us-central1 काम नहीं करता है, तो us-east1 आज़माएं.

"छिपा हुआ" सर्विस एजेंट

कभी-कभी, AlloyDB सेवा एजेंट को aiplatform.user भूमिका अपने-आप नहीं मिलती. अगर बाद में आपकी एसक्यूएल क्वेरी, Gemini से कम्यूनिकेट नहीं कर पाती हैं, तो आम तौर पर इसकी वजह यही होती है.

3. Google Cloud Storage बकेट का सेटअप

इस सेक्शन में, BigQuery में एक संगठन का स्ट्रक्चर बनाया जाता है. इसमें Froyo की रेसिपी और सप्लायर का डेटा सेव किया जाता है. यह डेटा, खास तौर पर Froyo प्रॉडक्ट की जानकारी के लिए होता है. यह Cloud Resource Connection भी बनाता है. यह एक सुरक्षित "ब्रिज" के तौर पर काम करता है. इससे BigQuery, Cloud Storage जैसे बाहरी सोर्स से फ़ाइलें पढ़ पाता है.

शुरू करने से पहले:

इस डेटाबेस में रेसिपी और सप्लायर की PDF फ़ाइलें मौजूद हैं. इनका इस्तेमाल हम इस प्रोजेक्ट में करेंगे. पक्का करें कि आपने इन फ़ाइलों को डाउनलोड कर लिया हो. फ़ाइलें डाउनलोड करने के लिए, यह तरीका अपनाएं.

Cloud Shell में, यह कमांड चलाएं:

git clone --depth 1 --filter=blob:none --sparse https://github.com/GoogleCloudPlatform/next-26-keynotes.git

नए बनाए गए फ़ोल्डर में जाएं:

cd next-26-keynotes

data-cloud-demo फ़ोल्डर को पुल करें

git sparse-checkout set genkey/data-cloud-demo

चेकआउट पूरा होने के बाद, data-cloud-demo फ़ोल्डर पर जाएं और कोडलैब ऐसेट को ऐक्सेस करने के लिए, ZIP फ़ाइलों को एक्सट्रैक्ट करें.

बकेट बनाएं और Froyo (रेसिपी और सप्लायर) की PDF फ़ाइलें अपलोड करें

  1. Google Cloud Console में, Cloud Storage बकेट पेज पर जाएं.
  2. 'बनाएं' पर क्लिक करें.
  3. बकेट बनाएं पेज पर, बकेट की जानकारी डालें. यहां दिए गए हर चरण को पूरा करने के बाद, अगले चरण पर जाने के लिए, जारी रखें पर क्लिक करें:
  4. शुरू करें सेक्शन में, बकेट का नाम डालें. उदाहरण के लिए: froyo_data
  5. अपना डेटा कहां सेव करना है सेक्शन में जाकर, क्षेत्र चुनें. इसके बाद, अपना क्षेत्र डालें. us-central1
  6. ऑब्जेक्ट के ऐक्सेस को कंट्रोल करने का तरीका चुनें सेक्शन में जाकर, 'इस बकेट पर सार्वजनिक ऐक्सेस को रोकने की सुविधा लागू करें' चेकबॉक्स से सही का निशान हटाएं.
  7. 'बनाएं' पर क्लिक करें.
  8. बकेट की सूची में, अपनी बनाई गई बकेट पर क्लिक करें.
  9. बकेट के ऑब्जेक्ट टैब में, अपलोड करें और फिर फ़ोल्डर अपलोड करें पर क्लिक करें.
  10. recipes फ़ोल्डर चुनें. इसे आपने इस कोडलैब के 'शुरू करने से पहले' सेक्शन में एक्सट्रैक्ट किया था.
  11. अपलोड करें क्लिक करें.
  12. suppliers फ़ोल्डर के लिए, अपलोड करने की प्रोसेस दोहराएं.

अपलोड करने के बाद, आपके बकेट का स्ट्रक्चर ऐसा दिखना चाहिए (बकेट का नाम कुछ भी हो सकता है):

596b8acb481016b7.png

4. BigQuery कनेक्शन सेटअप करना

Cloud Resource Connection बनाएं. इससे एक यूनीक सेवा खाता जनरेट होता है. यह बाहरी फ़ाइलों को ऐक्सेस करने के लिए, BigQuery के "आईडी कार्ड" के तौर पर काम करता है.

  • BigQuery पेज पर जाएं.
  • बाएं पैनल में, एक्सप्लोरर पर क्लिक करें. अगर आपको बायां पैनल नहीं दिखता है, तो पैनल खोलने के लिए, बाएं पैनल को बड़ा करें पर क्लिक करें.
  • एक्सप्लोरर पैनल में, अपने प्रोजेक्ट के नाम को बड़ा करें. इसके बाद, कनेक्शन पर क्लिक करें.
  • कनेक्शन पेज पर, कनेक्शन बनाएं पर क्लिक करें.
  • कनेक्शन टाइप के लिए, Vertex AI रिमोट मॉडल, रिमोट फ़ंक्शन, BigLake, और Spanner (क्लाउड रिसोर्स) चुनें.
  • कनेक्शन आईडी फ़ील्ड में, कनेक्शन आईडी का नाम डालें:
  • bq-connection. इस आईडी को नोट करना न भूलें. आपको इसकी ज़रूरत तब पड़ेगी, जब इस कोडलैब में बाद में डेटा स्कैन करने की सुविधा सेट अप की जाएगी.
  • जगह के टाइप को क्षेत्र पर सेट करें. इसके बाद, कोई क्षेत्र चुनें. उदाहरण के लिए, us-central1. कनेक्शन, उसी इलाके में होना चाहिए जहां आपके अन्य संसाधन मौजूद हैं. जैसे, डेटासेट.
  • कनेक्शन बनाएं पर क्लिक करें.
  • कनेक्शन पर जाएं पर क्लिक करें.
  • कनेक्शन की जानकारी वाले पैनल में, सेवा खाता आईडी कॉपी करें, ताकि इसका इस्तेमाल बाद के चरण में किया जा सके. सेवा खाता, bqcx-**********-qn3a@gcp-sa-bigquery-condel.iam.gserviceaccount.com जैसा दिखता है.

5. अनुमतियां सेट अप करना

  1. Cloud Storage ऑब्जेक्ट और Knowledge Catalog को ऐक्सेस करने के लिए, BigQuery कनेक्शन को ज़रूरी अनुमतियां दें

आईएएम और एडमिन पेज पर जाएं. इसके बाद, 'प्रिंसिपल के हिसाब से देखें' सेक्शन में जाकर, 'ऐक्सेस दें' बटन पर क्लिक करें. इसके बाद, पिछले चरण में कॉपी किए गए सेवा खाते को चिपकाकर, प्रिंसिपल जोड़ें. भूमिकाएं सेक्शन में जाकर, एक-एक करके इन भूमिकाओं के नाम जोड़ें और सेव करें:

  • roles/storage.objectUser
  • roles/storage.objectViewer
  • roles/bigquery.user
  • roles/bigquery.dataEditor
  • roles/aiplatform.viewer
  • roles/agentplatform.user
  • roles/storage.admin
  • roles/dataproc.serviceAgent
  • roles/dataplex.discoveryPublishingServiceAgent
  • roles/dataplex.serviceAgent
  • roles/dataplex.securityAdmin
  1. Dataplex सेवा खाते को Cloud Storage बकेट ऐक्सेस करने की अनुमतियां देना

IAM और एडमिन पेज पर जाएं. इसके बाद, 'प्रिंसिपल के हिसाब से देखें' सेक्शन में जाकर, 'ऐक्सेस दें' बटन पर क्लिक करें. इसके बाद, 'नया प्रिंसिपल' टेक्स्ट बार में Dataplex टाइप करके, प्रिंसिपल जोड़ें. अपने-आप पूरी होने वाली सूची में से, Dataplex सेवा खाते का वह प्रिंसिपल चुनें जो इस तरह दिखता है:

service-*********@ gcp-sa-dataplex.iam.gserviceaccount.com

इस सेवा खाते को ये भूमिकाएं असाइन करें:

  • roles/storage.objectUser
  • roles/storage.objectViewer
  • roles/storage.viewer
  • roles/dataplex.discoveryBigLakePublishingServiceAgentroles/storage.objectUser
  • roles/storage.objectViewer
  • roles/storage.viewer
  • roles/dataplex.discoveryBigLakePublishingServiceAgentroles/storage.objectUser
  • roles/storage.objectViewer
  • roles/storage.viewer
  • roles/dataplex.discoveryBigLakePublishingServiceAgent

6. नॉलेज कैटलॉग का सेटअप

अनस्ट्रक्चर्ड डेटा को एक जगह इकट्ठा करने के लिए, नॉलेज कैटलॉग बनाएं. साथ ही, अनस्ट्रक्चर्ड फ़ाइलों (जैसे कि पीडीएफ़ फ़ॉर्मैट में रेसिपी और पीडीएफ़ फ़ॉर्मैट में सप्लायर) को अपने-आप ढूंढने की सुविधा चालू करें.

  1. curl के ज़रिए DataScan बनाना

इस जॉब को कंसोल से भी बनाया जा सकता है. हालांकि, इस सेक्शन में हम Cloud Storage बकेट के लिए स्कैन बनाएंगे. इसके लिए, datascan_ID जोड़कर इसे BigQuery डेटासेट पर पॉइंट किया जाएगा. इसके बाद, Knowledge Catalog आपके PDF के लिए BigQuery में अपने-आप एंट्री बना देगा.

अपने मौजूदा ऐक्टिव प्रोजेक्ट के Cloud Shell टर्मिनल में, यहां दिए गए निर्देशों का पालन करें:

# 1. Set your variables
PROJECT_ID="<PROJECT_ID>"
REGION="<REGION>"
ENV_SUFFIX="stg1"
DATASCAN_ID="froyo-data-${ENV_SUFFIX}"
BUCKET_NAME="<BUCKET_NAME>"

# 2. Set this to the Name of the connection you created in Step 7
CONNECTION_ID="<CONNECTION_ID_NAME>"

# 3. Define the API Endpoint
DATAPLEX_API="dataplex.googleapis.com/v1/projects/${PROJECT_ID}/locations/${REGION}"

# 4. Create the DataScan via CURL
echo "Creating Dataplex DataScan: ${DATASCAN_ID}..."

curl -X POST "https://$DATAPLEX_API/dataScans?dataScanId=${DATASCAN_ID}" \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
"data": {
   "resource": "//storage.googleapis.com/projects/'"${PROJECT_ID}"'/buckets/'"${BUCKET_NAME}"'"
   },
"executionSpec": {
   "trigger": {
      "on_demand": {}
   }
},
"dataDiscoverySpec": {
   "bigqueryPublishingConfig": {
      "tableType": "BIGLAKE",
      "connection": "projects/'"${PROJECT_ID}"'/locations/'"${REGION}"'/connections/'"${CONNECTION_ID}"'"
   },
   "storageConfig": {
      "unstructuredDataOptions": {
      "entity_inference_enabled": true
      }
   }
   }
}'

कमांड को सही तरीके से चलाने के लिए, ऊपर दिए गए प्लेसहोल्डर वैरिएबल की वैल्यू बदलें. ध्यान रखें कि इससे सिर्फ़ जॉब बनती है, यह चलती नहीं है.

  1. एक या दो मिनट बाद, Google Cloud Console में मेटाडेटा क्यूरेशन पेज पर जाएं.
  2. Cloud Storage डिस्कवरी टैब में, डिस्कवरी स्कैन आइटम के नाम पर क्लिक करें. ध्यान रखें कि आपको सोर्स लिंक पर क्लिक नहीं करना है. ऐसा करने पर, स्टोरेज खुल जाएगा.

31afb1dc3caba5f6.png

  1. ज़रूरी चरण:

जॉब में बदलाव करें और पक्का करें कि "सिमेंटिक इन्फ़रेंस की सुविधा चालू करें" चेकबॉक्स पर सही का निशान लगा हो. अगर ऐसा नहीं है, तो इसे चुनें. इसके बाद, प्रोजेक्ट आईडी और क्षेत्र डालें. इसके बाद, सेव करें पर क्लिक करें.

c021927bf80fe204.png

इसके बाद, Cloud Shell टर्मिनल से यह कमांड चलाएं या Cloud Storage Discovery पेज पर मौजूद, 'अभी चलाएं' बटन पर क्लिक करें:

gcloud dataplex datascans run $DATASCAN_ID --location=$REGION
  1. स्कैन करने की प्रोसेस पूरी होने में कुछ समय लगेगा. जॉब पूरा होने के बाद, देखें कि पब्लिश किया गया डेटासेट मौजूद है या नहीं. जॉब का स्टेटस देखने के लिए, मेटाडेटा क्यूरेशन पेज पर जाएं. इसके बाद, Cloud Storage डिस्कवरी टैब में जाकर, हाल ही में किए गए डिस्कवरी स्कैन के नाम पर क्लिक करें. आपको पब्लिश किया गया डेटासेट इस तरह दिखेगा:

d0cd6ae1edb81ce9.png

ध्यान दें: अगर स्कैन करने के चरण में आपको गड़बड़ियां मिलती हैं, तो कुछ समय इंतज़ार करें. इसके बाद, फिर से कोशिश करें. जॉब बनाने और उसे पूरा करने में कुछ मिनट लगते हैं.

BigQuery में टेबल देखने के लिए, froyo_data डेटासेट पर क्लिक करें और उस पर जाएं. BigQuery में टेबल आईडी पर क्लिक करें और क्वेरी एडिटर टैब में नीचे दी गई क्वेरी चलाएं:

SELECT count(*) FROM `agent-data-cloud.froyo_data.froyo_data` LIMIT 1000;

इससे 400 मिलता है. अगर ऐसा नहीं होता है, तो वापस जाकर डेटास्कैन जॉब को फिर से चलाएं.

7. सिमैंटिक डेटा एक्सट्रैक्शन

बहुत बढ़िया!! अब नॉलेज कैटलॉग का इस्तेमाल करके, इन अनस्ट्रक्चर्ड ऑब्जेक्ट के लिए अनुमान निकालते हैं.

हम इनसाइट जनरेट करने की सुविधा का इस्तेमाल करके, एसक्यूएल स्टेटमेंट जनरेट करेंगे. इससे अनस्ट्रक्चर्ड टेबल से स्ट्रक्चर्ड डेटा निकाला जा सकेगा

  1. Google Cloud Console में, नॉलेज कैटलॉग खोजें पेज पर जाएं.
  2. उस डेटासेट टेबल को खोजें जिसके लिए आपको अहम जानकारी देखनी है. खोज बार में, पिछले चरण में इस्तेमाल किया गया डेटासेट / टेबल का नाम डालें: "froyo_data" और Enter दबाएं
  3. नतीजों की सूची में, टेबल एंट्री पर क्लिक करें. डेटासेट वाली एंट्री पर क्लिक न करें
  4. आपको अहम जानकारी टैब दिखेगा. उस पर क्लिक करें. अगर आपको कोई एपीआई चालू करना है, तो निर्देशों का पालन करें और सिर्फ़ एपीआई चालू करें.

अगर आपने इस चरण में एपीआई चालू किए हैं, तो आपको स्कैन करने की प्रोसेस फिर से शुरू करनी होगी.

  1. आपको 'अहम जानकारी' टैब में, 'डेटा एक्सट्रैक्ट करें' बटन का ड्रॉप-डाउन दिखेगा. उस पर क्लिक करें और "SQL की मदद से डेटा निकालें" विकल्प चुनें.

89809b34c610569d.png

"Extract with SQL" डायलॉग पॉप-अप में, DESTINATION डेटासेट को उस डेटासेट के तौर पर सेट करें जो आपको डेटास्कैन जॉब के नतीजे में दिखा था. उसका नाम टाइप करना शुरू करें. इसके बाद, वह नाम अपने-आप पूरा होने लगेगा. "निकालें" बटन पर क्लिक करें. इसके अलावा, इस समय एक नया डेटासेट बनाया जा सकता है और उसे एक्सट्रैक्ट किया जा सकता है.

इससे BigQuery क्वेरी एडिटर खुलना चाहिए. इसमें एक टैब खुला होगा. इसमें डेटा स्कैन करने के बाद निकाली गई एसक्यूएल क्वेरी मौजूद होगी.

8. एसक्यूएल की पुष्टि करना और स्कीमा बनाना

अगर जनरेट की गई क्वेरी सही है और आपके अनस्ट्रक्चर्ड डेटा के हिसाब से सही है, तो क्वेरी एडिटर में मौजूद 'चलाएं' बटन पर क्लिक करके इसे चलाएं. आपके अव्यवस्थित मीडिया को व्यवस्थित तरीके से सेव करने के लिए ज़रूरी स्कीमा बनाने में कुछ मिनट लगेंगे.

इसके बाद, आपको स्कीमा की पुष्टि करने का विकल्प मिलेगा. इसके लिए, BigQuery Studio के एक्सप्लोरर पैनल में डेटासेट को बड़ा करें. इसे यहां दिखाया गया है:

6e65906240a9a8be.png

ठीक है!!! यह बहुत अच्छा था कि हमने डेटाबेस से जुड़ी सभी कार्रवाइयां बहुत तेज़ी से कीं. अब समय है आखिरी परीक्षा का!

9. सबसे मुश्किल परीक्षा!!!

मान लें कि मुझे अपने एजेंट से, उपयोगकर्ता के सवालों के जवाब में तथ्यों पर आधारित, असली, पूरी, और अच्छी तरह से व्यवस्थित जानकारी चाहिए. मैं एक ऐसा सवाल पूछने जा रहा/रही हूं जिसका जवाब एजेंट सिर्फ़ मेरी मीडिया फ़ाइलों और सोर्स के रेफ़रंस से दे पाएगा.

उपयोगकर्ता का सवाल यहां दिया गया है:

I'm really interested in your Midnight Swirl froyo. Are there any allergens in it?

अब सामान्य खोज या एलएलएम खोज में, "कोई सामग्री नहीं" लिखा होगा. हालांकि, हमने पूरी तरह से सिमैंटिक इन्फ़रेंस बनाया है. इससे हमारे सभी अनस्ट्रक्चर्ड मीडिया को स्ट्रक्चर्ड डेटा में बदला जा सकता है. इसलिए, यहां एक आसान एसक्यूएल दिया गया है, जो यह जानकारी फ़ेच करेगा:

SELECT p.product_name, i.ingredient_name, a.allergen_name, category, stability
FROM froyo_data.consistsof c
INNER JOIN froyo_data.product p
  ON c.product_id = p.product_id
INNER JOIN froyo_data.ingredient i
  ON c.ingredient_id = i.ingredient_name
LEFT OUTER JOIN froyo_data.containsallergen a
  ON i.ingredient_id = a.ingredient_id
WHERE
  UPPER(p.product_name) LIKE '%MIDNIGHT%SWIRL%'
  AND allergen_name IS NOT NULL;

बहुत बढ़िया! नतीजा देखें:

f582d55814a23e8.png

10. व्यवस्थित करें

यह लैब पूरा होने के बाद, स्कैन जॉब और जॉब से बनी BigQuery टेबल को मिटाना न भूलें.

https://console.cloud.google.com/bigquery/governance/metadata-curation/cloud-storage-discovery पर जाएं. आपको जिस नौकरी को मिटाना है उसे चुनें. इसके लिए, उसके बगल में मौजूद तीन बिंदु वाले आइकॉन पर क्लिक करें. इसके बाद, मिटाएं पर क्लिक करें.

9fcbbfa1a9ccba6d.png

इससे काम पूरा हो जाना चाहिए.

11. बधाई हो

हमारे सिस्टम ने, छिपे हुए ऐलर्जन की पहचान कर ली है. अब कम रोशनी में लिए गए डेटा की ज़रूरत नहीं है!!! दूसरे हिस्से में, हम इस BigQuery डेटा को AlloyDB के साथ लेन-देन वाले सिस्टम में फ़ेडरेट करेंगे, ताकि हम अपने एजेंटिक ऐप्लिकेशन के लिए डेटा की ज़रूरतों को पूरा कर सकें.