সঞ্চিত রোড ডেটা টাইম সিরিজ ডেটা হিসেবে প্রদান করা হয়, যার মধ্যে এগুলি অন্তর্ভুক্ত:
- ট্রিপের সময়কাল
- স্পিড রিডিং ইন্টারভ্যাল (SRI)
- রুটের জ্যামিতি
BigQuery সেট-আপ করা
BigQuery-তে আপনার রোড ডেটা অ্যাক্সেস করার আগে, আপনাকে অবশ্যই Google Cloud প্রোজেক্ট সেট-আপ করতে হবে এবং ডেটা এক্সচেঞ্জে সাবস্ক্রাইব করতে হবে।
পূর্বশর্ত
আপনার Google Cloud প্রোজেক্ট ও অ্যাকাউন্টে নিম্নলিখিত কনফিগারেশন আছে কিনা তা নিশ্চিত করুন:
- BigQuery API চালু করুন। নির্দেশাবলীর জন্য, Google Cloud কনসোলের সাহায্যে সর্বজনীন ডেটাসেটে কোয়েরি করুন নিবন্ধটি দেখুন।
- Analytics Hub API চালু করুন। Analytics Hub API দেখুন।
- প্রয়োজনীয় IAM ভূমিকা দিন। সাবস্ক্রাইবার টাস্ক সম্পূর্ণ করতে এবং ডেটাসেট তৈরি করতে আপনার অ্যাকাউন্টে নিম্নলিখিত ভূমিকা আছে কিনা তা নিশ্চিত করুন:
- Analytics Hub সাবস্ক্রাইবার
(
roles/analyticshub.subscriber)- BigQuery ব্যবহারকারী
(
roles/bigquery.user)
- BigQuery ব্যবহারকারী
(
আপনার ডেটা এক্সচেঞ্জে সাবস্ক্রাইব করা
BigQuery (Analytics Hub)-এ ব্যক্তিগত ডেটা এক্সচেঞ্জের মাধ্যমে আপনার রোড ডেটা আপনার সাথে শেয়ার করা হয়। আপনার ডেটা অ্যাক্সেস করার জন্য আপনি Google-এর পার্টনারের থেকে একটি নির্দিষ্ট সাবস্ক্রাইব লিঙ্ক পাবেন। এই ডেটাসেট নিম্নলিখিত নামকরণের কনভেনশন মেনে চলে:
historical_roads_data_PROJECT_NUMBER.
আপনার ডেটা সাবস্ক্রাইব করতে:
- আপনার Google পার্টনারের দেওয়া সাবস্ক্রাইব লিঙ্কে ক্লিক করুন। এই লিঙ্কটি আপনাকে সরাসরি Google Cloud কনসোলে ডেটা এক্সচেঞ্জে নিয়ে যাবে।
- Google Cloud Console-এ, ডেটা এক্সচেঞ্জের বিবরণ পর্যালোচনা করুন।
- ডায়ালগে সাবস্ক্রাইব করুন বোতামে ক্লিক করুন।
- সাবস্ক্রিপশন সম্পূর্ণ হয়ে গেলে, লিঙ্ক করা ডেটাসেট Google Cloud কনসোলে BigQuery Explorer প্যানেলে দেখা যায়। আপনার SQL কোয়েরিতে ডেটা অ্যাক্সেস করতে, আপনি এখন Explorer প্যানেলে দেখানো টেবিলের নাম ব্যবহার করতে পারবেন।
BigQuery টেবিল
আপনার বেছে নেওয়া রুটের জমা হওয়া রোড ডেটা Google-এর মালিকানাধীন ক্লাউড প্রোজেক্টের একটি আইসোলেটেড BigQuery ডেটাসেটের অধীনে হোস্ট করা হয়। এটি আপনার সাথে BigQuery শেয়ারিংয়ে (Analytics Hub) আপনার জন্য এক্সক্লুসিভ তৈরি করা প্রাইভেট ডেটা এক্সচেঞ্জের মাধ্যমে শেয়ার করা হয়। ডেটা অ্যাক্সেস করতে, আপনাকে ডেটা এক্সচেঞ্জে সাবস্ক্রাইব করতে হবে এবং আপনার Google Cloud প্রোজেক্টের অধীনে একটি লিঙ্ক করা ডেটাসেট তৈরি করতে হবে।
শেয়ার করা BigQuery ডেটাসেটে কয়েকটি BigQuery টেবিল থাকে যেগুলি Google-এর দ্বারা সংজ্ঞায়িত ও তৈরি করা হয়। নিচে প্রতিটি টেবিলের বিবরণ দেওয়া হল।
historical_travel_time টেবিল
BigQuery টেবিল historical_travel_time-এর স্কিমা নিচে দেওয়া হল:
| নাম | মোড | ধরন | বিবরণ |
|---|---|---|---|
| selected_route_id | NULLABLE | STRING | রুটের selected_route_id |
| display_name | NULLABLE | STRING | রুটের ডিসপ্লে নাম |
| record_time | NULLABLE | টাইমস্ট্যাম্প | রুট ডেটা গণনা করার টাইমস্ট্যাম্প |
| duration_in_seconds | NULLABLE | FLOAT | রুটের ট্রাফিক-সচেতন সময়সীমা |
| static_duration_in_seconds | NULLABLE | 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 | NULLABLE | STRING | রুটের selected_route_id |
| display_name | NULLABLE | STRING | রুটের ডিসপ্লে নাম |
| record_time | NULLABLE | টাইমস্ট্যাম্প | রুট ডেটা গণনা করার টাইমস্ট্যাম্প |
| duration_in_seconds | NULLABLE | FLOAT | রুটের ট্রাফিক-সচেতন সময়সীমা |
| static_duration_in_seconds | NULLABLE | FLOAT | রুটের সেই অংশ যেখানে ট্রাফিক সম্পর্কে কোনও তথ্য নেই |
| route_geometry | NULLABLE | GEOGRAPHY | রুটের ট্রাফিক-সচেতন পলিলাইন জ্যামিতি |
| speed_reading_intervals | পুনরাবৃত্তি করা হয়েছে | রেকর্ড | লিগ্যাসি কোঅর্ডিনেট-ভিত্তিক স্পিড রিডিং ইন্টারভ্যাল। ৯ নভেম্বর, ২০২৬-এর পরে
আর পূরণ করা নাও হতে পারে। এর পরিবর্তে
speed_reading_offsets ব্যবহার করুন।
দ্রুত রিডিং ইন্টারভ্যাল দেখুন। |
| speed_reading_intervals.interval_coordinates | পুনরাবৃত্তি করা হয়েছে | GEOGRAPHY | লিগ্যাসি। ৯ নভেম্বর, ২০২৬ বা তার পরে আর অটো-ফিল নাও হতে পারে। এর পরিবর্তে
speed_reading_offsets ব্যবহার করুন। এই
ইন্টারভ্যালের জিওমেট্রি |
| speed_reading_intervals.speed | NULLABLE | STRING | লিগ্যাসি। ৯ নভেম্বর, ২০২৬ বা তার পরে আর অটো-ফিল নাও হতে পারে। এর পরিবর্তে
speed_reading_offsets ব্যবহার করুন। এই ইন্টারভ্যালের জন্য
স্পিডের শ্রেণীবিভাগ। সম্ভাব্য ভ্যালু: NORMAL, SLOW, TRAFFIC_JAM. এই
লেগ্যাসি ফিল্ডে, বেশি ট্রাফিক জ্যাম (গাঢ় লাল) 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 | NULLABLE | STRING | রুটের selected_route_id |
| display_name | NULLABLE | STRING | রুটের ডিসপ্লে নাম |
| স্ট্যাটাস* | NULLABLE | 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 থেকে কোনও রুট মুছে দিলে, এই টেবিল থেকে বেছে নেওয়া রুটটি সরিয়ে দিতে ১ ঘণ্টা পর্যন্ত অপেক্ষা করতে হতে পারে।