রাস্তার ডেটা জমা করা

জমা হওয়া রাস্তার ডেটা বলতে, আপনার বেছে নেওয়া রুটের জন্য সময়ের সাথে সাথে তৈরি করা ডেটাকে বোঝায়। Roads Selection API-এর মাধ্যমে রুট তৈরি করার পরে আপনি ডেটা পেতে শুরু করবেন। এই ডেটা তারপরে বিশদে বিশ্লেষণ, কৌশলগত পরিকল্পনা এবং রুটের দীর্ঘমেয়াদী আচরণ বোঝার জন্য ব্যবহার করা যেতে পারে।

সঞ্চিত রোড ডেটা টাইম সিরিজ ডেটা হিসেবে প্রদান করা হয়, যার মধ্যে এগুলি অন্তর্ভুক্ত:

BigQuery সেট-আপ করা

BigQuery-তে আপনার রাস্তার ডেটা অ্যাক্সেস করার আগে, আপনাকে অবশ্যই Google Cloud প্রোজেক্ট সেট-আপ করতে হবে এবং ডেটা এক্সচেঞ্জে সাবস্ক্রাইব করতে হবে।

পূর্বশর্ত

আপনার Google Cloud প্রোজেক্ট ও অ্যাকাউন্টে নিম্নলিখিত কনফিগারেশন আছে কিনা তা নিশ্চিত করুন:

  1. BigQuery API চালু করুন। নির্দেশাবলীর জন্য, Google Cloud কনসোলের সাহায্যে সর্বজনীন ডেটাসেটে কোয়েরি করুন নিবন্ধটি দেখুন।
  2. Analytics Hub API চালু করুন। Analytics Hub API দেখুন।
  3. প্রয়োজনীয় IAM ভূমিকা দিন। সাবস্ক্রাইবার টাস্ক সম্পূর্ণ করতে এবং ডেটাসেট তৈরি করতে আপনার অ্যাকাউন্টে নিম্নলিখিত ভূমিকা আছে কিনা তা নিশ্চিত করুন:
  4. Analytics Hub সাবস্ক্রাইবার (roles/analyticshub.subscriber)

আপনার ডেটা এক্সচেঞ্জে সাবস্ক্রাইব করা

BigQuery-তে (Analytics Hub) ব্যক্তিগত ডেটা এক্সচেঞ্জের মাধ্যমে আপনার রাস্তার ডেটা আপনার সাথে শেয়ার করা হয়। আপনার ডেটা অ্যাক্সেস করার জন্য আপনি Google-এর পার্টনারের থেকে একটি নির্দিষ্ট সাবস্ক্রাইব লিঙ্ক পাবেন। এই ডেটাসেট নিম্নলিখিত নামকরণের কনভেনশন মেনে চলে:

historical_roads_data_PROJECT_NUMBER.

আপনার ডেটা সাবস্ক্রাইব করতে:

  1. আপনার Google পার্টনারের দেওয়া সাবস্ক্রাইব লিঙ্কে ক্লিক করুন। এই লিঙ্কটি আপনাকে সরাসরি Google Cloud কনসোলে ডেটা এক্সচেঞ্জে নিয়ে যাবে।
  2. Google Cloud কনসোলে, ডেটা এক্সচেঞ্জের বিবরণ পর্যালোচনা করুন।
  3. ডায়ালগে সাবস্ক্রাইব করুন বোতামে ক্লিক করুন।
  4. সাবস্ক্রিপশন সম্পূর্ণ হয়ে গেলে, লিঙ্ক করা ডেটাসেট Google Cloud কনসোলে BigQuery Explorer প্যানেলে দেখা যায়। আপনি এখন এক্সপ্লোরার প্যানেলে দেখানো টেবিলের নাম ব্যবহার করে আপনার SQL কোয়েরিতে ডেটা অ্যাক্সেস করতে পারবেন।

BigQuery টেবিল

আপনার বেছে নেওয়া রুটের জমা হওয়া রোড ডেটা Google-এর মালিকানাধীন ক্লাউড প্রোজেক্টের একটি আইসোলেটেড BigQuery ডেটাসেটের অধীনে হোস্ট করা হয়। এটি আপনার সাথে শেয়ার করা হয় BigQuery শেয়ারিংয়ে (Analytics Hub) শুধুমাত্র আপনার জন্য তৈরি করা ব্যক্তিগত ডেটা এক্সচেঞ্জের মাধ্যমে। ডেটা অ্যাক্সেস করতে, আপনাকে ডেটা এক্সচেঞ্জে সাবস্ক্রাইব করতে হবে এবং আপনার Google Cloud প্রোজেক্টের অধীনে একটি লিঙ্ক করা ডেটাসেট তৈরি করতে হবে।

শেয়ার করা BigQuery ডেটাসেটে কয়েকটি BigQuery টেবিল অন্তর্ভুক্ত থাকে যা Google-এর মাধ্যমে সংজ্ঞায়িত ও তৈরি করা হয়। নিচে প্রতিটি টেবিলের বিবরণ দেওয়া হল।

historical_travel_time টেবিল

BigQuery টেবিল historical_travel_time-এর স্কিমা নিচে দেওয়া হল:

নাম মোড ধরন বিবরণ
selected_route_id নালেবেল STRING রুটের selected_route_id
display_name NULLABLE STRING রুটের ডিসপ্লে নাম
record_time নালেবেল টাইমস্ট্যাম্প রুট ডেটা গণনা করার টাইমস্ট্যাম্প
duration_in_seconds NULLABLE FLOAT রুটের ট্রাফিক-সচেতন সময়সীমা
static_duration_in_seconds নালেবেল FLOAT রুটের সেই অংশ যেখানে ট্রাফিক সম্পর্কে কোনও তথ্য নেই
route_geometry NULLABLE GEOGRAPHY রুটের ট্রাফিক-অ্যাওয়ার পলিলাইন জিওমেট্রি
road_segment_ids রিপিট করা হয়েছে STRING রুটের মধ্যে রাস্তার অংশ, যা প্লেস আইডি হিসেবে দেখানো হয়

টেবিল সংক্রান্ত আচরণ ও তথ্য

  • টেবিলটি দিন অনুযায়ী ভাগ করা হয়েছে এবং প্রতিটি পার্টিশনের জন্য ১০ বছরের মেয়াদ শেষ হওয়ার তারিখ সেট করা আছে।
  • ব্যাচে লেখা লেটেস্ট ট্রাফিক ডেটা দিয়ে প্রতি ঘণ্টায় টেবিল আপডেট করা হয়।
  • Roads Selection API-তে নতুন রুট তৈরি করা হলে, এই টেবিলে ডেটা উপলভ্য হতে ১ ঘণ্টা পর্যন্ত সময় লাগতে পারে।
  • 'রাস্তা বেছে নেওয়া' API থেকে কোনও রুট মুছে দেওয়া হলে, সেই রুটের জন্য এই টেবিলে কোনও নতুন ডেটা লেখা হয় না। তবে, মেয়াদ শেষ না হওয়া পর্যন্ত পুরনো ডেটা থেকে যায়।
  • রুট বরাবর রোড সেগমেন্ট টপোলজিক্যাল অর্ডার মেনে চলে এবং সবসময় কানেক্ট করা থাকে।

recent_roads_data টেবিল

মনে রাখবেন: আপনার চুক্তিতে রিয়েল-টাইম রোড ডেটা অন্তর্ভুক্ত থাকলে তবেই এই টেবিল উপলভ্য হবে।

historical_travel_time-এর থেকে আলাদা, এই টেবিলে অফসেট-ভিত্তিক স্পিড রিডিং ইন্টারভ্যাল (speed_reading_offsets) এবং লিগ্যাসি কোঅর্ডিনেট-ভিত্তিক স্পিড রিডিং ইন্টারভ্যালও (speed_reading_intervals) থাকে। BigQuery-তে স্কিমা এখানে দেওয়া হল:

নাম মোড ধরন বিবরণ
selected_route_id নালেবেল STRING রুটের selected_route_id
display_name NULLABLE STRING রুটের ডিসপ্লে নাম
record_time নালেবেল টাইমস্ট্যাম্প রুট ডেটা গণনা করার টাইমস্ট্যাম্প
duration_in_seconds NULLABLE FLOAT রুটের ট্রাফিক-সচেতন সময়সীমা
static_duration_in_seconds নালেবেল FLOAT রুটের সেই অংশ যেখানে ট্রাফিক সম্পর্কে কোনও তথ্য নেই
route_geometry NULLABLE GEOGRAPHY রুটের ট্রাফিক-সচেতন পলিলাইন জ্যামিতি
speed_reading_intervals পুনরাবৃত্তি করা হয়েছে রেকর্ড করুন লিগ্যাসি কোঅর্ডিনেট-ভিত্তিক স্পিড রিডিং ইন্টারভ্যাল। ৯ নভেম্বর, ২০২৬ বা তার পরে পপুলেট করা বন্ধ হয়ে যেতে পারে। এর পরিবর্তে speed_reading_offsets ব্যবহার করুন। স্পিড রিডিং ইন্টারভাল দেখুন।
speed_reading_intervals.interval_coordinates পুনরাবৃত্তি করা হয়েছে GEOGRAPHY লিগ্যাসি। ৯ নভেম্বর, ২০২৬ বা তার পরে আর অটো-ফিল নাও হতে পারে। পরিবর্তে speed_reading_offsets ব্যবহার করুন। এই ইন্টারভ্যালের জিওমেট্রি
speed_reading_intervals.speed নালেবেল STRING লিগ্যাসি। ৯ নভেম্বর, ২০২৬ বা তার পরে আর অটো-ফিল নাও হতে পারে। পরিবর্তে speed_reading_offsets ব্যবহার করুন। এই ইন্টারভ্যালের জন্য স্পিডের ক্লাসিফিকেশন। সম্ভাব্য ভ্যালু: স্বাভাবিক, ধীর, ট্রাফিক জ্যাম। এই পুরনো ফিল্ডে, বেশি ট্রাফিক জ্যাম (গাঢ় লাল) TRAFFIC_JAM হিসেবেও রিপোর্ট করা হয়; TRAFFIC_JAM_HEAVY কখনও ব্যবহার করা হয় না।
road_segment_ids রিপিট করা হয়েছে STRING রুটের সাথে সাথে রাস্তার অংশ, যা প্লেস আইডি হিসেবে দেখানো হয়
speed_reading_offsets রিপিট করা হয়েছে রেকর্ড করুন অফসেট-ভিত্তিক স্পিড রিডিং ইন্টারভাল যা রুট জুড়ে ট্রাফিক ঘনত্ব দেখায়; প্রতিটি ইন্টারভাল রুটের শুরু থেকে দূরত্ব অফসেট দ্বারা চিহ্নিত করা হয়। দ্রুত রিডিং ইন্টারভ্যাল দেখুন।
speed_reading_offsets.start_offset NULLABLE INTEGER ইন্টারভ্যালের শুরুর (অন্তর্ভুক্ত) জন্য রুটের শুরু থেকে মিটারে দূরত্বের অফসেট
speed_reading_offsets.end_offset NULLABLE INTEGER ইন্টারভ্যালের শেষ হওয়ার জন্য রুট শুরুর পয়েন্ট থেকে দূরত্ব অফসেট, মিটারে (এক্সক্লুসিভ; পরবর্তী ইন্টারভ্যালের start_offset-এর সমান)
speed_reading_offsets.speed NULLABLE STRING এই ইন্টারভ্যালের জন্য গতির শ্রেণীবিন্যাস, Google Maps ট্রাফিক লেয়ারের রঙের সাথে অ্যালাইন করা হয়েছে। সম্ভাব্য ভ্যালু: NORMAL (সবুজ), SLOW (হলুদ), TRAFFIC_JAM (লাল), TRAFFIC_JAM_HEAVY (গাঢ় লাল, ৮ অক্টোবর, ২০২৬ পর্যন্ত উপলভ্য)

সারণীর আচরণ ও তথ্য

  • টেবিলটি দিন অনুযায়ী ভাগ করা হয়েছে এবং প্রতিটি পার্টিশনের জন্য ৬০ দিনের মেয়াদ শেষ হওয়ার সময়সীমা সেট করা আছে।
  • ব্যাচে লেখা লেটেস্ট ট্রাফিক ডেটা দিয়ে প্রতি ঘণ্টায় টেবিল আপডেট করা হয়।
  • Roads Selection API-তে নতুন রুট তৈরি করা হলে, এই টেবিলে ডেটা উপলভ্য হতে ১ ঘণ্টা পর্যন্ত সময় লাগতে পারে।
  • 'রাস্তা বেছে নেওয়া' API থেকে কোনও রুট মুছে দেওয়া হলে, সেই রুটের জন্য এই টেবিলে কোনও নতুন ডেটা লেখা হবে না। তবে, মেয়াদ শেষ না হওয়া পর্যন্ত পুরনো ডেটা থেকে যায়।
  • রুট বরাবর রোড সেগমেন্ট টপোলজিক্যাল অর্ডার মেনে চলে এবং সবসময় কানেক্ট করা থাকে।
  • ৮ অক্টোবর, ২০২৬ বা তার পরে রেকর্ড করা সারির জন্য speed_reading_offsets কলামটি পপুলেট করা হয়। আগের সারিতে খালি অ্যারে আছে।
  • ৯ নভেম্বর, ২০২৬ বা তার পরে থেকে পুরনো speed_reading_intervals কলামে আর ডেটা নাও দেখানো হতে পারে। পরিবর্তে speed_reading_offsets ব্যবহার করুন।

routes_status টেবিল

টেবিলে বেছে নেওয়া রুটের মেটাডেটা ও স্ট্যাটাস সংক্রান্ত তথ্য থাকে। এর উদ্দেশ্য হল সব রুট ও স্ট্যাটাস দেখার একটি সহজ উপায় প্রদান করা। ডেটা ফিল্টার করার জন্য এটি অন্য দুটি টেবিলের সাথে যোগ করা যেতে পারে। BigQuery-তে স্কিমাটি এখানে দেওয়া হল:

নাম মোড ধরন বিবরণ
selected_route_id নালেবেল STRING রুটের selected_route_id
display_name NULLABLE STRING রুটের ডিসপ্লে নাম
স্ট্যাটাস* নালেবেল STRING রুটের স্ট্যাটাস
validation_error NULLABLE STRING রুটের যাচাইকরণ সংক্রান্ত সমস্যা
low_road_usage_start_time NULLABLE টাইমস্ট্যাম্প পুনরায় যাচাই করার সময় রুটটি প্রথমবার কম ব্যবহার করা হয়েছে বলে দেখা গেছে। এটি VALIDATION_ERROR_LOW_ROAD_USAGE-এর সাথে যুক্ত।
route_attributes NULLABLE STRING বেছে নেওয়া রুটের জন্য কাস্টম অ্যাট্রিবিউট

*এই সারণিতে রুটের স্ট্যাটাস STATE_-এর পরিবর্তে STATUS_ দিয়ে শুরু হয়। এটি অন্যথায় Roads Selection API-এর সাথে সামঞ্জস্যপূর্ণ।

টেবিল সংক্রান্ত আচরণ ও তথ্য

  • এই টেবিলে শুধুমাত্র STATUS_RUNNING বা STATUS_INVALID স্ট্যাটাসে থাকা রুট অন্তর্ভুক্ত করা হয়।
  • রুট মেটাডেটা ও স্ট্যাটাস প্রতি ঘণ্টায় আপডেট করা হয়, এটি একটানা চলতে থাকে।
  • Roads Selection API-তে নতুন রুট তৈরি হওয়ার পরে, এই টেবিলে রুট উপলভ্য হতে ১ ঘণ্টা পর্যন্ত সময় লাগতে পারে।
  • Roads Selection API থেকে কোনও রুট মুছে দিলে, এই টেবিল থেকে বেছে নেওয়া রুটটি সরিয়ে দিতে ১ ঘণ্টা পর্যন্ত অপেক্ষা করতে হতে পারে।