তুমি শুরু করার আগে

এই নথিতে ডেটাসেট নিয়ে কাজ করার পূর্বশর্ত, সর্বোত্তম অনুশীলন এবং সাধারণ ত্রুটিগুলো বর্ণনা করা হয়েছে।

পূর্বশর্ত

ডেটাসেট তৈরি করার সময়:

  • আপনার গুগল ক্লাউড প্রোজেক্টের মধ্যে প্রদর্শিত নামগুলো অবশ্যই অনন্য হতে হবে।
  • প্রদর্শিত নাম অবশ্যই ৬৪ বাইটের কম হতে হবে (যেহেতু এই অক্ষরগুলি UTF-8 এ উপস্থাপিত হয়, তাই কিছু ভাষায় প্রতিটি অক্ষর একাধিক বাইট দ্বারা উপস্থাপিত হতে পারে)।
  • বিবরণের আকার অবশ্যই ১০০০ বাইটের কম হতে হবে।

ডেটা আপলোড করার সময়:

  • সমর্থিত ফাইলের ধরণগুলো হলো CSV, GeoJSON এবং KML।
  • সর্বোচ্চ সমর্থিত ফাইলের আকার হলো ৫০০ মেগাবাইট।
  • অ্যাট্রিবিউট কলামের নাম "?_" স্ট্রিং দিয়ে শুরু হতে পারবে না।
  • ত্রিমাত্রিক জ্যামিতি সমর্থিত নয়। এর মধ্যে WKT ফরম্যাটের "Z" সাফিক্স এবং GeoJSON ফরম্যাটের উচ্চতা স্থানাঙ্ক অন্তর্ভুক্ত।

ডেটা প্রস্তুতির সর্বোত্তম অনুশীলন

আপনার উৎস ডেটা যদি জটিল বা বড় হয়, যেমন ঘন বিন্দু, দীর্ঘ রেখাংশ বা বহুভুজ (প্রায়শই ৫০ মেগাবাইটের বেশি আকারের উৎস ফাইলগুলো এই শ্রেণীর অন্তর্ভুক্ত), তাহলে ভিজ্যুয়াল ম্যাপে সেরা পারফরম্যান্স পাওয়ার জন্য আপলোড করার আগে আপনার ডেটা সরলীকরণ করার কথা বিবেচনা করুন।

আপনার ডেটা প্রস্তুত করার জন্য এখানে কিছু সেরা পদ্ধতি দেওয়া হলো:

  1. ফিচার প্রোপার্টিগুলো সীমিত করুন । আপনার ম্যাপ স্টাইল করার জন্য শুধুমাত্র প্রয়োজনীয় ফিচার প্রোপার্টিগুলো রাখুন, যেমন 'id' এবং 'category'। আপনি একটি ক্লায়েন্ট অ্যাপ্লিকেশনে একটি অনন্য শনাক্তকারী কী-এর উপর ডেটা-ড্রাইভেন স্টাইল ব্যবহার করে কোনো ফিচারের সাথে অতিরিক্ত প্রোপার্টি যুক্ত করতে পারেন। উদাহরণস্বরূপ, 'ডেটা-ড্রাইভেন স্টাইলিং'-এর মাধ্যমে রিয়েল টাইমে আপনার ডেটা দেখুন
  2. টাইলের আকার কমাতে এবং ম্যাপের পারফরম্যান্স উন্নত করতে, যেখানে সম্ভব প্রপার্টি অবজেক্টের জন্য পূর্ণসংখ্যার মতো সহজ ডেটা টাইপ ব্যবহার করুন
  3. ফাইল আপলোড করার আগে জটিল জ্যামিতিগুলোকে সরল করুন । আপনি আপনার পছন্দের কোনো জিওস্পেশিয়াল টুলে, যেমন ওপেন সোর্স Mapshaper.org ইউটিলিটিতে, অথবা BigQuery-তে জটিল বহুভুজ জ্যামিতির উপর ST_Simplify ব্যবহার করে এটি করতে পারেন।
  4. ফাইল আপলোড করার আগে অত্যন্ত ঘন পয়েন্টগুলোকে ক্লাস্টার করুন । আপনি আপনার পছন্দের কোনো জিওস্পেশিয়াল টুলে, যেমন ওপেন সোর্স turf.js ক্লাস্টার ফাংশন ব্যবহার করে, অথবা BigQuery-তে ঘন পয়েন্ট জিওমেট্রির উপর ST_CLUSTERDBSCAN প্রয়োগ করে এটি করতে পারেন।

ডেটাসেট ব্যবহারের সর্বোত্তম অনুশীলন সম্পর্কে অতিরিক্ত নির্দেশনার জন্য "Datasets and BigQuery" দেখুন।

GeoJSON প্রয়োজনীয়তা

ম্যাপস ডেটাসেটস এপিআই বর্তমান জিওজেসন স্পেসিফিকেশন সমর্থন করে। ম্যাপস ডেটাসেটস এপিআই এমন জিওজেসন ফাইলগুলিও সমর্থন করে যেগুলিতে নিম্নলিখিত অবজেক্ট প্রকারগুলির যেকোনো একটি থাকে:

  • জ্যামিতিক বস্তু । একটি জ্যামিতিক বস্তু হলো একটি স্থানিক আকৃতি, যা বিন্দু, রেখা এবং বহুভুজের সংযোগ হিসাবে বর্ণিত হয় এবং এতে ঐচ্ছিক ছিদ্রও থাকতে পারে।
  • ফিচার অবজেক্ট । একটি ফিচার অবজেক্টে একটি জ্যামিতি এবং অতিরিক্ত নাম/মান জোড়া থাকে, যার অর্থ অ্যাপ্লিকেশন-নির্দিষ্ট।
  • ফিচার কালেকশন । একটি ফিচার কালেকশন হলো ফিচার অবজেক্টের একটি সেট।

Maps Datasets API এমন GeoJSON ফাইল সমর্থন করে না, যেগুলোর ডেটা WGS84 ছাড়া অন্য কোনো স্থানাঙ্ক রেফারেন্স সিস্টেমে (CRS) থাকে।

GeoJSON সম্পর্কে আরও তথ্যের জন্য, RFC 7946 অনুবর্তী দেখুন।

কেএমএল প্রয়োজনীয়তা

Maps Datasets API-এর নিম্নলিখিত প্রয়োজনীয়তাগুলো রয়েছে:

  • সমস্ত ইউআরএল অবশ্যই ফাইলটির নিজস্ব লোকাল (বা রিলেটিভ) হতে হবে।
  • বিন্দু, রেখা এবং বহুভুজ জ্যামিতি সমর্থিত।
  • সমস্ত ডেটা অ্যাট্রিবিউটকে স্ট্রিং হিসেবে বিবেচনা করা হয়।
নিম্নলিখিত KML বৈশিষ্ট্যগুলি সমর্থিত নয়:
  • ফাইলের বাইরে সংজ্ঞায়িত আইকন বা <styleUrl>
  • নেটওয়ার্ক লিঙ্ক, যেমন <NetworkLink>
  • গ্রাউন্ড ওভারলে, যেমন <GroundOverlay>
  • 3D জ্যামিতি অথবা উচ্চতা-সম্পর্কিত যেকোনো ট্যাগ যেমন <altitudeMode>
  • ক্যামেরার স্পেসিফিকেশন যেমন <LookAt>
  • KML ফাইলের ভিতরে স্টাইলগুলি সংজ্ঞায়িত করা হয়েছে।

CSV প্রয়োজনীয়তা

CSV ফাইলের জন্য, সমর্থিত কলামের নামগুলো অগ্রাধিকারের ক্রম অনুসারে নিচে তালিকাভুক্ত করা হলো:

  • latitude , longitude
  • lat , long
  • x , y
  • wkt (সুপরিচিত পাঠ্য)
  • address , city , state , zip
  • address
  • একটিমাত্র কলামে ঠিকানার সমস্ত তথ্য থাকবে, যেমন: 1600 Amphitheatre Parkway Mountain View, CA 94043

উদাহরণস্বরূপ, আপনার ফাইলে x , y , এবং wkt নামের কলাম রয়েছে। উপরের তালিকায় সমর্থিত কলাম নামগুলোর ক্রম অনুসারে x এবং y অগ্রাধিকার বেশি হওয়ায়, x এবং y কলামের মানগুলো ব্যবহৃত হয় এবং wkt কলামটি উপেক্ষা করা হয়।

এছাড়াও:

  • প্রতিটি কলামের নাম অবশ্যই একটিমাত্র কলামের অন্তর্গত হতে হবে। অর্থাৎ, আপনি xy নামের এমন কোনো কলাম রাখতে পারবেন না, যেখানে x এবং y উভয় স্থানাঙ্কের ডেটা রয়েছে। x এবং y স্থানাঙ্ক অবশ্যই আলাদা কলামে থাকতে হবে।
  • কলামের নামগুলো কেস-ইনসেনসিটিভ।
  • কলামের নামগুলোর ক্রম গুরুত্বপূর্ণ নয়। উদাহরণস্বরূপ, যদি আপনার CSV ফাইলে lat এবং long কলাম থাকে, তবে সেগুলো যেকোনো ক্রমে থাকতে পারে।

ডেটা আপলোডের ত্রুটিগুলি পরিচালনা করুন

ডেটা সেটে ডেটা আপলোড করার সময়, আপনি এই বিভাগে বর্ণিত সাধারণ ত্রুটিগুলির মধ্যে একটির সম্মুখীন হতে পারেন।

GeoJSON ত্রুটি

সাধারণ GeoJSON ত্রুটিগুলির মধ্যে রয়েছে:

  • type ফিল্ড অনুপস্থিত, অথবা type একটি স্ট্রিং নয়। আপলোড করা GeoJSON ডেটা ফাইলে প্রতিটি ফিচার অবজেক্ট এবং জিওমেট্রি অবজেক্ট সংজ্ঞার অংশ হিসেবে type নামের একটি স্ট্রিং ফিল্ড অবশ্যই থাকতে হবে।

KML ত্রুটি

সাধারণ KML ত্রুটিগুলির মধ্যে রয়েছে:

  • ডেটা ফাইলে উপরে তালিকাভুক্ত কোনো অসমর্থিত KML বৈশিষ্ট্য থাকা যাবে না, অন্যথায় ডেটা আমদানি ব্যর্থ হতে পারে।

CSV ত্রুটি

সাধারণ CSV ত্রুটিগুলোর মধ্যে রয়েছে:

  • কিছু সারিতে জ্যামিতি কলামের মান অনুপস্থিত। একটি CSV ফাইলের সমস্ত সারিতে জ্যামিতি কলামগুলির জন্য অবশ্যই অ-খালি মান থাকতে হবে। জ্যামিতি কলামগুলো হলো:
    • latitude , longitude
    • lat , long
    • x , y
    • wkt
    • address , city , state , zip
    • address
    • একটিমাত্র কলামে ঠিকানার সমস্ত তথ্য থাকবে, যেমন: 1600 Amphitheatre Parkway Mountain View, CA 94043
  • যদি x এবং y আপনার জ্যামিতি কলাম হয়, তবে নিশ্চিত করুন যে এককগুলো দ্রাঘিমাংশ এবং অক্ষাংশ। কিছু পাবলিক ডেটাসেট x এবং y হেডারের অধীনে ভিন্ন স্থানাঙ্ক ব্যবস্থা ব্যবহার করে। ভুল একক ব্যবহার করা হলে, ডেটাসেটটি সফলভাবে ইম্পোর্ট হলেও, রেন্ডার করা ডেটাতে ডেটাসেট পয়েন্টগুলো অপ্রত্যাশিত স্থানে দেখা যেতে পারে।