|
دستکاری داده با OsmosisOsmosis یک ابزار خط فرمان قدرتمند برای دستکاری و پردازش دادهٔ خام .osm است. از آن اغلب برای پردازش فایلهای بزرگ داده، تقسیم فایلهای OSM به قطعات کوچکتر و اضافهکردن یک بستهٔ تغییر (changeset) برای بهروزرسانی فایل موجود استفاده میشود. توابع بسیار زیادی در Osmosis وجود دارند و میتوانید جزئیات هر یک را در ویکی بخوانید. با این حال، بسیاری از توابع بسیار پیچیده و درکشان دشوار است، بهویژه اگر کار با برنامههای خط فرمان و OpenStreetMap را بهتازگی شروع کردهاید. این فصل به معرفی Osmosis، نصب آن روی ویندوز و استفاده از یک فرمان مقدماتی Osmosis میپردازد. Osmosis را نصب کنیدمانند osm2pgsql در فصل قبل، باید osmosis را دانلود و راهاندازی کنیم تا بتوانیم آن را از خط فرمان اجرا کنیم. فرآیند این کار بسیار شبیه osm2pgsql خواهد بود. همچنین به مقداری دادهٔ خام OSM نیاز دارید تا با آن کار کنید. اگر میخواهید مثالهای این فصل را دنبال کنید، فایل نمونهٔ ما را از اینجا دانلود کنید. همچنین میتوانید از هر فایل خام داده به انتخاب خودتان استفاده کنید. برای دانلود و آمادهسازی Osmosis مراحل زیر را دنبال کنید:
پالایش دادهOsmosis باید الآن از طریق خط فرمان بهدرستی کار کند. برای اجرای عملیات روی فایل داده، باید دایرکتوری کاری را تغییر دهیم به جایی که فایل sample_osmosis.osm.pbf در آن قرار دارد. برای راحتی، ما این فایل را در دایرکتوری C:\ قرار دادهایم.
حال بیایید اولین دستور Osmosis را یاد بگیریم. ما فرمانی را اجرا خواهیم کرد که تمام مدارس را از فایل بزرگ ما پالایش میکند. برای انجام این کار، باید چند چیز را به Osmosis بگوییم. چیزهایی که باید مشخص کنیم:
فرمانی که اجرا میکنیم این است:
سعی کنید این دستور را در خط فرمان اجرا کنید. وقتی کارش به اتمام برسد، باید یک فایل جدید در پوشهٔتان به نام schools.osm مشاهده کنید. اگر این فایل جدید را در JOSM باز کنیم، خواهیم دید که فقط مدارس از پالایش فایل نمونه در آمدهاند. بیایید فرمانی که اجرا کردیم را جزبهجز بررسی کنیم تا بفهمیم چگونه کار میکند. اول، نام برنامه را فرا میخوانیم.
سپس، فایل ورودی را ارائه میدهیم. به خاطر داشته باشید که این فایل در یک قالب فشرده است. –rbf در حقیقت کوتاهشدهٔ –read-pbf-fast است. Osmosis میداند فایلی که بعد از این پرچم عرضه میکنیم، فایلی است که میخواهیم از آن بخوانیم.
قسمت بعدی دستور را در کادر زیر میبینید. احتمالاً حدس زدهاید که این دستور میگوید osmosis باید هر چیز که تگ amenity=school دارد را بردارد. –nkv کوتاهشدهٔ –node-key-value است. این دستور میگوید Osmosis باید فقط گرههایی را بردارد که دارای کلیدها و مقدارهای ارائهشده در لیست زیر باشد. مجموعهٔ key.valueهای بیشتر را میتوان با قراردادن کاما بین آنها اضافه نمود.
در نهایت، نام و قالب فایل خروجی را مشخص میکنیم. از پرچم –wx استفاده میکنیم که کوتاهشدهٔ –write-xml است. توجه داشته باشید درصورتیکه بخواهیم از داده دوباره در قالب PBF خروجی بگیریم، میتوانیم از –wb نیز استفاده کنیم، که معادل –rbf است.
پیش به جلوتعداد کارهای پردازشی که Osmosis میتواند انجام دهد بسیار زیاد است و برای آموختن بیشتر، بهترین کار مراجعه به صفحهٔ Osmosis Detailed Usage در ویکی است. یک کارکرد مفید آن توانایی تقسیمکردن یک فایل خام OSM بزرگ به تکههای مجزاست که با مشخصکردن یک چهارگوش یا ایجاد فایل چندضلعی محصورکننده انجام میشود. میتوانید مفاهیم اساسی این فرآیند را در صفحهٔ مثالهای Osmosis پیدا کنید.
این فصل مفید بود؟
به ما بگویید و کمک کنید راهنماها را بهتر کنیم!
|