PostgreSQL یکی از پیشرفته ترین پایگاه داده هاست که مدل داده ای شی-رابطه ای (Object-relational data model) را پیاده سازی می کند. قابلیت بسیار خوب تعریف نوع داده های جدید به همراه ساخت توابع و عملگرهای مربوطه، این امکان را برای تیم توسعه شرکتRefractions Research Inc. فراهم آورد تا امکانات داده های مکانی به نام PostGIS را به این پایگاه داده بیفزایند. در حال حاضر PostGIS با مجوز GNU GPL یک پایگاه داده مکانی قوی در دنیای اطلاعات مکانی و قابل رقابت با نمونه های تجاری مانند Oracle Spatial شناخته می شود.
PostGIS برای اولین بار در سال 2001 انتشار یافت و در طول زمان توانست انطباق خوبی با استاندارد OGC SFS بدست آورد، هرچند از زمان انتشار نسخه 1.2 در اواخر 2006 جهت گیری توسعه به سمت تطابق بیشتر با استاندارد ISO SQL/MM است.
قابلیت های پایگاه داده مکانی PostGIS
به طور کلی، قابلیت ها این نرم افزار شامل موارد زیر است:
- اشیاء مکانی (نقطه، خط، پلیگون، چند نقطه، چندخط، چندپلیگون و مجموعه هندسی(GeometryCollection))
- شاخص مکانی (درخت R (R-tree) با (Generalized Search Trees)GiST)
- توابع تحلیلی ساده (طول، مساحت، فاصله)
- مسندهای مکانی (Spatial predicates)
- عملگرهای مکانی
- فراداده سیستم مختصات
- پشتیبانی از تصویرکردن مختصات (از طریقProj4)
- ابزارهای ورود و خروج داده
هرچند در پایگاه داده PostgreSQL شاخص درخت R موجود است اما به دلیل محدودیت هایی در پیاده سازی آن، PostGIS از GisT برروی درخت R استفاده می کند تا سازوکار شاخص گذاری بهتری را ایجاد کند. همچنین، از زمان انتشار نسخه 0.7 کتابخانه GEOS در آن مورد استفاده قرار گرفته است. امکان تجزیه و تحلیل های شبکه و مسیر یابی از طریق به کارگیری کتابخانه PgRouting وجود دارد. برای پشتیبانی داده های رستر، برخی تلاش ها از طریق ماژول PgCHIP که کتابخانه GDAL را استفاده می کند در حال انجام است. علاوه بر آن، تیم توسعه بر آن است تا پشتیبانی کامل توپولوژی را فراهم آورد.
نوع داده های هندسی پیاده سازی شده در PostGIS از سلسله مراتب رده هندسی توصیف شده توسط OGC SFS پیروی می کند. به علاوه، تمام توابع و عملگرهای استاندارد در کنار ایجاد نمونه های جدید که در جدول 3-14 فهرست شده اند، پیاده سازی شده اند.علاوه بر دو فرمت استاندارد WKT و WKB، PostGIS دو فرمت جدید توسعه یافته EWKT (Extended Well-Known Text) و EWKB (Extended Well-Known Binary) را برای دادهای سه و چهار بعدی (3dz، 3dm و 4d) را تامین کرده است.
الحاقات PostGIS به توابع OGC SFS
تابع | طبقه |
DropGeometryTable, UpdateGeometrySRID | توابع مدیریت |
Operators for comparison of bounding boxes of geometries and also to test if two geometries are the same. | عملگرها |
ST_area2d, ST_distance_spheroid, ST_length2d, length3d, ST_length_spheroid, ST_length3d_spheroid, ST_distance, ST_max_distance, ST_perimeter2d, ST_perimeter3d, ST_azimuth | توابع اندازه گیری |
ST_AsBinary, ST_AsEWKT, ST_AsEWKB, ST_AsHEXEWKB, ST_AsSVG, ST_AsGML, ST_AsKML | خروجی های هندسی |
ST_GeomFromEWKT, ST_GeomFromEWKB, ST_MakePoint, ST_MakePointM, ST_MakeBox2D, ST_MakeBox3D, ST_MakeLine, ST_LineFromMultiPoint, ST_MakePolygon, ST_BuildArea, ST_Polygonize, ST_Collect, ST_Dump, ST_DumpRings | سازنده های هندسی (Geometry Constructors) |
ST_AddBBOX, ST_DropBBOX, ST_AddPoint, ST_RemovePoint, ST_SetPoint, ST_Force_collection, ST_Force_2d, ST_Force_3dz, ST_Force_3d, ST_Force_3dm, ST_Force_4d, ST_Multi, ST_Transform, ST_Affine (2D and 3D Affine), ST_Translate, ST_Scale, ST_RotateZ, ST_RotateX, ST_RotateY, ST_TransScale, ST_Reverse, ST_ForceRHR (for Right-Hand-Rule), ST_Simplify, ST_SnapToGrid, ST_Segmentize, ST_LineMerge | ویرایشگرهای هندسی |
ST_line_interpolate_point, ST_line_substring, ST_line_locate_point, ST_locate_along_measure, ST_locate_between_measures | ارجاع طولی (Linear Referencing) |
ST_Summary, ST_box2d, ST_box3d, ST_extent (maximum extent of geometry features), ST_zmflag, ST_HasBBOX, ST_ndims, ST_nrings, ST_npoints, ST_isvalid, ST_expand, ST_estimated_extent, ST_find_srid, ST_mem_size (amount of space geometry takes in memory), ST_point_inside_circle, ST_xmin, ST_xmax, ST_Accum | متفرقه |
Besides functions that are similar to OGC SFSQL: ST_CoordDim, ST_IsValid, ST_OrderingEquals, ST_Perimeter, ST_Transform, ST_WKBToSQL, ST_WKTToSQL | توابع SQL-MM |
ST_EnvelopesIntersect, ST_Is3d, ST_IsMeasured, ST_LocateAlong, ST_LocateBetween, ST_M, ST_Z | توابع ArcSDE |
postgis فوق العاده ست. بر اساس تجربه کاری با postgis اینو میگم
کاملا درسته. مخصوصا با امکاناتی که در ورژن ۲ به postgis اضافه شده.
با سلام و احترام
امکان داره نحوه نصب این نرم افزار رو در قالب یک فایل بارگذاری نمایید.
موافقم
با سلام
دوستان من یه مشکل توی postgis دارم
وقتی میخوام database رو به shape تبدیل کنم فونت utf8 رو نمیشناسه
کسی میدونه چطور این مشکل برطرف میشه ؟
Database که ایجاد می کنید Encoding رو بذارید رو روی Windows-1256 و بعد shapefile رو به دیتابیس وارد کنید.
این کارو کردم ولی نشد
کسی راه حل دیگه ای نداره ؟
انکودینگ رو روی utf-8 امتحان کردین؟ هرچند فرمت پیشفرض shapefile همون win1256 هست.
اگه نشد از برنامه Qgis برای وصل شدن به دیتابیس و گرفتن خروجی استفاده کنید.
با سلام. من دیتابیسی از شهر های ایران گردآوری کردم. حالا برای موردی میخواهم که شهر های هر استان را به تفکیک توسط شکل استان بوسیله spatial join مشخص کنم و امتیاز دهی کنم. با توجه به اینکه شکل استان را ندارم چه راه حلی برای انجام این مسئله پیشنهاد میکنید؟ ممنون
به دست آوردن لایه استان ها سخت نیست. بخش دانلود داده ها و نقشه ها را نگاه کنید.
سلام .
پاسخ به آقای حسین کشکولی ….
این مشکل در ArcGis هم وجود داره. شما اول Locale سیتم رو از تو Control Panel به فارسی یا پرشین تغیر بدهید. بعد خروجی shpe بگیرید.
احتمالاً درست میشه.
سلام دوستان دنبال مقالات مرتبط و منوال راهنمای POSTGIS میگردم
بی زحمت ایمیل کنید
abbastabatabaei@yahoo.com
با تشکر از لطفتون
سایت رسمی PostGIS مرجع مناسبی برای دانلود اینگونه اسناد است. کافیست عبارت PostGIS را در اینترنت جستجو کنید تا به سایت اصلی آن برسید.
سوالات دیگر خود را می توانید در انجمن مطرح کنید.
GISTech.ir/forum
باید توی خود arcgis، یک gdb یا ژیودیتابیس بسازید و بعد تمام شیپ فایل هاتون رو داخل اون ایمپورت کنید. فونت ها بهم نمیریزه و میخونه . کلا بهتره ژئودیتابیس درست کنید از شیپ فایل هاتون