বিষয়বস্তুতে যান

Microsoft Fabric: সারি ইনজেস্ট করুন

একটি জার্নি স্টেপ থেকে, Fabric ইনজেস্ট API-এর মাধ্যমে, একটি Eventhouse (KQL) টেবিলে একটি সারি স্ট্রিম করতে Microsoft Fabric: ingest row ব্যবহার করুন। অন্যান্য ইন্টিগ্রেশন পয়েন্টগুলির মতো এটি নিজস্ব টোকেন নেয় না, এটি একটি Entra ID অ্যাপ্লিকেশনের মাধ্যমে প্রমাণীকরণ করে যা পুরো অ্যাকাউন্টের জন্য একবার সংযুক্ত করা হয়। পয়েন্টটিতে কোনো টোকেন ফিল্ড নেই।

সাধারণ ব্যবহার:

  • একটি রিপোর্টিং টেবিল ফিড করুন: একটি ড্যাশবোর্ড বা ডাউনস্ট্রিম নির্ধারিত কোয়েরির জন্য, প্রতিটি জার্নি স্টেপে পৌঁছানোর জন্য একটি সারি প্রবেশ করান।
  • ইভেন্টগুলি ঘটার সাথে সাথে লগ করুন: ব্যাচ পাইপলাইনের জন্য অপেক্ষা না করে সরাসরি Eventhouse-এ র’ জার্নি ডেটা স্ট্রিম করুন।
  • বিদ্যমান ডেটার সাথে যোগ করুন: একটি ডিভাইস বা ট্যাগ মান প্রবেশ করান যা আপনার Fabric টেবিলগুলি আপনার নিজস্ব ডেটাসেটের সাথে যোগ করতে পারে।

শুরু করার আগে

Anchor link to

Settings > 3rd-party integrations > Microsoft Azure এর অধীনে একটি Entra ID অ্যাপ্লিকেশন সংযুক্ত করুন:

  1. আপনার Entra ID ডিরেক্টরিতে একটি অ্যাপ্লিকেশন রেজিস্টার করুন এবং এর জন্য একটি ক্লায়েন্ট সিক্রেট তৈরি করুন।
  2. Directory (tenant) ID-তে, আপনার টেন্যান্ট লিখুন, উদাহরণস্বরূপ contoso.onmicrosoft.com।
  3. Application (client) ID-তে, অ্যাপ রেজিস্ট্রেশনের ক্লায়েন্ট আইডি লিখুন।
  4. Client secret-এ, সিক্রেটটি পেস্ট করুন। এটি শুধুমাত্র লেখার জন্য (write-only) সংরক্ষণ করা হয়: Pushwoosh এটি আর কখনও দেখাবে না, তাই এটি প্রতিস্থাপন করতে একটি নতুন পেস্ট করুন।
  5. Connect Azure-এ ক্লিক করুন।

Azure সংযোগ করার পরে, ইন্টিগ্রেশন ইনস্টল করুন যাতে পয়েন্টটি জার্নি বিল্ডারে উপস্থিত হয়।

টেন্যান্ট আইডি, ক্লায়েন্ট আইডি এবং ক্লায়েন্ট সিক্রেট ফিল্ড সহ সেটিংস Microsoft Azure সংযোগ ফর্ম

Eventhouse-এর দিকেও তিনটি জিনিস ঠিকঠাক থাকতে হবে, নতুবা অনুরোধ ব্যর্থ হবে:

  • লক্ষ্য টেবিলের একটি JSON ইনজেশন ম্যাপিং প্রয়োজন — JSON-এর স্ট্রিমিং ইনজেশন এটি ছাড়া কাজ করে না।
  • অ্যাপ রেজিস্ট্রেশনের Eventhouse-এ ingestor ভূমিকা প্রয়োজন। Fabric UI-তে এর জন্য কোনো বোতাম নেই — Eventhouse-এর কোয়েরি উইন্ডোতে এটি চালিয়ে এটি মঞ্জুর করুন:
.add database ['<database name>'] ingestors ('aadapp=<Application (client) ID>;<Directory (tenant) ID>')
  • KQL ডাটাবেসের স্ট্রিমিং ইনজেশন পলিসি সক্রিয় করতে হবে। একই কোয়েরি উইন্ডোতে এটি চালান:
.alter database ['<database name>'] policy streamingingestion enable

এই কমান্ডগুলিতে ডাটাবেসের নামের চারপাশে ['...'] রাখুন যদি এতে একটি হাইফেন থাকে — একটি খালি হাইফেনযুক্ত নাম পার্স করতে ব্যর্থ হয়।

পয়েন্টটি কনফিগার করুন

Anchor link to
  1. বাম প্যানেলের Integrations বিভাগ থেকে Microsoft Fabric: ingest row ক্যানভাসে টেনে আনুন।
  2. পয়েন্টটিতে ডাবল-ক্লিক করুন এবং একটি Step Name লিখুন।
  3. Query URI host-এ, Eventhouse-এর System overview পৃষ্ঠা থেকে এর Query URI থেকে আপনার Eventhouse-এর হোস্ট লিখুন। https:// অন্তর্ভুক্ত করবেন না, উদাহরণস্বরূপ trd-abc123.z9.kusto.fabric.microsoft.com।
স্টেপের নাম পূরণ করা এবং কোয়েরি ইউআরআই হোস্ট একটি কুস্টো ইউআরএলে সেট করা সহ Microsoft Fabric ইনজেস্ট রো ড্রয়ার
  1. KQL database-এ, লক্ষ্য ডাটাবেসের নাম লিখুন।
KQL ডাটাবেস ফিল্ড am-test এ সেট করা আছে
  1. Table-এ, লক্ষ্য টেবিলের নাম লিখুন।
টেবিল ফিল্ড ইভেন্টস এ সেট করা আছে
  1. Ingestion mapping-এ, সেই টেবিলে তৈরি করা JSON ম্যাপিংয়ের নাম লিখুন।
ইনজেশন ম্যাপিং ফিল্ড EventsJsonMapping এ সেট করা আছে
  1. Columns-এ, লেখার জন্য প্রতিটি Eventhouse কলামের জন্য একটি করে সারি যোগ করুন। কলামের নাম এবং মান লিখুন। নামগুলি খালি এবং অনন্য হতে হবে। একটি মান নির্দিষ্ট টেক্সট বা একটি ট্র্যাভেলার ম্যাক্রো হতে পারে যেমন {{tag:Name}}, যা একটি Webhook বডিতে ব্যবহৃত ম্যাক্রোগুলির মতোই। অথবা Insert Dynamic Value-এ ক্লিক করে এই জার্নির আগের কোনো স্টেপে তৈরি হওয়া একটি অ্যাট্রিবিউট বেছে নিন, যেমন একটি LLM প্রতিক্রিয়া বা একটি ম্যাপ করা Webhook মান।
ডিভাইস hwid ম্যাক্রোতে ম্যাপ করা device_id সহ কলামের নাম এবং মানের টেবিল
  1. Save-এ ক্লিক করুন।

প্রতিক্রিয়া

Anchor link to

ট্র্যাভেলারটি ক্যানভাসে আপনার সংযুক্ত করা পরবর্তী স্টেপে চলে যাবে।

স্টেপ চলার পরে অ্যাট্রিবিউট

Anchor link to

এই পয়েন্টটি কোনো প্রতিক্রিয়া ডেটা জার্নিতে ম্যাপ করে না।

ব্যর্থতা এবং অপ্রত্যাশিত প্রতিক্রিয়া

Anchor link to

পয়েন্টের ড্রয়ারে কল লগ খুলুন এবং প্রতিক্রিয়া পরীক্ষা করুন:

  • 401 বা 403 — সংযুক্ত Entra ID অ্যাপ্লিকেশনের ক্রেডেনশিয়াল বা এর ingestor ভূমিকা ভুল বা অনুপস্থিত।
  • 520 সাথে StreamingIngestionException: Failed to initialize cursor tracker... — KQL ডাটাবেসের স্ট্রিমিং ইনজেশন পলিসি সক্রিয় করা নেই। ত্রুটির নিজস্ব permanent: false ফ্ল্যাগটি “পরে আবার চেষ্টা করুন” হিসাবে পড়া হয়, কিন্তু পুনরায় চেষ্টা করলে এটি ঠিক হয় না। Eventhouse-এর কোয়েরি উইন্ডোতে .alter database ['<database name>'] policy streamingingestion enable চালান (শুরু করার আগে দেখুন)।

একটি ব্যর্থ অনুরোধ ট্র্যাভেলারকে জার্নি থেকে বাদ দেয়। ত্রুটি এবং ব্যর্থ অনুরোধ দেখুন।

উদাহরণ পরিস্থিতি: একটি Fabric ড্যাশবোর্ডে জার্নি অ্যাক্টিভিটি স্ট্রিম করা

Anchor link to

একটি দল একটি সক্রিয় জার্নি জুড়ে পৌঁছানো প্রতিটি স্টেপের একটি লাইভ ড্যাশবোর্ড চায়, ব্যাচ এক্সপোর্টের জন্য অপেক্ষা না করে।

  1. আপনি যে স্টেপটি ট্র্যাক করতে চান তার ঠিক পরে Microsoft Fabric: ingest row যোগ করুন। KQL database am-test-এ, Table Events-এ, এবং Ingestion mapping EventsJsonMapping-এ সেট করুন। Columns-এ, device_id-কে {{device:hwid}}-তে সেট করুন।
  2. Save-এ ক্লিক করুন।

এটি একবার চললে, প্রতিটি ট্র্যাভেলার যারা এই স্টেপে পৌঁছাবে তারা কয়েক সেকেন্ডের মধ্যে Eventhouse টেবিলে উপস্থিত হবে, ড্যাশবোর্ডের জন্য প্রস্তুত।