Daha çox

ArcSDE ilə arcpy ilə əlaqə yavaşdır (ArcSDESQLExecute)

ArcSDE ilə arcpy ilə əlaqə yavaşdır (ArcSDESQLExecute)


GeoDatabase -də sorğuların yerinə yetirilməsinə imkan verən bir API yaradıram. ArcSDE -yə qoşulmaq üçün ArcSDESQLExecute istifadə edirəm (Oracle verilənlər bazası ilə dəstəklənir). Bağlantı obyekti yaratmaq çox yavaşdır (~ 1.5 s):

sde_conn = arcpy.ArcSDESQLExecute (r "data  GPSERVER3.sde ilə əlaqə")

Bir API sorğusu ilə işləyərkən bunu əvvəl etmək, cavab vaxtlarını çox yavaş edir.

Ancaq yaratsamsde_connbir dəfə, API-nin ömrü boyu və sonsuza qədər yenidən istifadə etsəniz, sorğular daha sürətli olur (bəzi hallarda ~ 20 ms), çünki yenidən yaradılmır.sde_connhər dəfə.

Davam etmək pisdirsde_conndiri? Obyektin yaradılmasının davamlı bir əlaqə yaratdığından şübhələnirəm. Başlıq altında nə etdiyini bilən varmı? (hər zəng zamanı əlaqəni açıb bağlayıricra etmək?


ArcSDE əməliyyatlarından bəziləri olduqca ağırdır və sənədlərdə qeyd edilmişdir. ESRI bunu yaxşılaşdırır. Məsələn, kursorlara baxın (klassik vs arcpy.da).

Başa düşə bilməyəcəyim böyük bir səhv, əlaqələrinizdə qarşılıqlı istisnaları və yük balansını necə idarə etdiyinizdir.

Ayrıca, əməliyyat problemlərinə, kilidlərə və s.

Diqqət yetirin ki, SQLExecute yalnız rahatlıq və uyğunluq təmin etmək üçün mövcuddur və mümkün olduğu qədər digər arcpy əşyalarla (yəni kursorlar, redaktor modulu və s.) İşləməlisiniz. Çox cazibədar b/c arcpy API, əsas DBMS -lərlə müqayisədə funksionallıq baxımından çox şey buraxır.


Videoya baxın: GIS Tools: ArcMapArcGIS Tool for connecting points