ফিল্টার

যদি একটি প্রতিবেদনে ফিল্টার থাকে এবং একটি সম্প্রদায় সংযোগকারী অনুরোধ করা সমস্ত ক্ষেত্রের জন্য আনফিল্টার করা ডেটা ফেরত দেয় তাহলে লুকার স্টুডিও সংযোগকারী প্রতিক্রিয়াতে ফিল্টার প্রয়োগ করবে। যাইহোক, ফিল্টারগুলি কমিউনিটি সংযোগকারী স্তরে প্রয়োগ করা যেতে পারে যা কিছু ক্ষেত্রে উল্লেখযোগ্যভাবে কর্মক্ষমতা উন্নত করতে পারে। ফিল্টার তথ্য getData() অনুরোধ অবজেক্টে পাস করা হয় এবং সংযোগকারী এই তথ্যটি লুকার স্টুডিওতে ফেরত পাঠানোর আগে ডেটা ফিল্টার করতে ব্যবহার করতে পারে।

উদাহরণস্বরূপ, আপনি যদি একটি SQL ডাটাবেসের সাথে সংযুক্ত হন, তাহলে সরাসরি WHERE ক্লজে (নীচের চিত্রে B3) ফিল্টার প্রয়োগ করলে তা লুকার স্টুডিওতে ফিরে আসা সারির সংখ্যা ব্যাপকভাবে হ্রাস করতে পারে। এটি, ঘুরে, ডেটার পরিমাণ সীমিত করে যা প্রক্রিয়াকরণ করতে হবে এবং লুকার স্টুডিওতে (B5) পাঠাতে হবে।

Filter flowchart

ফিল্টার প্রয়োগের নিয়ম

  1. সমস্ত ফিল্টার প্রয়োগ করুন, বা তাদের কোনটিই নয়অসমর্থিত ফিল্টার দেখুন
  2. প্রতিক্রিয়াতে forFilterOnly ক্ষেত্রগুলি অন্তর্ভুক্ত করবেন না।
  3. AND request.dimensionsFilters অ্যারের প্রতিটি এন্ট্রি একসাথে।

    উদাহরণস্বরূপ, নিম্নলিখিত ফিল্টারের জন্য, সংযোগকারীতে শুধুমাত্র USA একটি country এবং Social source মানগুলি অন্তর্ভুক্ত করা উচিত।

    {
      "dimensionsFilters": [
        [{
          "fieldName": "country",
          "values": ["USA"],
          "type": "INCLUDE",
          "operator": "EQUALS"
        }],
        [{
          "fieldName": "source",
          "values": ["Social"],
          "type": "INCLUDE",
          "operator": "EQUALS"
        }]
      ]
    }
    
  4. OR request.dimensionsFilters অ্যারের প্রতিটি সাব-অ্যারে একসাথে।

    উদাহরণস্বরূপ, নিম্নলিখিত ফিল্টারের জন্য, সংযোগকারীতে শুধুমাত্র USA বা Canada একটি country আছে এমন মান অন্তর্ভুক্ত করা উচিত country

    {
      "dimensionsFilters": [
        [{
          "fieldName": "country",
          "values": ["Canada"],
          "type": "INCLUDE",
          "operator": "EQUALS"
        }, {
          "fieldName": "country",
          "values": ["USA"],
          "type": "INCLUDE",
          "operator": "EQUALS"
        }]
      ]
    }
    

উদাহরণ

নিম্নোক্ত উদাহরণটি রিপোর্ট ব্যবহারকারী সংজ্ঞায়িত ফিল্টার থেকে ফিল্টার করা ডেটা ফেরত কমিউনিটি সংযোগকারীতে একটি এন্ড-টু-এন্ড প্রবাহকে চিত্রিত করে।

উদাহরণ ফিল্টার

  1. রিপোর্ট ব্যবহারকারী দুটি ফিল্টার কনফিগার করেছেন:

    1. Canada, USA IN_LIST country
    2. source হল IN_LIST Social, Organic
  2. প্রতিবেদন ব্যবহারকারী source মাত্রা এবং sessions মেট্রিক সহ একটি চার্ট উপাদান কনফিগার করেছেন৷

  3. getData() নিম্নলিখিত অনুরোধ বস্তুর সাথে লুকার স্টুডিও দ্বারা কার্যকর করা হয়:

    {
      "fields": [
        {"name": "source"},
        {"name": "sessions"},
        {"name": "country", "forFilterOnly": true}
      ],
      "dimensionsFilters": [
        [{
          "fieldName": "country",
          "values": ["Canada", "USA"],
          "type": "INCLUDE",
          "operator": "IN_LIST"
        }],
        [{
          "fieldName": "source",
          "values": ["Social", "Organic"],
          "type": "INCLUDE",
          "operator": "IN_LIST"
        }]
      ]
    }
    
  4. সংযোগকারী ফিল্টার করা ডেটা দিয়ে সাড়া দেয়।

    উদাহরণের অনুরোধের জন্য, source এবং sessions ফেরত দিন যেখানে country "Canada" বা "USA" এবং source "Social" বা "Organic" । সমস্ত ফিল্টার সফলভাবে প্রয়োগ করতে সক্ষম হওয়ায় true filtersApplied সেট করুন৷

মূল তথ্য

উৎস সেশন দেশ
সামাজিক 60 USA
সামাজিক 50 কানাডা
সামাজিক 40 যুক্তরাজ্য
জৈব 90 USA
জৈব 80 কানাডা
জৈব 70 যুক্তরাজ্য
সংবাদপত্র 30 USA
সংবাদপত্র 20 কানাডা
সংবাদপত্র 10 যুক্তরাজ্য

ফিল্টার করা ডেটা

উৎস সেশন
সামাজিক 60
সামাজিক 50
জৈব 90
জৈব 80

getData() প্রতিক্রিয়া

{
  "schema": [
    {"name": "source",   "dataType": "STRING"},
    {"name": "sessions", "dataType": "NUMBER"},
  ],
  "rows": [
    {"values": ["Social", 60]},
    {"values": ["Social", 50]},
    {"values": ["Organic", 90]},
    {"values": ["Organic", 80]}
  ],
  "filtersApplied": true
}

অসমর্থিত ফিল্টার

সংযোগকারী অনুরোধে সমস্ত ফিল্টার প্রয়োগ করতে না পারলে, কোন ফিল্টারিং করা উচিত নয়। অনুরোধ করা সমস্ত ক্ষেত্র ( forFilterOnly ক্ষেত্র সহ) ফেরত দিন এবং আপনার প্রতিক্রিয়াতে filtersApplied কী সেট করুন false

উদাহরণ:

{
  "schema": [
    {"name": "source",   "dataType": "STRING"},
    {"name": "sessions", "dataType": "NUMBER"},
    {"name": "country",  "dataType": "STRING"}
  ],
  "rows": [
    {"values": ["Social", 60, "USA"]},
    {"values": ["Social", 50, "Canada"]},
    {"values": ["Social", 40, "UK"]},
    {"values": ["Organic", 90, "USA"]},
    {"values": ["Organic", 80, "Canada"]},
    {"values": ["Organic", 70, "UK"]},
    {"values": ["Newspaper", 30, "USA"]},
    {"values": ["Newspaper", 20, "Canada"]},
    {"values": ["Newspaper", 10, "UK"]},
  ],
  "filtersApplied": false
}