استاندارد داده های مکانی چیست؟
با استاندارد OGC SFS و SQL/MM Part 3 در داده های مکانی آشنا شوید
به تازگی در سایت GISPlus، آکادمی Web GIS را راه اندازی کرده ایم. در آکادمی Web GIS، آموزش های سریع و کوتاه برنامه نویسی Web GIS را به شما ارایه خواهیم کرد. در این آموزش ها تکیه بر کار عملی می باشد و سایر آموزش های تئوری و مبانی و مفاهیم Web GIS را در کلاس Web GIS به شما آموزش خواهیم داد.
در اولین آموزش عملی آکادمی Web GIS، به شما نحوه نصب و راه اندازی پایگاه داده مکانی PostgreSQL را آموزش دادیم. در آموزش عملی بعدی، می خواهیم به شما، نحوه ورود داده های مکانی به PostgreSQL را آموزش دهیم. داده های مکانی برای ورود به پایگاه داده می بایست دارای استانداردها و شرایط خاصی باشند. برای اینکه شما را با این استانداردها و مفاهیم آشنا کنیم، در نوشته پیشین، شما را با “استانداردهای مکانی در GIS” آشنا کردیم. با شما درباره استانداردهای مکانی متن باز، صبحت کردیم. همچنین، اشاره ای به استانداردهای OGC در پیاده سازی سامانه اطلاعات مکانی، نیز داشتیم. اینک در این نوشته قصد داریم شما را با انواعاستاندارد داده های مکانی آشنا سازیم، با ما همراه باشید…
استانداردهای مکانی
کار با داده های مکانی از ایجاد آنها گرفته تا به کارگیری آنها در میان استفاده کنندگان رو به رشد بوده است. در این میان، توسعه دهندگان نرم افزارها، اقدام به تولید نرم افزارهای مختلف برای بهره برداری بهتر از قدرت داده های مکانی، نموده اند. درصورت عدم وجود استانداردهایی در این زمینه، بدیهی است که با روشها و رویه های مختلف روبرو خواهیم شد که بهره برداری از داده های مکانی را بسیار پیچیده میکنند. لذا این مهم، جامعه را بر آن داشت تا نسبت به ایجاد گروههایی به منظور ایجاد استانداردهایی برای کار با داده های مکانی، اقدام نمایند.
در مراحل راه اندازی پایگاه داده مکانی و کار با داده ه ای مکانی ، نیازمند استناد به برخی استانداردها هستیم. لذا ابتدا به مرور استاندارد داده های مکانی موجود، خواهیم پرداخت و آنها را توضیح خواهیم داد.
استاندارد OGC SFS
کنسرسیوم آزاد مکانی یا OGC ، نسخه 1.1 استاندارد عوارض مکانی ساده برای SQL (به انگلیسی: Simple Feature for SQL و به اختصار:SFS )، را در سال ۱۹۹۹ منتشر کرد. بر مبنای این استاندارد، دادههای مکانی در جداول مکانی قرار می گیرند. به طور معمول، هر لایه از نقشه در یک جدول مکانی، ذخیره میشود. علاوه بر آن، دو جدول فراداده (به انگلیسی: Metadata) با نامهای زیر نیز باید در پایگاه داده مکانی ایجاد شود:
- GEOMETRY_COLUMNS
- SPATIAL_REF_SYS
اولین جدول، اطلاعاتی در مورد ستون های مکانی برای هر جدول مکانی در پایگاهداده و دومین جدول، اطلاعات سیستم های مختصات مرجع که در پایگاه داده مجاز به استفاده می باشند را نگهداری میکنند. این بدین معناست که هر جدول مکانی، یک کلید خارجی با ارجاع به جدول GEOMETRY_COLUMNS و به همین طریق یک کلید خارجی برای ارتباط دو جدول فراداده دارد.
در این استاندارد، جهت سازماندهی اشیای مکانی، مدل شی هندسی (به انگلیسی: Geometry object model)، مورد استفاده قرار میگیرد. نوع هندسی (به انگلیسی: Geometry type) در راس سلسله مراتب، نشان داده شده است. در این مدل، انواع هندسی شامل منحنی (Curve)، سطح (Surface)، چند منحنی(MultiCurve) و چند سطحی (MultiSurface) به همراه انواعی انتزاعی آنها هستند. لازم به ذکر است که این مدل برای اشیای هندسی ۰، ۱ و ۲ بعدی ایجاد شده است. در تصویر زیر، دیاگرام این مدل را مشاهده می کنید.
استاندارد OGC SFS
در این مدل، برای کار با این اشیا، مجموعهای از توابع و عملگرهای پایهای، ارایه شده است که در جدول زیر، آنها را برحسب نوع هندسی که بر روی آن عمل میکنند، مشاهده مینمایید.
استاندارد OGC SFS ، نمایش اشیای هندسی را به دو گونه، تعریف میکند:
- نمایش متنی یا WKT
- نمایش دودویی یا WKB
استاندارد OGC SFS، دو تابع پایه زیر را به منظور ورود اشیای هندسی به پایگاهداده، تعریف کرده است:
- تابع ()GeomFromText
- تابع ()GeomFromWKB
البته این توابع دارای مشتقاتی دیگری نیز میباشند. مثلا تابع ()PointFromText به منظور ورود اطلاعات یک نقطه هندسی، مورد استفاده قرار میگیرد.
همچنین در این استاندارد، دو تابع پایه تابع ()AsText و ()AsBinary وجود دارند که به منظور خروجی گرفتن از دادههای موجود در پایگاهداده مورد استفاده قرار میگیرند. این توابع طبق استاندارد OGC SFS، جزو توابع پایه در کار با داده های مکانی می باشند. یعنی هر پایگاه داده مکانی که بخواهد از استاندارد OGC SFS پیروی کند می بایست حداقل این توابع را پیاده سازی کرده باشد. البته سایر توابع توسعهیافته نیز مبتنی بر این استاندارد در نرم افزارهای پایگاه داده مکانی پیاده شده اند. مثلا افزونه PostGIS که بر روی نرم افزار PostgreSQL نصب می شود، توابع زیاد دیگری را پیاده سازی نموده است که در آینده با آنها بیشتر آشنا می شوید.
استاندارد ISO SQL/MM Part 3 Spatial
علاوه بر استاندارد قبلی، استاندارد SQL/MM Part 3 نیز یک استاندارد ISO است که به کار با دادههای مکانی با استفاده از فرمانهای SQL میپردازد که بیشتر بر اساس OGC SFS بنیان شده است (به انگلیسی: SQL Multimedia Applications Spatial specification).
شکل زیر، سلسله مراتب نوع تعریف شده در این استاندارد را نشان میدهد. این استاندارد پیشوند ST_ را به ابتدای انواع مکانی اضافه میکند که میتواند به عنوان نوع مکانی (Spatial Type) تفسیر شود، هرچند در اصل مخفف مکانی و زمانی (Spatial and Temporal) تعریف شده است البته در این استاندارد، نوع داده زمانی، پشتیبانی نمیشود.
در اینجا نیز ST_Geometry، ST_Surface، ST_Curve، ST_MultiSurface و ST_MultiCurve انواع انتزاعی هستند. مشابه استاندارد OGC SFS، این مشخصات برای داده های ۰، ۱ و ۲ بعدی به کار میروند. توابع و عملگرهای مکانی تعریف شده در این استاندارد نیز تا حدود زیادی مشابه استاندارد OGC SFS میباشند. در ابتدای کلیه توابع نیز از پیشوند ST_ استفاده شده است. در حال حاضر، نرم افزارهای مدیریت پایگاه داده مکانی از این استانداردها پیروی می نمایند. برای مثال، افزونه مکانی PostGIS، که بر روی پایگاه داده PostgreSQL نصب می شود و به این نرم افزار امکانات کار با داده های مکانی را می افزاید، هر دوی این استانداردها را پشتیبانی مینماید و جهتگیری اصلی آن به سمت استاندارد SQL/MM میباشد.
فیلم آموزش استاندارد داده های مکانی
به شما پیشنهاد می کنیم فیلم رایگان آموزش استاندارد داده های مکانی را دانلود نمایید. ما در این فیلم، شما را با انواع استاندارد داده های مکانی آشنا می کنیم.
سخن پایانی
در این نوشته و نوشته گذشته، شما را استانداردهای مکانی و نیز استاندارد داده های مکانی آشنا کردیم. اینک شما مبانی و مفاهیم کار با داده های مکانی در پایگاه داده را می دانید. در آموزش های آتی می خواهیم به شما بگوییم چگونه بر روی نرم افزار PostgreSQL، یک پایگاه داده مکانی ایجاد نمایید و داده های مکانی و نقشه ها را وارد آن نمایید. توسط نرم افزار مدیریت پایگاه داده PostgreSQL و همچنین افزونه مکانی PostGIS، می توانید یک پایگاه داده مکانی ایجاد کرده و نقشه ها و داده های مکانی را در آن بارگزاری نمایید. در آموزش آتی شما را با افزونه مکانمند PostGIS، آشنا می کنیم.