Vairāk

Vai tiek pārrēķināta visa failu ģeodatubāzes funkciju klase?

Vai tiek pārrēķināta visa failu ģeodatubāzes funkciju klase?


Man ir funkciju klase Esri failu ģeodatubāzē. Rediģējot līdzekļus, izmantojot ArcMap redaktoru, un dzēšot lielāko daļu savu funkciju, un paturot tikai tās, kas atrodas vidū, komanda tālummaiņa līdz slānim nedarbojas, kā paredzēts. Tā vietā, lai tuvinātu objektu klasē palikušo funkciju apjomu, apjoms būs iepriekšējais (ietver visas dzēstās funkcijas). Pārskatot funkciju klases īpašību dialoglodziņa apjoma vērtības, es skaidri redzu vecās vērtības. Tātad, šķiet, ka rediģēšanas sesija nemaina visas vērtības.

Vai ir kāds veids, kā šīs vērtības pārrēķināt?

Esmu diezgan pārliecināts, ka šai problēmai vajadzētu rasties ikvienam, kas rediģē ArcMap funkcijas ...


Esri tagad tam ir rīks 10.4 (urrā): Pārrēķiniet funkciju klases apjomu.

Es saskāros ar šo problēmu, veidojot funkciju klasi un ierakstot tajā ģeometriju ar arcpy. Acīmredzot šie rīki neatjaunina apjomu (iespējams, laba ideja veiktspējas apsvērumu dēļ).

Man ir izdevies atiestatīt 10.2.2. Apjomu ar @Lou ieteikumu:

arcpy.CompressFileGeodatabaseData_management (output_workspace) arcpy.UncompressFileGeodatabaseData_management (output_workspace)

Arklikšķiniet uz funkciju klases ArcCatalog un dodieties uz Rekvizīti. Cilnē Funkciju apjoms noklikšķiniet uz Pārrēķināt. Un voilà!

Es izmantoju ArcGIS 10.2.1


Ģeodatubāzes saspiešana sakārtos jūsu telpisko indeksu

"Ja jūs bieži pievienojat un dzēšat datus, jums katru mēnesi jāsaspiež savs fails vai personiskā ģeodatubāze. Pēc jebkādām liela mēroga izmaiņām jums vajadzētu arī saspiest ģeodatubāzi. Blīvēšana sakārto krātuvi, pārkārtojot ierakstus un novēršot neizmantoto vietu. Pēc saspiešanas katra faila datiem var piekļūt efektīvāk. Saspiežot, tiek samazināts arī katra faila lielums-iespējams, ka ģeodatubāzes lielumu var samazināt par pusi vai vairāk. "

http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/Compacting_file_and_personal_geodatabab/003n0000007t000000/

Kompakts (datu pārvaldība)

"Personiskās ģeodatubāzes ieteicams saspiest, kad tās kļūst lielākas par 250 MB. Ja datu bāzē bieži tiek veikta datu ievadīšana, dzēšana vai vispārēja rediģēšana, datu bāze regulāri jāsaspiež, lai nodrošinātu optimālu veiktspēju."

http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#//00170000000n000000


Šeit ir ArcCatalog pievienojumprogramma ArcGIS 10, kas pievieno komandu, lai atjauninātu funkciju klases apjomu, iespējams, izmantojot to pašu metodi kā @Ragi VBA kods:


GeoDatabase Extent vienmēr paplašinās - nekad nesaīsinās automātiski. Saspiešana un saspiešana optimizē tikai uzglabāšanu un sadrumstalotību, bet ne pats apjoms. Es vispirms mēģinātu atjaunot telpisko indeksu un redzēt, vai tas palīdz.

Atjaunināt:

Tā kā telpiskā indeksa pārbūve nedarīs viltību, esmu pārliecināts, ka šāds VBA kods:

Public Sub reCalcExt () Dim pGXApplication Kā IGxApplication Set pGXApplication = Lietojumprogramma Dim pGxObject As IGxObject Set pGxObject = pGXApplication.SelectedObject If Not TypeOf pGxObject.InternalObjectName Is IDName Iestatīt pSchemaLock = pName.Open pSchemaLock.ChangeSchemaLock esriExclusiveSchemaLock Dim pFeatureClassManage kā IFeatureClassManage Iestatīt pFeatureClassManage = pSchemaLock pFeatureClassManage.UpdateShemaShemaSexExExPort.exe

To var izdarīt jebkurā citā programmēšanas valodā, kuru atbalsta ESRI. Triks ir iegūt shēmas modeli un izmantot IFeatureClassManage :: UpdateExtent metodi.


Es precīzi nezinu, kas to izraisa failu ģeodatubāzēs, taču es patiešām spēju to atkārtot, un ar to esmu saskāries iepriekš. Vienīgais veids, kā es varēju uzzināt, kā to apiet, ir saspiest faila ģeodatubāzi. Tas novērsīs apjoma problēmu. Kad būsit pabeidzis, jums tas būs jāatspiež, jo jūs nevarat rediģēt saspiestā faila ģeodatubāzi.

Rediģēšanas/ArcMap sesijas laikā, kad faktiski izmantojat datus, vienmēr varat atlasīt visus | tālummaiņa, lai atlasītu kā risinājumu. Tas nav lieliski, bet esmu to izmantojis savā darbplūsmā, līdz nonācu līdz lūzuma punktam, kur varētu izdarīt šo saspiešanas/atspiešanas triku.

Ņemiet vērā, ka blietēšana nedarbosies (vismaz ne ticami). Tas atjaunos jūsu rādītājus, bet es uzskatu, ka tas nav ticams, lai novērstu apjoma problēmas. Tas joprojām ir kaut kas, kas jums laiku pa laikam jādara. Es tikko to izmēģināju vēlreiz, un tas nedarbojās manā parauga datu kopā. YMMV.


Ja vēlaties atjaunināt funkciju klasifikācijas pakāpi savā mxd dokumentā, šī koda daļa var jums palīdzēt:

Dim atskaņotāja ILayer Dim pEnumLayer Kā IEnumLayer Dim pFeatureLayer Kā IFeatureLayer Dim pFeatureClass Kā IFeatureClass Dim pFeatureClassManage Kā IFeatureClassManage pEnumLayer = pMap.Layers spēlētājs = pEnumLayer.Next Do Līdz Player ir nekas, ja typeof Player ir FeatureLayer Tad pFeatureLayer = spēlētājs pFeatureClass = pFeatureLayer.FeatureClass pFeatureClassManage = pFeatureClass pFeatureClassManage.UpdateExtent () Beigas Ja pLayer = pEnumLayer.Next Loop

Vai tiek pārrēķināta visa failu ģeodatubāzes funkciju klase? - Ģeogrāfiskās informācijas sistēmas

Es vēlos jaunināt Mapnik ražošanas sistēmā no 2.2.0 uz 3.x, lai izmantotu ar datiem pamatotās renderēšanas uzlabojumus. Par laimi, Ubuntu instalēšanas instrukcijas tika atjauninātas pavisam nesen (pirms 11 dienām, sākot ar šo ziņu), tomēr es domāju, kas notiek, ja es palaidu instalāciju sistēmā ar esošu instalāciju. Vai kāds šo ir mēģinājis?

Mēs izmantojam TileStache, lai renderētu vairākus karšu elementu galapunktus, vissvarīgāk dažus UTFGrid json failus, un esmu nobažījies, ka piesārņošu sistēmu un, iespējams, neatgriezeniski! —, palaižot instalēšanu.

Vai kāds var komentēt, kas varētu notikt, ja palaidīšu jaunāko Mapnik instalāciju sistēmā ar esošu, pareizi funkcionējošu instalāciju?

[Rediģēt 22.8.2018.]

Es nokļuvu pārejā testa serverī un iepriekšējos labojumus iekļāvu rūpīgā atbildē zemāk.

Es atcerējos, ka man bija niecīga Rackspace instance, kuru es kādreiz iestatīju, lai pārbaudītu koda pārnesamību. Tam ir gandrīz identiska mūsu tīmekļa krātuves versija, jo īpaši Ubuntu un Mapnik versijas, tāpēc tā izveidoja saprātīgu testa gultu, lai eksperimentētu ar pāreju no 2.2.x uz 3.x.

Īsumā, šī bija sarežģīta pāreja, kas ietvēra patiesu problēmu novēršanu, izpēti, kaudzes atiestatīšanu, dažas koda izmaiņas XML stila lapās, un, lai gan es atkal strādāju, mana pārliecība ir nedaudz vāja. Ja šī būtu ražošanas sistēma, dīkstāve būtu bijusi ievērojama.

Tālāk ir sniegts saraksts ar "gotčām", ar kurām es saskāros, mēģinot novērst būvniecības atkarības (c ++ kompilatora versija, clang versija, git versija utt.) Un dažas konfigurācijas/lietošanas problēmas, ar kurām es saskāros. Cerams, ka, iepazīstoties ar šo sarakstu, var izvairīties no nevajadzīgas dīkstāves un paātrināt pārejas procesu.

Mēģinot instalēt un konfigurēt Mapnik Ubuntu, izmantojot oficiālos norādījumus, kas atrodami šeit, sadaļā "Instalēt Mapnik no avota", es iesaku papildināt šīs instrukcijas ar tālāk sniegto informāciju. FWIW tas ir salīdzinājumā ar Ubuntu 12.04.5 LTS.

Pirmkārt, pirms Mapnik instalēšanas vai atinstalēšanas.

Atjauniniet kompilatoru g ++. Lai izveidotu Mapnik, ir nepieciešamas c14 kompilatora funkcijas, un jūs nevarēsit izveidot, ja kompilators neizturēs atkarību/versiju pārbaudi. Terminālī ierakstiet g ++ --versija un, ja jūsu versija ir zemāka par 4.9, dodieties uz priekšu un atjauniniet. Es izmantoju šeit atrodamo rokasgrāmatu, īpaši šīs komandas:

2) Fix Clang

Man radās problēma ar klanga versiju un to novērsu, pielāgojot šeit zem virsraksta "Mapnik Master (3.x) avota instalēšana" atrodamos norādījumus. Es mainīju visus 3.6 gadījumus uz 3.8 un, pamatojoties uz saņemto kļūdu/brīdinājumu Savā dūres instalēšanas mēģinājumā es pievienoju karodziņu -force-yes faktiskajai instrukcijai apt-get install. Šīs ir termināļa komandas, kuras es izmantoju, lai instalētu pareizo klanga versiju:

Kad esat pabeidzis, jums vajadzētu būt iespējai ierakstīt echo $ CXX un iegūt termināla izvades clang ++-3.8 vai echo $ CC un iegūt attiecīgi clang-3.8. Ja nesaņemat šīs atbildes, kaut kas var neizdoties, veicot vēlāku konfigurēšanas/veidošanas darbību.

3) Jauniniet Git

Pirmajā reizē, kad izpildīju avota bootstrap.sh komandu, kas sākotnēji izpildīja komandu bootstrap.sh, kas, šķiet, nosaka dažas būvniecības vides iezīmes. Meklējot risinājumus, šķiet, ka man bija divas iespējas, vai nu modificēt failu bootstrap.sh, aizstājot -C gadījumus ar --git -dir, jo acīmredzot tiem ir līdzvērtīga funkcionalitāte, vai jaunināt git.

Jūs varat palaist git --versiju terminālī, un##8212mine pirms jaunināšanas bija 1.7.9.5. Pēc jaunināšanas mana versija palielinājās līdz 2.18.0, un -C parametra problēma pazuda. Jaunināšana bija tik vienkārša:

4) libgdal.la nav atrasts

Es aizmirsu, kur es saskāros ar šo problēmu avota bootstrap.sh vai, iespējams, ./configure .. darbības laikā. Bet es saņēmu kļūdu:

Pamatojoties uz norādījumiem sadaļā Būvniecības vides iestatīšana, manuāli instalējot libgdal1-dev, tika novērsta šī problēma:

Man ir aizdomas, ka varat to izdarīt pirms vecā Mapnik noņemšanas vai oficiālu instalēšanas darbību uzsākšanas.

5) Goda raksts, smagums nav zināms

Veicot testu, es saņēmu šādas kļūdas:

Tie, iespējams, bija saistīti ar manu instalēto PostGRESql versiju (9.1), kas darbojas labi. Es nekad neesmu atrisinājis šīs kļūdas/brīdinājumus, taču šķiet, ka mana Mapnik būvēšana/instalēšana, neskatoties uz tām, darbojas labi. FWIW, citur instrukcijās, piezīme norāda Ubuntu 14.04 lietotājus uz 9.3.

6) Faktiski instalējiet Mapnik

Šajā brīdī es atinstalēts Mapnik, tad sāku savu jauno būvēšanu/instalēšanu. Es neesmu pārliecināts, vai vispirms ir 100% svarīgi noņemt veco Mapnik, bet es redzēju norādījumus, kas to iesaka, ne mazāk kā Dane. Tāpēc kā pirmo soli es noņēmu Mapnik.

Viss notika šādi:

Dažas no šīm darbībām, īpaši norādījumi par izgatavošanu, aizņēma diezgan ilgu laiku, iespējams, tāpēc, ka mana servera instance ir niecīga. Bet, zinot to, vismaz negaidiet tikai vienu vai divas minūtes dīkstāves. Ja vien jūs nespēlēsit pēc savvaļas rietumu noteikumiem, šo jaunināšanu vēlaties veikt saprātīgas apkopes laikā.

Šajā brīdī es saskāros ar problēmām, importējot Mapnik libs Python. TileStache meta Apache kļūdas, un tā es pamanīju.

7) Instalējiet Mapnik Python stiprinājumus

Vispirms instalējiet Mapnik Python stiprinājumus. Tas ir super viegli. Vienkārši pārliecinieties, vai jums ir pip> = 1.4, kas ir saistīts ar Python Wheels atkarību. Lai pārbaudītu, izmantojiet pipversiju. Mine's pip 7.1.2, tāpēc man ir aizdomas, ka pip versija nav problēma:

Tas, iespējams, novērsīs problēmu.

8) Pārbaudiet ldconfig

Jums tas, iespējams, nav jādara, taču, ja Python neatrod Mapnik, problēmu novēršanas norādījumi prasa pielāgot LD konfigurāciju. Es nedaudz novirzījos no problēmu novēršanas ieteikuma, galvenokārt pamatojoties uz šeit lasīto. Tā vietā, lai pievienotu ceļu tieši /etc/ld.so.conf, es izveidoju jaunu failu mapē /etc/ld.so.conf.d un pievienoju tur savas ceļa vērtības, piemēram:

Vietnē niklib.cof pievienojiet šādas trīs rindiņas:

Pēc faila saglabāšanas atjauniniet vidi ar:

Piezīme. Ja vadāt /etc/ld.so.conf.d un redzat libc.conf, un ja vi /etc/ld.so.conf.d/libc.conf un šajā failā redzat/usr/local/lib , tad varat izlaist šo 8. darbību, jo jūsu LD videi jau vajadzētu norādīt uz nepieciešamajiem ceļiem.

9) Mapnik XML dizaina faili (t.i., XML karšu stilu lapas)

Šajā brīdī es varētu palaist Python un importēt Mapnik libs, bet TileStache joprojām neatveidoja (lielāko daļu) flīžu! Ievietojot Apache žurnālu šādi:

Es pamanīju uznirstošas ​​kļūdas, kas izskatījās šādi:

Tas prasīja kādu laiku, lai saprastu un labotu. Izrādās, Mapnik noklusējuma būvēšanas no avota konfigurācijās tiek izmantota cita XML bibliotēka (rapidxml), nekā tika izmantota dažām pabeigtām būvēm (libxml2), ko, manuprāt, daudzi cilvēki izmantoja ap 2.x laidienu, visticamāk, tāpēc, ka būvējumus veicināja viena vai vairākas populāras apmācības. Problēma izriet no tā sauktajām XML vienībām, un šķiet, ka (vecāka?) Open Street Map (OMS) XML karšu dizainos tika izmantotas šīs XML entītijas, kas šo pieeju vēl vairāk izplatīja. Šeit varat atrast garāku diskusiju par šo tēmu.

Kā tas notika, daži no Mani karšu dizaini izmantoja XML entītijas, lai iestatītu kartes srs/projekcijas atribūtus, kas bija manu Apache kļūdu avots. Es saņēmu laimīgu pārtraukumu, pamanot, ka manas UTFGrid flīzes faktiski tiek renderētas, un, rūpīgi pārbaudot kartes dizainus, atklājās atšķirīgs kartes srs/projekcijas iestatīšanas veids. Tādējādi es varēju veikt nelielas izmaiņas šajos XML failos, lai novērstu pēdējās manas izrādes apturēšanas kļūdas, atjaunojot visas funkcijas tiešsaistē.

9a) Ko es darīju ..

Būtībā es izskatīju savus kartes failus un mainīju katru šāda veida gadījumu (ievērojiet tagu ENTITY):

9b) Kam jūs varētu dot priekšroku ..

Pēc izvēles, ja jums ir jālabo/jāpārbauda DAUDZ XML dizainu, iespējams, vēlēsities apskatīt xmllint, kurā ir iespēja dezinficēt XML entītijas un kuru varat iekļaut automatizācijā un izmantot, lai masveidā atveidotu visus XML failus, tad pārrakstiet tos vietā ar vienu komandu.

Mēģiniet izsaukt xmllint --versija. Ja nesaņemat atsauksmes, varat instalēt utilītu šādi:

Kad esat to instalējis, apskatiet problemātisku XML failu (tādu, kas satur tagu ENTITY), izveidojiet tā kopiju un palaidiet tajā xmllint, lai redzētu, kā tas pārveido kodu:

Tas iesūknēs XML tieši konsolē, un jūs redzēsit, ka šie ENTITY tagi tiek aizstāti ar to faktiskajām vērtībām.

10) Godātais pieminējums, nenozīmīgs (mod_python versija)

Šajā brīdī es notīrīju savu Apache žurnāla failu, pārstartēju, pēc tam iegrāmatoju žurnālu, lai redzētu, vai parādās vēl kādas kļūdas. Protams, nopietnās sistēmās labāk ir dublēt šo failu pirms tā notīrīšanas:

Kad es to izdarīju, es redzēju sekojošo (piezīme “versijas neatbilstība”):

Es biju nobažījies, ka tas varētu būt saistīts ar manu būvējumu vai manām saistībām utt., Bet izrādās, ka tas ir saistīts ar mod_python, ko TileStache izmanto portāla interneta pieprasījumos un atbildēs, izmantojot Apache. Tā kā mana instalācija darbojas, es izvēlējos vairs šūpot laivu un apstājos tur. ..Man droši vien bija šī kļūda/brīdinājums visu laiku. Bet, ja saņemat šo kļūdu un esat tik ļoti noskaņots, šķiet, ka mod_python noņemšana un pārinstalēšana var būt risinājums:

Tas noslēdz manu pieredzi, pārejot no strādājoša Mapnik 2.2.x uz strādājošu Mapnik 3.x operētājsistēmā Ubuntu 12.04. Cerams, ka tas kādam palīdzēs ātrāk pāriet, nekā es varēju, un izvairīsies no dažām vilšanās reizēm.


Vai tiek pārrēķināts visu failu ģeodatubāzes funkciju klases apjoms? - Ģeogrāfiskās informācijas sistēmas

Stack Exchange tīkls sastāv no 177 jautājumu un atbilžu kopienām, tostarp Stack Overflow, kas ir lielākā un uzticamākā tiešsaistes kopiena, kurā izstrādātāji var mācīties, dalīties zināšanās un veidot karjeru.

Pašreizējā kopiena

Jūsu kopienām

Vairāk kaudzes apmaiņas kopienu

Savienojiet un kopīgojiet zināšanas vienā vietā, kas ir strukturēta un viegli meklējama.

Ģeotelpisko tehnoloģiju lektors, Dienviddakotas raktuvju un amortizācijas skola * USGS (pensionēts) * Esri Certified Desktop Professional * Esri Geonet MVP & gt & gt & gt Iet uz raktuvēm! & lt & lt & lt

Populārākās tīkla ziņas

Zema profila saglabāšana.

Šis lietotājs vēl nav ievietojis.

Žetoni (1)

Sudrabs

Bronza

Retākais

vietnes dizains / logotips un#169 2021 Stack Exchange Inc lietotāju ieguldījumi, kas licencēti saskaņā ar cc by-sa. rev 2021.6.28.39592

Noklikšķinot uz “Piekrist visiem sīkfailiem”, jūs piekrītat, ka Stack Exchange var saglabāt sīkfailus jūsu ierīcē un atklāt informāciju saskaņā ar mūsu sīkfailu politiku.


Eksperimenti

Materiāli

Hidroksietilmetakrilāts un metilmetakrilāts tika iegādāti no Merck, Vācija. Trietilēnglikola dimetakrilātu, dimetil itakonātu, 2,2′-azobizizobutironitrilu (AIBN) un 3- (trimetoksililil) propilmetakrilātu piegādāja Sigma-Aldrich, Vācija. Pirms sintēzes AIBN tika pārkristalizēts metanolā, lai noņemtu visus piemaisījumus. Metakrilāta daudzskaldņu oligomērsilskesoksioksāns (POSS-akrilāts) tika iegūts no Hybrid Plastics, ASV, un tika izmantots kā saņemts. 3- [4,5-dimetiltiazol-2-il] -2,5 difeniltetrazolija bromīds MTT, alizarīna sarkanā krāsošana, deksametazons un askorbīnskābe (Sigma) tika iegādāti no Sigma, Apvienotā Karaliste, Rosvela parka piemiņas institūts-1640.

Metodes

Polimerizācijas reakcija

Šī pētījuma mērķis bija silīcija akrilāta lēcu materiālu sintēze kombinācijā ar POSS-akrilātu. Vairāku rūpīgi izvēlētu monomēru polimerizācija tika veikta, izmantojot brīvo radikāļu polimerizācijas pieeju, kuras kinētikas dati, kā arī konversijas pakāpe ir norādīti šeit. Tāpēc hidroksietilmetakrilāts, metilmetakrilāts, trietilēnglikola dimetakrilāts, dimetil itakonāts, 3- (trimetoksilil) propilmetakrilāts un POSS-akrilāta maisījums tika rūpīgi sajaukti zem N2 atmosfērā, līdz tiek iegūts viendabīgs maisījums. Pēc tam tika pievienots AIBN un maisījums tika pārnests uz atbilstošu veidni. Pirmajā posmā polimēru savienojumus 24 stundas karsēja optimizētā temperatūrā (65 ° C). Lēcas tika izņemtas no veidnes un 48 stundas tika turētas 45 ° C temperatūrā, lai pabeigtu polimerizāciju. 1. attēlā polimerizācijas reakcija ir parādīta shematiski.


Skatīties video: Section, Week 3