فایل OSM چیست؟
OpenStreetMap (OSM) مجموعه ای عظیم از ذخیره اطلاعات جغرافیایی داوطلبانه در انواع مختلف فایل ها است که از طرح های رمزگذاری مختلف برای تبدیل این داده ها به بیت ها و بایت ها استفاده می کند. OSM یک تلاش مشترک برای ایجاد یک نقشه قابل ویرایش رایگان از جهان است. خروجی اولیه این تلاش مشترک به جای خود نقشه، داده های جغرافیایی است. محدودیت در استفاده یا در دسترس بودن اطلاعات جغرافیایی در بسیاری از نقاط جهان نیاز به ایجاد یک OSM را برمی انگیزد.
دادههای موجود از OSM برای جایگزینی نقشههای Google برای برنامههای کلاسیک (فیسبوک، کریگز لیست و غیره) و دادههای پیشفرض برای برنامههای گیرنده GPS آماده است. اگرچه کیفیت دادهها در سراسر جهان متفاوت است، اما دادههای OpenStreetMap را میتوان به راحتی با منابع داده ثبت اختراع مقایسه کرد.
تاریخچه مختصر فرمت فایل OSM
با الهام از موفقیت ویکی پدیا، در سال 2004، استیو کوست، یک کارآفرین بریتانیایی، این پروژه نقشه برداری جهان مبتنی بر جامعه را در بریتانیا ایجاد کرد. او در ابتدا بر روی نقشه برداری از بریتانیا تمرکز کرد. بنیاد OpenStreetMap برای اولین بار در آوریل 2006 برای حمایت از تکامل، گسترش و گردش فضای جغرافیایی رایگان برای هر کسی تأسیس شد. در دسامبر 2006، یاهو به OpenStreetMap با عکاسی هوایی خود برای تولید نقشه کمک کرد.
داده های کامل جاده برای هلند و داده های جاده تنه برای هند و چین در آوریل 2007 توسط Automotive Navigation Data (AND) به OSM ارائه شد. در دسامبر 2007، دانشگاه آکسفورد برجسته ترین سازمانی بود که داده های OpenStreetMap را در وب سایت اصلی خود ادغام کرد. از آن زمان تاکنون، بیش از 2 میلیون کاربر ثبتنام شده با استفاده از دستگاههای GPS، عکسبرداری هوایی و بررسیهای دستی، دادهها را در این پروژه مشارکت میدهند. دادههای این انجمن تحت مجوز پایگاه داده باز در دسترس است. یک سازمان غیرانتفاعی ثبت شده در انگلستان، بنیاد OpenStreetMap، سایت OSM را نگهداری می کرد.
فرمت فایل OSM
راه ها و فرمت های فایل زیادی برای ذخیره داده های جغرافیایی وجود دارد اما فرمت فایل OSM به OpenStreetMap محدود شده است. OSM به ویژه فرمت استاندارد طراحی شده است که به راحتی در سراسر اینترنت منتقل می شود. یک فرمت مرتب شده ساختاریافته، کدگذاری شده در XML فایل osm را تشکیل می دهد. در OpenStreetMap چهار عنصر محوری برای ذخیره ساختار داده توپولوژیکی وجود دارد:
گره ها | راه ها | روابط | برچسب ها |
---|---|---|---|
نشان دهنده موقعیت جغرافیایی ذخیره شده به صورت جفت طول و عرض جغرافیایی است. برای نمایش ویژگی های نقشه بدون اندازه، مانند قله های کوه استفاده می شود. | فهرست های مرتب شده از گره ها، به معنای چند خط یا چند ضلعی نمایانگر ویژگیهای خطی مانند جادهها و رودخانهها، و مناطق، مانند مناطق پارکینگ جنگلها و پارکها. | فهرستهای مرتبشده از گرهها و راهها نشاندهنده رابطه آنها مانند موانع و پیچهای U در جادهها، بزرگراهها از راههای موجود و مناطق مختلف با سوراخ هستند. | ابردادههای مربوط به اشیاء نقشه را ذخیره کنید.* همیشه به هر گره، راه یا رابطهای متصل میشود |
Tags are used to characterize on ground physical features (buildings and roads etc.) in OpenStreetMap. Each tag relates a geographic characteristic of the feature represented by that specific node or relation. In this free tagging system, to describe a feature, unlimited number of attributes can be included in a map. Specific key and value combinations endorsed by registered users act as informal standards for the frequent used tags. However, new tags can be created whenever new aspects require to analyze previously unmapped attributes of the features. Most features use only a small number of tags for description.
سه نوع فایل توسط OSM برای ذخیره داده های اصلی خود استفاده می شود.
OSM تمام این فایل ها را با اطلاعات مربوط به جزئیات قالب بندی آنها مدیریت می کند. اما همان اشیاء داخلی توسط این فایل ها تولید می شوند. برای فایل های داده، پرچم قابل مشاهده در اشیاء OSM همیشه درست است که برای تاریخچه و فایل های تغییر صدق نمی کند.
در استفاده رایج، تنوع در فرمت های فایل OSM وجود دارد. فرمت های فایل، محتوای رمزگذاری شده روی دیسک یا سیم را به بیت و بایت تعریف می کنند. OSM قادر است حداکثر این فرمت ها را بخواند و بنویسد.
XML
فرمت اصلی OSM مبتنی بر XML است. داده های بازگشتی API پایگاه داده اصلی OSM در قالب XML است.
PBF
Protocol Buffers Encoding بر روی فرمت باینری و یکی از فشرده ترین فرمت ها قرار دارند.
O5M/O5C
فرمت باینری مبتنی بر فرمت ساده تر اما نسبتاً کمتر استفاده می شود. OSM می تواند این قالب را بخواند اما نمی تواند بنویسد.
OPL
یک قالب ساده پیشنهاد شده برای استفاده با ابزارهای خط فرمان استاندارد یونیکس. نزدیک به فایلهای CSV، به یک موجودیت OSM در یک خط اجازه میدهد.
اشکال زدایی
قالبی مبتنی بر متن که برای ایجاد اشکالزدایی در نظر گرفته شده است. OSM می تواند این قالب را بنویسد اما نمی تواند بخواند.
سیاه چاله
یک قالب ساختگی که تمام داده ها را از بین می برد. OSM می تواند این قالب را بنویسد اما نمی تواند بخواند.
OSM ذخیره سازی داده
پایگاه داده اصلی PostgreSQL OSM کپی اصلی داده های OSM را با پسوند PostGIS نگه می دارد. برای هر داده اولیه، پایگاه داده اصلی جدولی را حفظ می کند که ردیف های آن اشیاء مجزا را ذخیره می کنند. تمام ویرایش ها این پایگاه داده را به روز می کنند و سایر فرمت ها با استفاده از این پایگاه داده شکل می گیرند. پایگاه داده های قابل دانلود متعددی برای انتقال داده ها از مکانی به مکان دیگر ایجاد می شوند. دو فرمت، یکی با استفاده از XML و دیگری با استفاده از پروتکل بافر فرمت باینری (PBF) این استخرها را تعریف میکنند. اطلاعات کامل در فایلی به نام planet.osm ذخیره می شود
فشرده سازی در فایل های OSM
فرمت های مبتنی بر متن (XML، OPL و Debug) به صورت اختیاری از فشرده سازی gzip یا bzip2 استفاده می کنند.