ArcGIS Enterprise


Autoriseren ArcGIS Enterprise portal

ArcGIS Enterprise

Het ArcGIS Enterprise portal is een van de componenten van ArcGIS Enterprise en is de toegangspoort voor gebruikers om GIS-data te benaderen.

ArcGIS Enterprise bestaat uit een aantal componenten

  • ArcGIS Server
  • Portal for ArcGIS (de technische term voor het ArcGIS Enterprise portal)
  • ArcGIS Data Store
  • ArcGIS Web Adaptor

Zie voor meer informatie over ArcGIS Enterprise: http://server.arcgis.com/en/server/latest/get-started/windows/what-is-arcgis-enterprise-.htm#GUID-81C97403-2677-4B66-A51E-E04F44FD9135.

ArcGIS Enterprise bevat onder andere een bepaald aantal named user Entitlements, die kunnen worden toegewezen aan gebruikers. Zij kunnen hiermee inloggen in het portaal. Het aantal beschikbare named users hangt af van het licentieniveau van ArcGIS Enterprise. Daarnaast wordt er onderscheid gemaakt tussen level 1 en level 2 named users, waarbij ieder level bepaalde functionaliteit met zich meebrengt.

Om het portaal te kunnen gebruiken, dient in de eerste plaats de installatie te worden doorlopen. In het volgende artikel is een uitgebreide installatiehandleiding te vinden: http://server.arcgis.com/en/portal/latest/install/windows/welcome-to-the-portal-for-arcgis-installation-guide.htm.

Na de installatie zal het Enterprise portal moeten worden geautoriseerd om daadwerkelijk gebruik te kunnen maken van het portaal.

Autoriseren ArcGIS Enterprise portal

Het autoriseren van ArcGIS Enterprise portal verloopt via een aantal stappen:

  1. Creëer een licentiecode met het gewenste aantal named users
  2. Autoriseer de licentiecode

1. Creëer een licentiecode met het gewenste aantal named users

  • Log in als beheerder met licentierechten op https://my.esri.com
  • Ga naar ‘My Organizations’ > ‘Licensing’
  • Ga naar ‘Generate Portal for ArcGIS Licenses’
  • Kies de juiste versie en klik op ‘Next’

Er verschijnt nu een overzicht van het aantal beschikbare named users waar de organisatie recht op heeft.

  • Kies het gewenste aantal named users en klik op ‘Next’
    • Let op: kies direct het aantal named users dat definitief moet worden geautoriseerd. Er kan slechts eenmalig een licentiecode worden gegenereerd voor een bepaalde versiereeks.

Nu wordt er een overzicht getoond van de named users die in de licentiecode zullen worden opgenomen. Controleer of dit het correcte aantal is dat op de omgeving moet worden geautoriseerd. Op het moment dat het juiste aantal named users zal worden gealloceerd, kan het proces worden voortgezet via ‘Next’.

Hierna zal de licentiecode worden gegenereerd. Na enige tijd zal de licentiecode terug te vinden zijn in het licentieoverzicht via ‘View Authorizations’.

2. Autoriseer de licentie

De licentiecode kan via de ‘Software Authorization for ArcGIS’ worden geautoriseerd

  • Open de ‘Software Authorization for Portal for ArcGIS’
  • Kies een van de beschikbare opties
    • Kies de tweede optie als de autorisatie via een provisioning bestand verloopt en zoek daarna het provisioning bestand op.
  • Als in het bovenstaande dialoogvenster de eerste optie is gekozen, verschijnt het volgende scherm:

Op het moment dat de machine waarop het Enterprise portal wordt geautoriseerd een internetverbinding heeft, kan de bovenste optie gekozen worden. Mocht de machine geen internetverbinding hebben, kies dan de onderste optie.

  • Voer in de twee volgende dialoogschermen de gegevens in van de persoon die de autorisatie uitvoert.

Hierna is het mogelijk om de licentiecode in te voeren:

Afhankelijk van de gekozen named users is er een level 1 en/of level 2 licentie beschikbaar in My Esri.

  • Voer de licentiecode(s) in en klik op ‘Next’ om de autorisatie af te ronden.

ArcGIS Enterprise Sites

Met de intrede van ArcGIS Enterprise 10.6.1 is een aantal nieuwe functies beschikbaar gekomen binnen het ArcGIS platform, waaronder ArcGIS Enterprise Sites. Deze nieuwe functionaliteit binnen ArcGIS Enterprise maakt het mogelijk om authoritative content op een eenvoudige manier beschikbaar te stellen aan gebruikers, zodat zij in staat zijn om direct te beschikken over de voor hen relevante informatie. Klik hier voor meer informatie over authoritative content.

ArcGIS Enterprise

Het ArcGIS Enterprise portaal (Portal for ArcGIS) maakt onderdeel uit van ArcGIS Enterprise. Tezamen met ArcGIS Server, de Web Adaptor en de Data Store kan al een volledige Enterprise base deployment worden ingericht. Het is mogelijk om services te publiceren naar het portaal, te delen met andere gebruikers en de data te ontsluiten vanaf allerlei devices.

Klik hier voor meer informatie over de base deployment.

ArcGIS Enterprise Sites

Vanaf ArcGIS Enterprise 10.6.1 bestaat de mogelijkheid om ArcGIS Enterprise Sites te creëren. Dit maakt het voor gebruikers mogelijk om content te benaderen zonder dat deze gebruikers kennis hoeven te nemen van de interface van het portaal. Sites maken het voor gebruikers mogelijk om direct naar een webpagina te browsen met daarop voor de gebruiker relevante informatie.

Binnen het portaal kunnen Sites worden gecreëerd om de niet-standaard GIS gebruikers toegang te geven tot data. Vanuit het portaal kan via de app launcher de web page designer worden opgestart door administrators van het portaal, zie onderstaand screenshot.

Vervolgens wordt de Sitemanager geopend, waar nieuwe sites gecreëerd kunnen worden en waar bestaande sites kunnen worden geconfigureerd:

Als er wordt gekozen voor het maken van een nieuwe site, wordt er gevraagd om een aantal basisgegevens en de site url in te vullen. Nadat deze velden zijn ingevuld, wordt er op de tweede pagina gevraagd welke groepen aan de site moeten worden toegevoegd. Deze groepen zullen voorafgaand aan het creëren van de site moeten worden aangemaakt. De content binnen deze groep(en) zal vervolgens beschikbaar worden via de site.

Nadat de correcte groepen zijn gekozen kan de site worden ingericht:

Bij het opstarten wordt er binnen de Site Editor een standaard Lay-out getoond, welke als uitgangspunt genomen kan worden om de site op te bouwen. Via de Layout Builder kunnen de gewenste typen objecten aan de site worden toegevoegd. Indien gewenst kan de volgorde van de objecten van de site worden veranderd:

Wie mag sites aanmaken?

Binnen ArcGIS Enterprise deployment hebben Named Users (level 2) die aan een Sites team zijn toegevoegd, het recht binnen ArcGIS Enterprise om sites te creëren.
Er hoeft geen apart privilege te worden toegekend aan de Named Users via de organisatie (rol) instellingen. Meer informatie over het Sites team is hier te vinden.

Let op:

  • De taal waarin de Site builder wordt getoond is afhankelijk van de browser-instellingen.
  • De Sites administrator groep die wordt aangemaakt, mag niet worden verwijderd uit het portaal.

Esri heeft een video beschikbaar gesteld waarin de essentie van ArcGIS Enterprise sites in een aantal minuten wordt uitgelegd.

ArcGIS Enterprise upgraden?

Zoals in bovenstaande tekst vermeld, kan vanaf ArcGIS Enterprise 10.6.1 gebruik gemaakt worden van ArcGIS Enterprise Sites. Inmiddels is er een recentere versie van ArcGIS Enterprise beschikbaar. Neem voor meer informatie over een upgrade contact met ons op.


Schema updaten van een hosted feature service

Het aanmaken van een hosted feature service voor bijvoorbeeld gebruik in de Collector app is een proces dat zelden in een keer het ideale resultaat oplevert. Geregeld zal het nodig zijn om een veldnaam te wijzigen of zelfs een veld of domeinwaarde toe te voegen, om de gewenste data in te winnen. Het is niet altijd mogelijk of gewenst om daarvoor een geheel nieuwe feature service te publiceren.

De structuur waarin de data in een hosted feature service is opgeslagen wordt het schema genoemd. Het gaat dan onder andere over de velden en de eigenschappen daarvan. Dit schema kan in ArcGIS Online via de REST admin pagina worden aangepast. Hieronder wordt uitgelegd hoe.

REST admin pagina

Het aanpassen van het schema van een hosted feature service moet door de eigenaar van de service worden uitgevoerd. Log in op ArcGIS Online en navigeer naar de item details pagina van de service die aangepast moet worden. Klik onder de kaartlaag waar het om gaat op Service-URL.

De REST pagina van de service wordt geopend. Om toegang te krijgen tot de REST admin pagina, zal de URL in je browser wat moeten worden aangepast. In de huidige URL moet, tussen …rest/ en /services… het woord /admin/ worden toegevoegd zoals in het voorbeeld hieronder.

Hoewel de REST pagina op het eerste gezicht weinig lijkt te veranderen zijn er een aantal opties toegevoegd. Helemaal onderaan de pagina staan de ‘Supported Operations’ voor de hosted feature service. Scroll daar naartoe en klik op de ‘Update Definition’ optie om de service aan te passen.

Update Definition

Wanneer de Update Definition pagina is geopend, wordt de JSON van de feature service zichtbaar in de textbox zoals in de afbeelding hieronder. Aan de hand van deze JSON kunnen eigenschappen van de service worden geupdate. Let op! Hoewel de aanpassingen in de textbox bij het updaten gevalideerd worden, wordt toch aanbevolen om:

  • De updates in de JSON eerst te testen op een kopie van de hosted feature service voordat aanpassingen op een service die in productie is worden uitgevoerd.
  • Valideer de aangepaste JSON (bijvoorbeeld via https://jsonlint.com/) voordat je daadwerkelijk de service update.
  • Wanneer de service in gebruik is in de Collector app, zal deze door de gebruikers opnieuw moeten worden gedownload voordat schema-wijzigingen zichtbaar zijn. Zorg er ook voor dat gebruikers alle edits gesynchroniseerd hebben voordat er een aanpassing op de service wordt gedaan.

Kopieer en plak de JSON in een tekst file editor waarin je de opmaak van de JSON kunt behouden. Een goede tool hiervoor is Notepad++. De wijzigingen die in de JSON kunnen worden uitgevoerd staan hieronder beschreven.

Field Properties

Het aanpassen van de field properties geeft bijvoorbeeld de mogelijkheid om de namen of alias te wijzigen of velden bewerkbaar te maken. Een aantal van deze wijzigingen kan ook in de pop-up van een service worden gewijzigd. In een situatie waarin een service in meerdere web maps wordt gebruikt kan het echter handig zijn om dit via rechtstreeks op de service aan te passen. De wijzigingen zijn dan in alle web maps zichtbaar. Meer informatie over welke aanpassingen gedaan kunnen worden is te vinden in het volgende artikel: http://desktop.arcgis.com/en/arcmap/10.5/manage-data/geodatabases/defining-feature-class-properties.htm

  1. Kopieer de JSON in een tekstverwerker en zoek naar de veldnaam van het veld waarvan de properties aangepast moeten worden, zie afbeelding hieronder.
  2. Pas de properties van het veld aan:
    • Wijzigen van het alias: verander “Manufacturer” naar “Manufacturer name”.
    • Wijzigen of een veld te bewerken is: verander “editable” : true, naar “editable” : false,

Domein en domeinwaarden

Misschien wel een van de meest voorkomende wijzigingen is het toevoegen van een domeinwaarde aan een hosted feature layer. Dat is vrij eenvoudig te doen door de stappen hieronder te volgen.

  1. Zoek in de JSON code in de tekstverwerker naar “type” : “codedValue”. In de afbeelding hieronder zijn de fieldproperties en de bijbehorende domeinwaarden te zien.
  2. Binnen dit domein kunnen:
    • Domeinwaarden of namen worden aangepast: “name” : “Clow Corporation” naar “name” : “Clow Inc.” of “code” : “Clow Corporation” naar “code” : “CP”.
    • Nieuwe domeinwaarden worden toegevoegd: Let erop dat de juiste JSON syntax wordt gebruikt bij het toevoegen van een waarde:

      {
      “name” : “Waterous”,
      “code” : “W”
      },


    • Domeinen worden verwijderd: Let er bij het verwijderen van een domein op dat ook de bijbehorende “{}” worden verwijderd.

Edit Templates

Ook de edit templates die voor een service zijn geconfigureerd kunnen worden aangepast. Zo is het bijvoorbeeld mogelijk om de template naam te veranderen of een nieuwe template toe te voegen. Dat kan op de volgende manier.

  1. Voeg de JSON weer toe aan een tekstverwerker en zoek daar naar “templates” :[.
  2. Wijzig de gewenste properties:
    • Wijzig de naam van de template: “name” : “Hydrants”, naar “name” : “Brandkranen”,
    • Wijzig de standaard waarde voor de attributen: “FLOW” : null, naar “FLOW” : 100,
    • Het toevoegen of verwijderen van een template. Daarvoor kan de afbeelding hierboven als voorbeeld worden gebruikt.

Max Record Count

Deze waarde geeft aan hoeveel features er maximaal tegelijk getoond en bevraagd kunnen worden in een hosted feature service. Deze is standaard ingesteld op 1000 maar het is mogelijk om dit te verhogen. Let op! Het verhogen van de Max Record Count kan invloed hebben op de performance van de service als deze een grote hoeveelheid data bevat.

Om de maxRecordCount property te wijzigen zoek je in de JSON naar “maxRecordCount” :. Wijzig daar de waarde van “maxRecordCount” : 1000, naar een andere waarde “maxRecordCount” : 2500,.


Logfile tabel opties voor geodatabases in Oracle

Enterprise geodatabases gebruiken logfile tabellen om lijsten van geselecteerde records bij te houden. Records worden weggeschreven naar deze tabellen om later gebruikt te kunnen worden door de applicatie in de volgende situaties:

  • Als jij (of een tool of een ander proces dat gebruikt wordt) een selectieset maakt van een specifieke omvang: meer dan 100 records in ArcMap, meer dan 1000 records in ArcGIS Pro en meer dan 1000 records als er ObjectID’s bevraagd worden van een feature service.
  • Als er een reconcile of post naar een versioned geodatabase plaatsvindt.
  • Als een client applicatie data uitcheckt voor disconnected editing.

Logfile tabellen slaan ID’s van de geselecteerde features op, zodat deze opnieuw getoond kunnen worden. Dit zorgt ervoor dat analyses en dataprocessing sneller gaan. Er zijn drie logfile opties: Shared, session-based en pools van session-based logfiles. Deze opties zullen hieronder beschreven worden.

Geodatabases in Oracle maken standaard gebruik van shared logfiles. Als de gebruikte user geen rechten heeft om tabellen of sequences te creëren in de database, dan zal de logfile tabel gemaakt worden als een tijdelijke tabel waarvan de geodatabase administrator de eigenaar is. Dit is voldoende voor de meeste deployments, maar je kunt de instellingen van de logfile tabel aanpassen door gebruik te maken van de Configure Geodatabase Logfile Tables geoprocessing tool.

Shared logfiles

Shared logfiles worden gedeeld door alle sessies die onder dezelfde user een connectie maken. Als er meerdere users een connectie maken met hetzelfde user account, dan plaatsen of verwijderen al deze sessies records in dezelfde logfile data tabel.

Wanneer gebruik je shared logfiles?

Gebruik shared logfiles als elke client en user connectie maken met een ander database user account.

Wanneer kun je shared logfile beter niet gebruiken?

Misschien is het beter om shared logfiles niet te gebruiken als er meerdere connecties gemaakt worden met dezelfde login, bijvoorbeeld als er feature services gepubliceerd worden, die meerdere connecties genereren met dezelfde login. Als meerdere users attribute queries gebruiken op dezelfde feature service, dan kan dit resulteren in conflicten en langere wachttijden voor de SDE_LOGFILE_DATA tabel. In deze gevallen is het beter te kiezen voor session-based logfiles.

Tabellen die gemaakt worden voor shared logfiles

De logfile tabellen die gebruikt worden in deze opties zijn SDE_LOGFILES en SDE_LOGFILE_DATA. Ze worden gemaakt in het schema van de user die de connectie maakt bij de eerste keer dat de user een selectie maakt die de selectiegrens overschrijdt.

SDE_LOGFILES slaat informatie op over elke selectieset (logfile) die gemaakt wordt. De logfile_name en logfile_id kolommen in deze tabel identificeren de naam van de logfile en de logfile_id kolom legt een link van de logfile record naar de SDE_LOGFILE_DATA tabel. De SDE_LOGFILE_DATA tabel bevat de logfile_data_id en de feature identifier voor de geselecteerde records.

Alle records worden verwijderd op het moment dat de selectieset opgeruimd wordt om te voorkomen dat de SDE_LOGFILE_DATA tabel te groot wordt. Op de SDE_LOGFILES tabel vindt een truncate plaats op het moment dat de sessie stopt. Zowel de SDE_LOGFILE_DATA als de SDE_LOGFILES blijven in het schema van de user bestaan.

Permissies die nodig zijn voor shared logfiles

Aangezien de logfile tabellen de user die de connectie maakt als eigenaar hebben, moeten users privileges krijgen waarmee ze de benodigde data objecten kunnen creëren, zoals tabellen. Dit is nodig, ook al heeft de user read-only toegang op de geodatabase. Als de privileges niet gegeven zijn, ontvangt de user een foutmelding bij de eerste keer dat er een selectieset gemaakt wordt die groter is dan de selectiegrens voor de specifieke client applicatie. Let wel: op het moment dat de SDE_LOGFILES en SDE_LOGFILE_DATA tabellen aangemaakt zijn voor de user, kan de geodatabase administrator de privileges intrekken.

De volgende permissies zijn nodig om gebruik te maken van de shared logfiles tabellen in Oracle:

  • CREATE SESSION
  • CREATE TABLE
  • CREATE SEQUENCE

Het CREATE SESSION privilege hebben alle users standaard al. Het is dus alleen nodig om deze toe te wijzen als deze teruggetrokken is vanuit PUBLIC.

Optionele opslagcontrole voor shared logfiles

In Oracle worden de volgende parameters gebruikt voor Beheer van de opslag voor shared logfile tabellen en indexen:

  • LD_INDEX_DATA_ID
  • LD_INDEX_ROW_ID
  • LD _STORAGE
  • LF_INDEXES
  • LF_STORAGE

Voor meer informatie over deze parameters, zie Oracle configuration parameters.

Session-based logfiles

Session-based logfile data tabellen worden toegewezen aan een enkele sessie en kan verschillende selectiesets bevatten (logfiles). Elke sessie die inlogt heeft een set tabellen nodig voor selecties.

Wanneer gebruik je session-based logfiles?

Session-based logfiles worden gebruikt als er verschillende concurrent connecties gemaakt worden naar de geodatabase met dezelfde login. Bijvoorbeeld, als er veel services zijn die de data bevragen in de geodatabase.

Wanneer kun je de session-based logfiles beter niet gebruiken?

Als je read-only users hebt die connectie maken met de database, dan kunnen session-based logfiles beter niet gebruikt worden. De sessie tabel wordt verwijderd van het user schema als de sessie stopt. Dat houdt in dat deze opnieuw gemaakt moet worden als deze nodig is. De users hebben permissie nodig om tabellen te creëren om gebruik te maken van session-based logfile tabellen.

Tabellen die gemaakt worden voor session-based logfiles

Drie tabellen worden aangemaakt: SDE_LOGFILES, SDE_LOGFILE_DATA en SDE_SESSION. SDE_LOGFILE_DATA wordt eigenlijk niet gebruikt in dit geval, maar deze wordt automatisch aangemaakt. De SDE_LOGFILES tabel slaat informatie op over de selectie plus een sessie tag die toegevoegd wordt aan de naam van de SDE_SESSION tabel. De SDE_SESSION tabel slaat de feature identifier op van de geselecteerde set en de logfile ID.

De SDE_LOGFILES en SDE_LOGFILE_DATA tabellen blijven in de geodatabase. Op de SDE_LOGFILES tabel vindt een truncate plaats wanneer de verbinding verbroken wordt van de verbonden applicatie. Op de SDE_SESSION tabel vindt een truncate plaats wanneer de verbonden applicatie de logfiles verwijderd en de tabel wordt verwijderd als de verbinding van de sessie verbroken wordt.

Permissies die nodig zijn voor session-based logfiles

Session-based logfiles hebben de user die de connectiesessie begon als eigenaar. Dit houdt in dat users privileges moeten hebben om de benodigde database objects te creëren.

Alle users hebben de volgende permissies nodig om session-based logfile tabellen te kunnen gebruiken in Oracle:

  • CREATE SESSION
  • CREATE TABLE
  • CREATE SEQUENCE

Het CREATE SESSION privilege hebben alle users standaard al. Het is dus alleen nodig om deze toe te wijzen als deze teruggetrokken is vanuit PUBLIC.

Optionele opslagcontrole voor session-based logfile tabellen en indexen

Er zijn verschillende parameters onder het LOGFILE_DEFAULTS keyword van de DBTUNE tabel die bepaalt hoe of waar logfile tabellen opgeslagen worden in de database. Deze hoeft niet ingesteld te worden om session-based logfiles te gebruiken, maar kan wel ingesteld worden als aangepast moet worden hoe de SDE_LOGFILES, SDE_LOGFILE_DATA en SDE_SESSION tabellen en indexen opgeslagen worden in de database. In Oracle worden de volgende parameters gebruikt voor beheer van de opslag voor session-based logfile tabellen en indexen:

  • LD_INDEX_DATA_ID
  • LD_INDEX_ROW_ID
  • LD _STORAGE
  • LF_INDEXES
  • LF_STORAGE
  • SESSION_INDEX
  • SESSION_STORAGE

Voor meer informatie over deze parameters, zie Oracle configuration parameters.

Logfile pools

De geodatabase administrator heeft de mogelijkheid om een pool van session-based logfiles te maken, die via een checkout gebruikt kan worden door andere users. Shared logfiles kunnen niet via een checkout gebruikt worden vanuit een logfile pool.

Wanneer gebruik je logfile pools?

Je gebruikt een pool van logfiles als je de users niet de mogelijkheid kunt geven om logfile tabellen te creëren in hun eigen schema. Users hebben wel nog steeds permissies nodig om een sessie te creëren of te verbinden met de database.

Wanneer kun je de logfile pools beter niet gebruiken?

In het algemeen kost het gebruik van logfile pools meer onderhoud, omdat er ingeschat moet worden hoeveel logfile tabellen er nodig zijn en het kan zijn dat je bezig bent met het aanpassen van de omvang van de pool of het aantal pools die gebruikt worden.

Tabellen die gemaakt worden voor logfile pools

Het aantal SDE_LOGPOOL_ tabellen die de Configure Geodatabase Logfile Tables tool aanmaakt wordt gespecificeerd in het schema van de geodatabase administrator. Als je bijvoorbeeld 5 tabellen specificeert, dan worden de volgende tabellen aangemaakt in het schema van de geodatabase administrator:

  • SDE_LOGPOOL_1
  • SDE_LOGPOOL_2
  • SDE_LOGPOOL_3
  • SDE_LOGPOOL_4
  • SDE_LOGPOOL_5

Een extra tabel in het schema van de geodatabase administrator, de SDE_LOGFILE_POOL tabel, is er voor het SDE_ID van de sessie en een tabel ID. De in de naam van de SDE_LOGPOOL tabel correspondeert met de waarde in de table_ID kolom in de SDE_LOGFILE_POOL tabel.

Iedere sessie die een logfile tabel nodig heeft voegt een record toe aan de SDE_LOGFILE_POOL tabel en de sessie wordt toegewezen aan een van de SDE_LOGPOOL_ tabellen. Als er extra logfiles aangemaakt worden door dezelfde sessie, bijvoorbeeld een tweede selectie van 300 records in ArcMap, dan worden de nieuwe logfiles (selectie set) toegevoegd aan dezelfde SDE_LOGPOOL tabel.

Wanneer de logfiles opgeschoond worden, zal er een truncate plaatsvinden van de SDE_LOGPOOL tabel die via een checkout voor de sessie gebruikt is. Voorbeeld: als de tweede selectieset in ArcMap opgeschoond wordt, dan worden de 300 records verwijderd uit de SDE_LOGPOOL tabel, maar de records van de eerste selectie blijven aanwezig. Op het moment dat de eerste selectie opgeruimd wordt, dan worden ook deze records verwijderd uit de SDE_LOGPOOL tabel.

Als een logfile (selectie set) opgeruimd wordt, dan zal er een truncate plaatsvinden van de overeenkomende SDE_LOGPOOL tabel.

Permissies die nodig zijn voor logfile pools

Om de logfile tabellen in de pool te kunnen gebruiken hebben users alleen de mogelijkheid om een databaseconnectie te maken en de objecten in het schema van de geodatabase administrator nodig. De enige permissie die nodig is om gebruik te maken van pools van logfile tabellen is de CREATE SESSION permissie.

Deze wordt standaard toegewezen aan alle users. Het is dus alleen nodig om deze toe te wijzen als deze teruggetrokken is vanuit PUBLIC.

Optionele opslagcontrole voor logfile pools

Er zijn een paar parameters onder het LOGFILE_DEFAULTS keyword die bepalen hoe de SDE_LOGPOOL tabellen en de indexen in geodatabases in Oracle opgeslagen worden:

  • LD_STORAGE
  • LD_INDEX_ROWID
  • LD_INDEX_DATA_ID DBTUNE

Deze drie parameters bepalen ook de opslag van de SDE_LOGFILE_DATA tabel en de indexen.

Voor meer informatie over deze parameters, zie Oracle configuration parameters.

Je hoeft deze niet in te stellen om pools van logfile tabellen te gebruiken, maar je kunt deze wel instellen als je aan wilt passen hoe de SDE_LOGPOOL tabellen en indexen opgeslagen worden in de database.


Federeren van ArcGIS Server met Portal for ArcGIS

Voordat besloten wordt om ArcGIS Server met Portal for ArcGIS te federeren is het belangrijk goed op de hoogte te zijn van de voor- en nadelen. Het is namelijk niet zomaar mogelijk om dit weer te unfedereren!

Als een ArcGIS Server met Portal for ArcGIS gefedereerd wordt, wordt de toegang tot de server beheerd via het portaal. Bij het publiceren van een service naar deze server, wordt er automatisch een item aangemaakt in Portal for ArcGIS. Of een service benaderbaar is voor een gebruiker, hangt dan af van de rol en de rechten in het portaal en loopt dus niet via de server. Als de server die gefedereerd moet worden web-tier authenticatie gebruikt, zal dit eerst uitgeschakeld moeten worden en anonieme toegang op de ArcGIS Web Adaptor worden toegestaan.

Hoe kan een server gefedereerd worden?

Controleer van tevoren hoe de communicatie plaats moet vinden, via HTTP of HTTPS. Bij het gebruik van Windows Authenticatie is HTTPS nodig. De manier van communiceren tussen Server en Portal, hoeft niet overeen te komen, behalve als de server een hosting server is.

  • Ga via de Web Adaptor URL naar het portaal en log in.
  • Ga naar Mijn Organisatie > Instellingen Bewerken > Servers.
  • Klik op Server Toevoegen.
  • Voer de volgende informatie in:
    1. De service URL die voor externe gebruik gebruikt wordt in, bijvoorbeeld: https://webadaptor.domein.com/arcgis of https://reverseproxy.domein.com/mijnorganisatie in het geval dat er een reserve proxy gebruikt wordt.
    2. De URL van de ArcGIS Server die gebruikt wordt voor administratieve operaties in het interne netwerk, bijvoorbeeld: http://gisserver.domein.com:6080/arcgis of https://gisserver.domein.com:6443/arcgis
    3. De gebruikersnaam en het wachtwoord van de Primary Site Administrator
  • Klik op Toevoegen.
  • Klik op Opslaan om de wijzigingen door te voeren.

Als een server waar al services op staan gefedereerd wordt, worden deze automatisch toegevoegd aan het portaal als items onder de content van de Portal beheerder die de federatie uitvoert. Vervolgens kunnen de items ondergebracht worden bij een andere eigenaar.

Waarom kiezen voor een hosting server?

Na het federeren van de server is het mogelijk om ervoor kiezen om een server als hosting server aan te wijzen. Bij het gebruik van een hosting server kunnen gebruikers direct naar het portaal publiceren. De services die hiernaartoe gepubliceerd worden, worden in de map ‘Hosted’ op ArcGIS Server gezet. Als een item dat bij de service hoort verwijderd wordt via het portaal, wordt de service ook van de server verwijderd. Dit geldt niet voor services die naar een gefedereerde server gepubliceerd worden.

Bij een hosting server zijn er minder capabilities mogelijk. Alleen de mogelijke capabilities worden weergegeven in de Server Manager. Via ArcGIS Pro is het mogelijk om in te loggen op het portaal en worden de services hier naartoe gepubliceerd. Bij publiceren vanuit ArcMap is het noodzakelijk om het portaal toe te voegen in de ArcGIS Administrator en vervolgens in te loggen via ArcMap. Er wordt dan gewerkt via ‘My Hosted Services’ in plaats van GIS Servers, waardoor alleen de mogelijke capabilities in de service editor zichtbaar zijn.

Meer informatie over het federeren van een server kan gevonden worden via: http://server.arcgis.com/en/portal/latest/administer/windows/federate-an-arcgis-server-site-with-your-portal.htm.


Hoe kan ik zien welke extensies er geautoriseerd zijn op mijn server?

Voor ArcGIS Server bestaat niet zoals voor ArcGIS Desktop de mogelijkheid om via de ArcGIS Server License Administrator of de ArcGIS Administrator te bekijken welke autorisaties er zijn uitgevoerd.

Antwoord

Via de ArcGIS Server Manager is echter wel een overzicht te vinden van de geautoriseerde licenties:

Het is ook mogelijk om buiten de ArcGIS Server Manager om de informatie over de geautoriseerde licenties terug te vinden, namelijk via het zogenaamde ‘keycodes betstand’.

Vanaf ArcGIS for Server 10.1 wordt het ‘keycodes’ bestand hier opgeslagen: C:\Program Files\ESRI\License10.x\sysgen en in C:\Program Files (x86)\ESRI\License10.x\sysgen

In dit bestand staan alle geautoriseerde producten achter elkaar genoemd. Zie hieronder een deel van het keycodes bestand als voorbeeld:

arcgisserver,106,ecp068336578,27-jul- 2019,2K0RHK8HRD09NBXEJ130,636D9B28A036C946CA405E9E0D9663B320BD525682B007B14D62C53590E178C3DD57571610D0914B0E06BC9E0A4ED6E862B4550EB34F157F5420CABFB35A7967A4F1C34DE46478922A021B57AA379D4B16A6D6BBDB93ABC70026FD744664FB693030F055BDA9053D42 4968A11C0EC06F18095CEA9B81B6C4428BBE1709BC2D92,FID__5cbadccf_135c6431b07__340d
interopserver,106,ecp565050579,27-jul- 2019,ZZYJ0LX0JKBPH38JC187,07FBEFCE07836A90793CFA87205FF56DBFEF38F0AA2D767E7EC82114D0A7F5F5139E646788DCCD973E3F4C94D7CC06B0865A2D8D222E18C3B795C4A630F816AFCE736B0CE71D5A39D808650883F122E2939A5D18A616E23806E43D30747D64DD39C1DBED95ED8897B1 275BDA76C3CB04532B63990292F6913B75E1ECA5281FFA,FID_58a29565_135d4d45537__5f03

Zoals aan de eerste woorden van de regels is te zien, zijn op deze server onder andere ArcGIS Server GIS Server rol en de Data Interoperability extensie geautoriseerd. Het gaat om versie 10.6. De ECP code die gebruikt is staat achter de versie en de autorisaties zijn geldig tot 27 juli 2019. Hierna volgen een aantal controlereeksen (checksums).

De regels zijn dus als volgt opgebouwd: rol/extensie, versie, ECP-code, einddatum, controlereeksen.


Hoe kan ik een verbinding maken met een Oracle database via Oracle Easy Connect?

Er zijn verschillende manieren om vanuit ArcGIS een verbinding te maken met een database. Sinds versie ArcGIS 10.1 is het mogelijk om gebruik te maken van Oracle Easy Connect. In dit artikel wordt omschreven hoe dit in zijn werk gaat.

Sinds versie ArcGIS 10.1 is het mogelijk via Oracle Easy Connect verbinding te maken met een Oracle Database. Alle Esri producten die verbinding kunnen maken met een database kunnen met Easy Connect werken, dus ook bijvoorbeeld ArcGIS Pro en ArcGIS Server. Hiervoor is het wel belangrijk dat Oracle zodanig is geconfigureerd dat dit mogelijk is. Wanneer er gekozen is voor een full install van de Oracle client moet het sqlnet.ora bestand zodanig geconfigureerd worden dat Easy Connect mogelijk is. De Oracle server moet geconfigureerd zijn om Easy Connect syntax te accepteren.

Om te controleren of Oracle op de juiste manier is geconfigureerd kan je het volgende doen:

  1. Start Oracle Net Manager op
  2. Ga aan de linkerkant naar ‘Local > Profile’
  3. Aan de rechterkant: Selecteer ‘Naming’ en ga naar het tabblad ‘Methods’. Kijk of ‘EZCONNECT’ onder ‘Selected Methods’ staat (zie screenshot hieronder).

Indien EZCONNECT nog aan de linkerkant staat selecteer deze dan en klik op het pijltje naar rechts. Eventueel kan je deze dan vervolgens aan de rechterkant selecteren en op ‘Promote’ klikken om hem bovenaan in het lijstje te zetten. Ga vervolgens naar ‘File’ (links bovenin) en kies voor ‘Save Network Configuration’. Het sqlnet.ora bestand zal nu geüpdate worden.

Om een verbinding te maken met de Database doe je het volgende: Ga in ArcCatalog naar ‘Database Connection’ en dubbelklik hierop om het Database Connection scherm op te starten. Kies bij ‘Database Platform’ voor ‘Oracle’. Bij ‘Instance’ zijn er de volgende mogelijkheden voor het samenstellen van de ‘Instance’ string:

  • De naam van de Oracle server/Oracle service name of ID. Stel dat Oracle is geïnstalleerd op ‘myserver’ en de Oracle service naam is ‘myosvc’, dan wordt de string:
    myserver/myosvc
  • De naam van de Oracle server:Oracle port number/Oracle service naam of ID. Stel dat Oracle is geïnstalleerd op’ myserver’, gebruikt maakt van port 60000 en de Oracle service name is ‘myoservice’, dan wordt de string:
    myserver:60000/myoservice
  • De URL van de Oracle server. De URL voor dezelfde instance als in het voorbeeld hierboven wordt:
    //myserver:60000/myoservice
  • De naam van de Oracle server (dit kan worden toegepast wanneer de Oracle listener op de server zodanig is geconfigureerd dat het naar een default instance wijst).
  • Het IP adres van de Oracle server/Oracle service naam of ID. Stel het adres van de server is 10:10:10:10 en de Oracle service naam is ‘oravc’, dan wordt de string:
    10:10:10:10/orasvc
    Bij IPV6 adressen moeten er vierkante haken om het adres gezet worden. Voorbeeld:
    [4000:vu5:0:0:f666:h191:77f5:i2rs]/orasvc
  • Het IP adres van de Oracle server:Oracle port nummer/Oracle service naam of ID. Stel dat het IP adres 10.20.30.40 is, de port 59999 en de Oracle service ‘myomy1’ heet, dan wordt de string:
    10.20.30.40:5999/myomy1
    Bij een IPV6 adres ziet de structuur er als volgt uit:
    [6543:eo4:0:1:f587:l249:12f9:w3ud]:59999/myomy1
    Hieronder een voorbeeld van hoe het scherm ingevuld kan worden. Hier is gebruik gemaakt van de combinatie naam van de Oracle server/Oracle service name.

Meer informatie over de Oracle instant client is te vinden onder bijvoorbeeld https://www.oracle.com/technetwork/database/features/oci/ic-faq-094177.html.


Hoe maak je een materialized view in Oracle Spatial aan voor het gebruik in ArcGIS?

Vraag

Hoe maak je een materialized view in Oracle Spatial aan voor het gebruik in ArcGIS?

Antwoord

Soms voldoet de performance van een gewone view niet aan de door de gebruiker gestelde eisen. Dit kan optreden bij grote hoeveelheden data met een complexe ‘where’ clause in de view. In dit geval adviseren wij het gebruik van een materialized view, in plaats van een gewone view. Onderstaand stappenplan kan gebruikt worden voor het aanmaken en registeren van de materialized view, zodat deze in ArcGIS Desktop, ArcGIS Pro of ArcGIS Server gebruikt kan worden.

  1. Zorg ervoor dat de onderliggende tabel waarvan je de view wilt aanmaken een primary key heeft. Als dit niet het geval is, dan kun je een primary key definiëren met het ‘ALTER TABLE’ statement in SQL. In onderstaand voorbeeld maak je een primary key aan op de kolom ‘OBJECTID’ van de tabel ‘OBJECTEN’:

    ALTER TABLE OBJECTEN ADD PRIMARY KEY(OBJECTID);

  2. Vervolgens kun je de materialized view aanmaken met het ‘CREATE MATERIALIZED VIEW’ statement. Log hiervoor in met SQL in het gebruikersschema waarin je de materialized view wilt aanmaken:

    CREATE MATERIALIZED VIEW MYUSER.MYVIEW
    BUILD IMMEDIATE
    REFRESH FORCE
    NEXT (SYSDATE + 1/288)
    WITH PRIMARY KEY
    AS
    SELECT
    p.OBJECTID, p.SHAPE, p.CODE, p.SE_ANNO_CAD_DATA,...,
    i.CODE_BESCHRIJVING, i.EIGENAAR, i.STRAAT, i.HUISNUMMER,...
    FROM
    OBJECTEN p, BESCHRIJVING i
    WHERE
    p.CODE=i.CODE_BESCHRIJVING;

    In dit voorbeeld wordt een materialized view aangemaakt met de naam ‘MYVIEW’ in het userschema ‘MYUSER’. De bovenstaande materialized view wordt om de 5 minuten ge-refreshed (een dag bevat 1440 minuten, 5 minuten is dus 1440/5 = 288). Er wordt een join uitgevoerd tussen de ruimtelijke layer ‘OBJECTEN’ en de tabel ‘BESCHRIJVING’. Let erop dat je de volgende kolommen toevoegt: de unieke identifier van de ruimtelijke laag (hier: ‘OBJECTID’), de kolom waarin de ruimtelijke objecten zijn opgeslagen (hier: ‘SHAPE’), en –indien aanwezig- de kolom ‘SE_ANNO_CAD_DATA’ (een interne kolom beheerd door het systeem).
    Voor de materialized view moet Oracle Spatial metadata aangemaakt worden in de ‘USER_SDO_GEOM_METADATA’ view in het ‘MDSYS’ gebruikersschema. Gebruik hiervoor de waarden van de metadata van de onderliggende ruimtelijke laag. De Oracle Spatial metadata voor de onderliggende laag kun je achterhalen met een SQL-statement. Log hiervoor in als owner van de onderliggende laag (in dit geval de layer ‘OBJECTEN’), en voer het volgende SQL-statement uit:

    SELECT * FROM USER_SDO_GEOM_METADATA WHERE TABLE_NAME='OBJECTEN';

    Hier volgt een voorbeeld hoe je metadata kunt aanmaken voor de materialized view (ingelogd als de owner van de materialized view):

    INSERT INTO USER_SDO_GEOM_METADATA
    ( TABLE_NAME
    , COLUMN_NAME
    , DIMINFO
    , SRID
    )
    VALUES
    ( 'MYVIEW'
    , 'SHAPE'
    , MDSYS.SDO_DIM_ARRAY
    ( MDSYS.SDO_DIM_ELEMENT('X', 0, 300000, 0.005)
    , MDSYS.SDO_DIM_ELEMENT('Y', 300000, 600000, 0.005)
    )
    , 28992);

    Als er in de onderliggende ruimtelijke layer geen Oracle Spatial SRID gebruikt wordt, gebruik dan ook geen Oracle Spatial SRID voor de materialized view. In dit voorbeeld is wél een SRID gebruikt, het nummer 28992.

  3. Maak een ruimtelijke index aan voor de materialized view. Hiervoor kun je de ‘CREATE INDEX’ statement gebruiken:

    CREATE INDEX MYINDEX_IDX ON MYVIEW(SHAPE)INDEXTYPE IS MDSYS.SPATIAL_INDEX;

    Het aanmaken van de ruimtelijke index kan ook in ArcGIS Desktop of ArcGIS Pro, bijvoorbeeld met de ‘Add Spatial Index’ tool.

    Na deze stap kun je de materialized view als Query Layer gebruiken in ArcMap of ArcGIS Pro. Het is hiervoor niet nodig om de materialized view te registreren met de Geodatabase. Query Layers kun je in ArcMap toevoegen via het menu: ‘File > Add Data > Add Query Layer’ of met de ‘Add Query Layer’ tool in ArcToolbox. Ook is het mogelijk om de materialized view vanuit de database connection met drag en drop naar het kaartvenster te slepen.

  4. Het is mogelijk om de materialized view met de Geodatabase te registeren door de toolbox tool ‘Register With Geodatabase’ in ArcMap of ArcGIS Pro te gebruiken. Hierdoor wordt het bijvoorbeeld mogelijk om metadata aan te maken voor de materialized view, of hem in een relationship class op te nemen.

    Let op: Met de ‘Create Database View’ tool in ArcGIS Desktop kun je een database view aanmaken, maar geen materialized view.

De invloed van de installatie van specifieke Oracle Critical Patches op de werking van ArcGIS Desktop en ArcGIS Server

Na de installatie van bepaalde Oracle Critical patches voor Oracle 11g of 12c kunnen problemen optreden bij het maken van database connecties vanuit ArcGIS Desktop en ArcGIS Server. Door de verhoogde Oracle securityinstellingen kunnen ArcGIS Desktop, ArcGIS Pro en ArcGIS Server de parameter ‘OPEN_CURSORS’ niet meer uitlezen uit de v$parameter view in Oracle.

Bij het gebruik van ArcGIS Desktop 10.2.2 of eerdere versies, leidt dit tot foutmeldingen bij het maken van een database connectie of de applicatie hangt of crasht. In ArcGIS Server 10.2.2 of eerder, kunnen geen database connecties meer als datastore geregistreerd worden of werken bestaande map- of feature services niet meer omdat bestaande datastores niet meer benaderd kunnen worden.

Er zijn verschillende mogelijkheden om dit probleem te verhelpen in versie 10.2.2 of eerder:

  1. Zowel voor ArcGIS Desktop én ArcGIS Server 10.2.2 en eerder zijn er patches beschikbaar: http://support.esri.com/download/2143. Deze patches moeten op iedere ArcGIS Desktop installatie en ArcGIS Server installatie uitgerold worden.
  2. Het probleem kan alternatief opgelost worden door het toekennen van bepaalde privileges op Oracle niveau, mocht de installatie van de patches (op korte termijn) geen optie zijn:

    GRANT SELECT ON v_$parameter TO PUBLIC; of:
    GRANT SELECT ON v_$parameter TO <USER>;

    of

    GRANT SELECT SELECT_CATALOG_ROLE TO PUBLIC; of:
    GRANT SELECT SELECT_CATALOG_ROLE TO <USER>;

Vanaf ArcGIS versie 10.3 crasht of hangt de applicatie niet meer, maar hij kan nog steeds niet de OPEN_CURSORS parameter uitlezen uit v$parameter. Als ArcGIS de parameter niet kan uitlezen, wordt de standaardwaarde van 300 aangenomen, de default waarde van Oracle. Deze waarde is echter te laag voor de meeste ArcGIS omgevingen. Esri adviseert om deze waarde op 2000 te zetten. Omdat ArcGIS de OPEN_CURSOR parameter niet meer kan uitlezen bestaat de optie om de parameter OPEN_CURSORS als Geodatabase parameter op te nemen in de tabel sde.server_config. ArcGIS Desktop en ArcGIS Server gebruiken dan deze waarde, mocht het niet lukken om de parameter direct uit te lezen uit v$parameter. Op https://support.esri.com/technical-article/000012243 staat uitleg over het toevoegen van deze parameter aan de sde.server_config tabel.

In Enterprise Geodatabases versie 10.5 of hoger is de OPEN_CURSORS parameter standaard aanwezig in de tabel sde.server_config, met een standaardwaarde van 300. Het is mogelijk om de ‘sde.gdb_util.update_open_cursors’ stored procedure te gebruiken om de parameter in deze tabel te actualiseren met de daadwerkelijke waarde uit v$parameter. Informatie hierover is te vinden op http://desktop.arcgis.com/en/arcmap/latest/manage-data/gdbs-in-oracle/update-open-cursors.htm of https://pro.arcgis.com/en/pro-app/help/data/geodatabases/manage-oracle/update-open-cursors.htm


Hoe kan ik de performance van data uit een Enterprise Geodatabase verbeteren?

Vraag

Het tekenen van Feature Classes uit een Enterprise Geodatabase in volledige extent, de navigatie op de kaart of het uitvoeren van queries verloopt traag. Wat is de oorzaak hiervan en hoe kan ik de performance verbeteren?

Oorzaak

Er zijn verschillende oorzaken voor onvoldoende performance van Feature Classes uit een Enterprise Geodatabase. Dit artikel beschrijft een aantal vaak voorkomende oorzaken van performanceproblemen en mogelijke oplossingen.

Antwoord

Hier volgen een aantal vaak voorkomende oorzaken:

  1. De statistieken en indexen zijn niet up-to-date

    Actuele indexen en database statistieken zijn cruciaal bij het werken met data in een database. Onder http://support.esri.com/en/knowledgebase/techarticles/detail/24518 staan scripts voor het actualiseren van relevante database statistieken en indexen voor Oracle en SQL Server. Voor het uitvoeren van deze scripts zijn dba rechten nodig. Om zonder dba rechten voor een specifieke Feature Class database statistieken te laten berekenen, kun je in ArcGIS Desktop of ArcGIS Pro, ingelogd als de eigenaar van de data, de ‘Analyze’ tool gebruiken. Ook bestaat er een ‘Analyze Datasets’ tool waarmee je statistieken voor alle tabellen en in een gebruikerschema kunt laten berekenen. Als je ingelogd bent als de Geodatabase administrator, kun je ook voor de Geodatabase repository tabellen (tabellen van de schema owner SDE) statistieken laten berekenen. Dit is van belang bij het werken met versioning.

    Indexen van een feature class kun je actualiseren met behulp van een script (zie bovenstaande link) of met de ‘Rebuild Indexes’ tool in ArcGIS Desktop of ArcGIS Pro.

    Het actualiseren van indexen en statistieken kan ook met Python geautomatiseerd worden, zie ook http://desktop.arcgis.com/en/arcmap/latest/tools/data-management-toolbox/rebuild-indexes.htm#C_GUID-85C3554A-4265-44FE-9CF7-329C9EDCA651 en http://desktop.arcgis.com/en/arcmap/latest/tools/data-management-toolbox/analyze.htm#C_GUID-53439A74-F488-4FDF-A56B-EACE85DEF977.

  2. De versioning workflow is niet optimaal

    Bij het werken met geversionde data (‘Register as Versioned’) en een groot aantal edits, kan de performance van de database achteruit gaan. Onderstaand zijn een aantal aanbevelingen genoemd om de performance optimaal te houden:
    • De performance in een geversionde database is sterk afhankelijk van het aantal states en het aantal records in de adds en deletes tabellen. Voer daarom op regelmatige basis een compress uit. Hiermee verwijder je niet meer benodigde states, en verplaats je de records van de adds en deletes tabellen die gelijk zijn in alle versies naar de base tabellen. Voor het uitvoeren van een compress kun je de ‘Compress’ tool uit ArcToolbox gebruiken.
    • Als de workflow het toelaat kun je de database op regelmatige basis compressen naar state 0 en de adds en deletes tables helemaal leeg maken. Om een database te kunnen compressen naar state 0, moeten alle versies gereconciled en gepost worden met de DEFAULT versie, en vervolgens verwijderd worden. De hierop aansluitende compress zal alle records uit de adds en deletes tables terug brengen naar de base tables. Een handleiding hiervoor staat onder http://support.esri.com/en/knowledgebase/techarticles/detail/29160. Is het vanwege de workflow niet mogelijk alle versies te posten naar de DEFAULT versie? Voer dan in ieder geval een reconcile uit van alle bestaande versies met de DEFAULT versie. Hierdoor maak je de bewerkingen die gemaakt zijn in de DEFAULT versie ‘bekend’ bij alle andere versies, en kunnen in ieder geval de bewerkingen die zijn uitgevoerd in de DEFAULT versie gecompressed worden naar de base table.
    • Verwijder versies die aangemaakt zijn om te testen, of niet meer benodigde versies. Deze versies kunnen de compress van states tegen houden en de performance hierdoor negatief beïnvloeden.
    • Als het mogelijk is, houdt dan de versie boom ‘plat’. Maak dus niet ‘een child versie van de child versie van de child versie’ aan.
    • Zorg ervoor dat na het uitvoeren van bulk edits deze records zo snel mogelijk naar de base tables gecompressed worden. Reconcile en post hiervoor de bewerkte versie met de DEFAULT versie. Reconcile vervolgens alle andere versies met de DEFAULT versie, en voer aansluitend een compress uit.

    Het reconcilen, posten en verwijderen van versies en het uitvoeren van een compress kan helemaal geautomatiseerd worden, zie ook http://desktop.arcgis.com/en/arcmap/latest/manage-data/geodatabases/using-python-scripting-to-batch-reconcile-and-post-versions.htm.

  3. Er worden statistieken berekend op de sde logfile tables

    De inhoud van de logfile tabellen (SDE_LOGFILE_DATA) verandert snel en is heel dynamisch. Het berekenen van statistieken over de inhoud van deze tabellen tijdens het uitvoeren van selecties heeft een negatieve invloed op de performance. Wij adviseren om op de SDE_LOGFILE_DATA tabellen geen statistieken te laten berekenen, en bestaande statistieken te verwijderen. De procedure hiervoor staat beschreven onder http://support.esri.com/en/knowledgebase/techarticles/detail/37841.

    Een andere optie is om de SDE log file tables als global temporary tables aan te maken. Dit kan de performance nog eens verbeteren omdat er geen redo log and backup informatie gegenereerd wordt. Volg de handleiding onder http://support.esri.com/en/knowledgebase/techarticles/detail/32161 om de log file tables als global temporary tables aan te maken. Vanaf ArcGIS 10.5 worden in SQL Server en PostgreSQL databases standaard temporary log file tables gebruikt. Voor eerdere ArcGIS versies kan de handleiding onder http://support.esri.com/en/knowledgebase/techarticles/detail/32161 gebruikt worden.

    Als de performance nog steeds achterblijft bij het uitvoeren van selecties, dan bestaat er nog de optie om selecties niet in de database, maar op de client computer op te slaan. Standaard worden tot 100 geselecteerde records op de client gecached. Selecties van meer dan honderd records worden in de SDE_LOGFILE_DATA tabellen opgeslagen. Je kunt het aantal records dat op de client gecached wordt verhogen. Dit kan met behulp van een registry setting. Voor een stappenplan voor het aanmaken van deze registry key bestaat een technisch artikel van Esri Inc.: http://support.esri.com/en/knowledgebase/techarticles/detail/22668.

  4. Er wordt gebruik gemaakt van views met complexe where clauses

    De performance van views met complexe where clauses blijft weleens achter. Een optie kan zijn om in ArcMap, in de properties van de layer in het tabblad ‘Definition Query’, de optie ‘Attribute First’ aan te zetten. Deze instelling heeft ook effect als er geen definition query gebruikt wordt. Hierdoor wordt éérst de attribute query van de view uitgevoerd en dan pas de ruimtelijke query zoals een pan of zoom. Als de performance van views niet voldoende is dan adviseren wij het gebruik van materialized views. Maak een materialized view aan en vergelijk de performance met je gewone view. Onder http://www.esri.nl/support/technische-artikelen/arcgis-for-server-vragen#225 stellen wij een handleiding ter beschikking voor het aanmaken van een materialized view in Oracle.

Waarom zijn de kolommen SHAPE.AREA en SHAPE.LEN leeg bij een Oracle Spatial Feature Class?

Oorzaak

Het on the fly berekenen van deze eigenschappen voor objecten in het formaat SDO_GEOMETRY tijdens het bewerken in ArcMap zou een invloed op de performance kunnen hebben. Daarom heeft ESRI ervoor gekozen de standaardkolommen SHAPE.AREA en SHAPE.LEN niet te vullen.

Antwoord

Het Oracle Spatial (SDO_GEOMETRY) opslagformaat houdt de oppervlakte- en omtrekeigenschappen niet bij voor ruimtelijke objecten, waardoor de kolommen SHAPE.AREA en SHAPE.LEN niet berekend worden. Andere opslagformaten zoals SDEBINARY, ST_GEOMETRY of SDELOB houden deze eigenschappen wél bij. De kolommen SHAPE.AREA en SHAPE.LEN worden dan wel gevuld.

Gebruik de functie “Calculate Geometry” in ArcMap om de eigenschappen oppervlakte en omtrek te berekenen. De kolommen SHAPE.AREA en SHAPE.LEN zijn gereserveerd en kunnen niet gebruikt worden om de oppervlakte en omtrek hierin te laten berekenen. Maak hiervoor twee nieuwe kolommen aan, bv. een kolom met de naam “OPPERVLAKTE” en een kolom “OMTREK”. Kies hiervoor bij “Data Type” voor DOUBLE. Met dit datatype worden alle waarden opgeslagen. Laad de Feature Class vervolgens in ArcMap. Start een edit sessie (indien de layer “registered as versioned” is). Open de attribuuttabel. Rechtermuisklik op de kolom OPPERVLAKTE en kies voor “Calculate Geometry”. Kies voor “Area” om de oppervlakte te laten berekenen; “Perimeter” berekent de omtrek. Let op: deze waarden zijn statisch en worden dus niet automatisch bijgewerkt wanneer de geometrie van het ruimtelijk object gewijzigd wordt.

Er zijn alternatieven om met ArcObjects of op SQL niveau de oppervlakte en omtrek van SDO_GEOMETRY objecten te laten berekenen. Bekijk hiervoor onderstaand Esri technical article, deze is geschreven voor versie 9.3.1 maar nog steeds relevant voor versie 10.x:

FAQ: How can I get the area and length of features stored in Oracle Spatial?
https://support.esri.com/en/technical-article/000007099


Hoe komt het dat objecten in een layer in het Oracle Spatial formaat niet tekenen, of verdwijnen bij inzoomen?

Bij een layer in het formaat SDO_GEOMETRY (Oracle Spatial) tekenen geen objecten, objecten verdwijnen bij het inzoomen, of objecten ontbreken. Hoe kan dat en welke opties zijn er om dit probleem te verhelpen?

Er zijn verschillende mogelijke oorzaken die onderstaand genoemd zijn:

1. De layer heeft geen ruimtelijke index

Hoe kan dit gecontroleerd worden? De ruimtelijke index is een domain index van type mdsys.spatial_index op een kolom van type SDO_GEOMETRY. Het is mogelijk om met SQLPLUS te controleren of er een index aanwezig is. Een voorbeeld:

select index_name, index_type from user_indexes where table_name='MYTABLE';

of

select index_name, column_name from user_ind_columns where table_name='MYTABLE';

Ook in ArcGIS Desktop of ArcGIS Pro kan in de eigenschappen van de layer gecontroleerd worden of een tabel een spatial index heeft. Als er geen spatial index is dan kan deze aangemaakt worden met de ‘Create’ button:

Verder bestaat er zowel in ArcGIS Desktop als ArcGIS Pro de mogelijkheid om een spatial index aan te maken met de toolbox tool ‘Add Spatial Index’.

Ook met SQL tools kan een spatial index aangemaakt worden:

create index MYINDEX_IX1 on MYTABLE(SHAPE) indextype is mdsys.spatial_index;

2. De layer bevat objecten die niet geldig zijn binnen de Oracle Spatial validatieregels

Dit probleem treedt soms op als externe databronnen met ArcGIS Desktop of ArcGIS Pro benaderd worden. Bij het intekenen van objecten in een edit sessie in ArcMap of ArcGIS Pro worden alleen maar objecten aangemaakt die volstaan aan de voorwaarden van ArcGIS en Oracle. Als je externe databronnen benadert dan kunnen deze datasets geometriefouten bevatten.

Hiervoor bestaat een Oracle Spatial validatie functie: SDO_GEOM.VALIDATE_GEOMETRY_WITH_CONTEXT. Onderstaand een syntaxvoorbeeld:

SQL> SELECT A.ObjectID, SDO_GEOM.VALIDATE_GEOMETRY_WITH_CONTEXT(A.SHAPE, M.diminfo) AS PROBLEM
2 FROM mytable A,USER_SDO_GEOM_METADATA M
3 WHERE M.table_name = 'MYTABLE'
4 AND M.column_name = 'SHAPE'
5 AND SDO_GEOM.VALIDATE_GEOMETRY_WITH_CONTEXT(A.SHAPE, M.diminfo) <> 'TRUE';

Als deze procedure geometriefouten oplevert dan kan de ‘sdo_util.rectify_geometry’ binnen Oracle procedure gebruikt worden om deze te verhelpen. Onderstaand een voorbeeld voor het toepassen van deze procedure:

update MYTABLE a set a.SHAPE = sdo_util.rectify_geometry(a.SHAPE,0.005);

3. De laag bevat niet ondersteunde Oracle entity types

De volgende entity types kan ArcGIS niet lezen:

  • Application-specific geographic elements (SDO_ETYPE 0)
  • Optimized circles (SDO_ETYPE 3, interpretation 4)
  • Heterogeneous collections (SDO_GTYPE 4)

Het is mogelijk om de entity types te controleren met bijvoorbeeld het volgende commando:

select distinct a.SHAPE.sdo_gtype from MYTABLE a;

Zie ook https://support.esri.com/en/technical-article/000004353 voor meer informatie over dit onderwerp. Dit artikel is geschreven voor oudere versies van ArcGIS, maar nog steeds van toepassing op actuele versies.

4. De laag bevat een kolom met datumwaarden van voor het jaar 100

Dit is niet ondersteund in ArcGIS Desktop en ArcGIS Pro en is een voorwaarde voor alle tabellen, niet alleen tabellen in het Oracle Spatial formaat. Ook een NULL waarde in kolom van type ‘Date’ veroorzaakt problemen in ArcGIS. De kolom dient gevuld te worden met een geldige datumwaarde, of de ongeldige datumwaarden moeten gefilterd worden, bijvoorbeeld door het aanmaken van een database view.

5. De ID die als unieke ID wordt gebruikt, volstaat niet aan de voorwaarden van ArcGIS

Als een tabel met de Geodatabase geregistreerd is (‘Register with Geodatabase’) of met ArcGIS tools aangemaakt is, dan heeft hij automatisch een door ArcGIS beheerde kolom van type ‘Objectid’. Deze kolom bevat unieke waarden die door de software als unieke identifier voor objecten gebruikt kunnen worden.

Als de tabel niet met ArcGIS tools aangemaakt is of niet met de Geodatabase geregistreerd is, dan is het alsnog nodig dat er een kolom met unieke waarden aanwezig is die geen NULL values bevat, die door ArcGIS als unieke identifier gebruikt kan worden. De volgende data types zijn mogelijk voor deze kolom:

  • Integer (alleen positieve waarden)
  • String
  • GUID
  • Date

ArcGIS controleert niet of de waarden in een kolom uniek zijn. Als er niet unieke waarden voorkomen, dan ontstaan er problemen met het tekenen van objecten op de kaart, het tonen van attributen of het uitvoeren van selecties.

Voor meer informatie zie https://pro.arcgis.com/en/pro-app/help/data/databases/unique-identifier-fields-in-database-tables.htm en http://desktop.arcgis.com/en/arcmap/latest/manage-data/databases/unique-identifier-fields-in-database-tables.htm.


Ik wil een Oracle (spatial) view in ArcGIS gebruiken. Hoe kan ik dit het beste doen?

Sinds ArcGIS for Desktop 10.1 is het mogelijk om bestaande Oracle spatial views (of tabellen met een kolom van type SDO_GEOMETRY) direct in ArcMap te gebruiken, zonder dat je deze eerst moet registreren met ArcSDE. Sleep hiervoor de view vanuit de Catalog window naar ArcMap, of voeg de view als query layer toe in ArcMap via het menu: File, Add Data, Add Query Layer.

Ook kun je gebruik maken van de toolbox tool ‘Create Query Layer’ om de view als layer in ArcMap toe te voegen. Meer informatie over het werken met views in ArcGIS vind je onder http://desktop.arcgis.com/en/arcmap/latest/manage-data/using-sql-with-gdbs/views-in-geodatabase.htm. Hier staan ook voorbeelden voor het aanmaken van views in verschillende DBMS systemen.

Je kunt views vanaf ArcGIS for Desktop 10.1 ook aanmaken vanuit ArcGIS for Desktop. Gebruik hiervoor de toolbox tool ‘Create Database View’. Deze views zijn niet met ArcSDE geregistreerd, maar dat is dus ook niet nodig voor het gebruik in ArcMap.

De Oracle spatial view is wel read-only in ArcGIS. Ook is het niet mogelijk om metadata ArcCatalog aan te maken voor views.

Werk je met ArcGIS for Desktop 10.0? Dan is het wel noodzakelijk om de view te registeren met ArcSDE om hem in ArcGIS for Desktop te kunnen gebruiken. Er zijn 2 opties om de view te gebruiken in ArcGIS for Desktop 10.0:

Optie 1: Registreer de bestaande view in ArcSDE

Bij de eerste methode gebruik je het ArcSDE commando sdelayer –o register (voor views met een kolom van type SDO_GEOMETRY) of sdetable –o register (voor niet-ruimtelijke views) om de view te registreren in het ArcSDE user schema.

Voor het registreren van layers met een kolom van type SDO_GEOMETRY moet voor de view geldige Oracle Spatial metadata aangemaakt worden.

Stap 1: Ga naar SQL*Plus, log in als de eigenaar van de view, en voeg Oracle Spatial metadata toe:

insert into user_sdo_geom_metadata values….

Voorbeeld:

insert into user_sdo_geom_metadata values (' NLP1_R97', 'GEOMETRIE', MDSYS.SDO_DIM_ARRAY(MDSYS.SDO_DIM_ELEMENT('X',0,300000,.0005), MDSYS.SDO_DIM_ELEMENT('Y',300000, 650000,.0005)), 28992) ;

Stap 2: Registreer de view me sdelayer –o register….

Voorbeeld:

sdelayer -o register -i 5152 -u test -p test -s oraclesupport -l NLP1_R97,geometrie -e a -t SDO_GEOMETRY -k SDO_GEOMETRY -C OBJECTID,USER -P HIGH -x 0,300000,10000,0.001 -G 28992

Hierna kan de layer gebruikt worden in de ArcGIS for Desktop applicaties.

Hierna kan de layer gebruikt worden in de ArcGIS for Desktop 10.0 applicaties.

Optie 2: Maak de view opnieuw aan in ArcSDE

De tweede methode komt er in feite op neer dat je de bestaande view verwijdert en daarna opnieuw aanmaakt met een ArcSDE commando. De stappen hiervoor zijn:

Stap 1: Verzamel informatie over de originele view. De definitie en syntax van de view vraag je op met een SQL*Plus commando: set long 30000 select text from user_views / dba_views / all_views

Stap 2: Verwijder de view met SQL*Plus en maak de view opnieuw aan met het sdetable -o create_view commando. Voor het aanmaken van de view met het sdetable –o create_view commando, zie ook de volgende links van Esri:

 

Aandachtspunten:

  • Alle kolommen die in de uiteindelijke view komen, moeten voorkomen in het sdetable commando (-c parameter);
  • De object-id kolom uit de ruimtelijke tabel moet aanwezig zijn in de kolom lijst;
  • Om een ruimtelijke view aan te maken, moet ook de ruimtelijke kolom in de kolom lijst opgenomen zijn;
  • De "where" clause kan weggelaten worden;
  • De ruimtelijke tabel moet als eerste staan in de -t lijst;
  • Er is een verschil tussen de -t en -T optie. Met de –T optie geef je de naam van de view op. Met de –t optie geef je aan welke tabellen in de view gebruikt moeten worden.

Stap 3: Maak de view volledig via een SQL*Plus: create or replace view. Complexe where clausules zijn niet mogelijk met het sdetable commando. De clausules kunnen later worden toegevoegd via een SQL*Plus create or replace view commando. In het geval van een eenvoudige where clausule sla je stap drie over en gebruik je de clausule in het sdetable commando.

Opmerkingen:

  1. Wanneer in de ruimtelijke view meerdere tabellen aan elkaar gekoppeld worden, mag slechts één van deze tabellen een ruimtelijke kolom bevatten. Deze beperking geldt ook wanneer de ruimtelijke kolom uit de andere tabel niet in de view gebruikt wordt. De workaround voor deze beperking is om eerst een administratieve view op de betreffende tabel aan te maken. De administratieve view kun je vervolgens gebruiken binnen de ruimtelijke view;
  2. Een ruimtelijke view werkt alleen op data die niet geversioned is: De view kijkt alleen naar de base table. Is de onderliggende tabel toch geversioned, dan zal de informatie uit de A- en D-tabellen niet getoond worden, met een inconsistent resultaat als gevolg!;
  3. De "alle kolommen dienen aanwezig te zijn" clausule is van toepassing vanaf ArcSDE 9.X. Vanaf deze versie wordt namelijk informatie over alle in ArcSDE tabellen aanwezige kolommen opgeslagen in de ArcSDE repository (sde.column_registry). Het is dus ook niet verstandig om met niet-Esri software kolommen toe te voegen of te verwijderen;
  4. Vanuit ArcGIS is niet te zien of een feature class een tabel is of een view. Via SQL*Plus kan dit natuurlijk wel. In de ArcSDE repository is een view ook te herkennen: zo is voor een view de base_layer_id in de sde.layers tabel gevuld (met het layer_id van de originele ruimtelijke tabel).
  5. ArcSDE 10.2.2 was de laatste beschikbare versie van de ArcSDE commandline tools. Er zijn geen ArcSDE commandline tools meer beschikbaar voor versie 10.3.x en 10.4. Mocht je workflow vereisen dat de view met ArcSDE geregistreerd is, dan kun je de ArcSDE 10.2.2 commandline tools ook nog gebruiken om de view in een 10.3.x of 10.4 Geodatabase te registeren met ArcSDE.

Hoe gebruik ik ArcSDE logfile tabellen voor opslaan van selecties?

ArcSDE is een applicatie die opereert op de grens van twee werelden: GIS applicaties en database management systemen. Dit betekent dat ArcSDE voor oplossingen moet zorgen op onderdelen waar de twee werelden van elkaar verschillen. Eén van deze verschillen is de manier waarop er wordt omgegaan met selecties. Binnen ArcMap is het heel eenvoudig: "selecteer alle percelen die binnen een afstand van 1.500 meter van een spoorlijn liggen" (select > select by location). Druk op OK en het resultaat licht geel op (selection > options > selection color). De selectie wordt daarna vastgehouden voor verdere transacties, totdat de gebruiker deze verwijderd. Een DBMS kent het principe van het vasthouden van een selectie niet. In een database levert een selectie informatie op het beeldscherm op en meer niet. De database vergeet de informatie daarna onmiddellijk. Een database edit transactie bestaat dan ook altijd uit een gecombineerde selectie en mutatie actie.

Een GIS client wil een selectie vasthouden maar een DBMS kan dit niet. ArcSDE heeft hiervoor twee oplossingen:

  • Selectie opslaan in het geheugen van de client;
  • Selectie opslaan in een tabel in het DBMS.

De gekozen methode is afhankelijk van de gebruikte software. Voor ArcGIS is de drempelwaarde honderd geselecteerde objecten. Bij een selectie van meer dan honderd objecten wordt de selectie in speciale database tabellen opgeslagen. ArcView GIS en ArcIMS slaan alle selecties op in de database. De grenswaarde is in te stellen in de registry van de client machine:

HKEY_CURRENT_USER\Software\ESRI\Geodatabase\Settings\SelectionThreshold
(Kijk ook hier voor deze instelling).

Iedere Esri client conformeert zich aan deze instelling. Een waarde van vijfhonderd zorgt er dus voor dat selecties van minder dan vijfhonderd objecten, via welke client dan ook, in het geheugen van de client computer worden opgeslagen.

Beide methoden van opslag hebben voor- en nadelen:

  • Opslag in het geheugen kost veel minder tijd. Zo hoeft de informatie bijvoorbeeld niet over het netwerk naar het DBMS gestuurd te worden;
  • Het opslaan van de informatie in een DBMS levert extra transacties op zodat de algemene respons ervan omlaag gaat;
  • Daarentegen gebruikt de opslag in een tabel in het DBMS geen (extra) geheugenruimte op de client.

Als er wordt gekozen voor de opslag in een DMBS tabel, zijn er wederom verschillende opties beschikbaar:

Tot ArcGIS 9 bestond er slechts 1 logfile mechanisme voor het opslaan van selecties in een tabel in het DBMS. In het schema van de gebruiker werden twee tabellen aangemaakt (SDE_LOGFILES en SDE_LOGFILE_DATA). Alle gebruikers, die onder hetzelfde account een connectie naar ArcSDE maakten, deelden deze tabellen. Deze tabellen werden pas geleegd op het moment dat de gebruiker uitlogde. Als een gebruiker tijdens zijn sessie veel grote selecties heeft gemaakt, kan dit veel tijd kosten. Deze implementatie kon er toe leiden dat er conflicten ontstonden op het moment dat meerdere gebruikers 1 database account deelden.

Vanaf ArcGIS 9 zijn er drie methoden om het gebruik van ArcSDE logfile tabellen te implementeren:

  • Shared logfiles;
  • Session logfiles (user-owned, of sde-owned);
  • Standalone logfiles (user-owned, of sde-owned).

Shared logfiles

De shared logfile methode borduurt voort op het logfile mechanisme zoals dat ook in eerdere versies van ArcSDE aanwezig was. Alleen wordt de selectie nu al uit de tabel verwijderd op het moment dat de gebruiker de selectie in de client applicatie ongedaan maakt. Dit voorkomt extreem lange delete operaties aan het eind van een gebruikers-sessie. Een delete statement zorgt altijd voor het verwijderen van de selecties. Deze methode kent nog steeds een risico op ‘contention’ wanneer veel gebruikers het account delen. Ook heeft het account create table privileges binnen de database nodig om de vereiste tabellen aan te maken. Deze privileges kunt u overigens intrekken op het moment dat de tabellen eenmaal zijn aangemaakt.

Session logfiles (user-owned, of sde-owned)

De session logfile, user-owned methode maakt voor iedere sessie afzonderlijke logfile tabellen aan. Dus ook wanneer meerdere gebruikers hetzelfde account delen, gebruikt elke gebruiker (sessie) zijn eigen tabellen. Na afloop van de sessie worden de tabellen uit het schema verwijderd. In dit scenario heeft het account dus ook create table privileges binnen de database nodig om de tabellen aan te maken. Omdat deze tabellen voor elke sessie opnieuw aangemaakt moeten worden, kunnen deze rechten niet ingetrokken worden.

Wanneer je een selectie ongedaan maakt, wordt deze door een truncate statement verwijderd indien het de volledige selectie set betreft. Verwijder je slechts een deel van de selectie set, zal een delete statement gebruikt worden.

Een variant op deze logfile configuratie is een pool van session logfiles die binnen het sde schema aangemaakt wordt. In dit geval moet het maximaal aantal gelijktijdige sessies van te voren bekend zijn, de pool moet voorzien in voldoende logfiles voor al deze sessies. In dit scenario hebben individuele gebruikers geen create table privileges meer nodig. Maar zijn er onverhoopt toch te weinig logfiles in de pool beschikbaar dan zal ArcSDE alsnog proberen om de tabellen in het gebruikers schema aan te maken.

Zijn de create table privileges ingetrokken dan zal dit leiden tot een foutmelding dat er onvoldoende privileges aan de gebruiker zijn toegekend.

Standalone logfiles (user-owned, of sde-owned)

De standalone logfile methode slaat de selecties per layer in een aparte tabel op, deze tabel wordt per gebruiker aangemaakt. De tabellen worden weer verwijderd op het moment dat de gebruiker de connectie verbreekt. Bij deze methode heeft de gebruiker dus ook create table privileges nodig. Het gebruik van deze methode kan tot veel ddl activiteit op de database leiden.

Ook deze logfile methode kent een variant waarbij de logfiles uit een pool van tabellen in het sde schema betrokken worden.

Welke methode gebruikt wordt, wordt bepaald door de instellingen die zijn opgeslagen in de server_config tabel. Tijdens de installatie van ArcSDE wordt deze tabel gevuld met de informatie uit het bestand giomgr.defs (te vinden onder %SDEHOME%\etc). In een bestaande omgeving kun je de instellingen wijzigen met het behulp van het sdeconfig commando.

Voorbeelden van logfiles:

Shared logfiles:
ALLOWSESSIONLOGFILE FALSE
MAXSTANDALONELOGS 0
LOGFILEPOOLSIZE 0

Session logfiles, user-owned :
ALLOWSESSIONLOGFILE TRUE
MAXSTANDALONELOGS 0
LOGFILEPOOLSIZE 0

Session logfiles, sde-owned :
ALLOWSESSIONLOGFILE TRUE
MAXSTANDALONELOGS 0
LOGFILEPOOLSIZE <n>

Standalone logfiles, user-owned:
ALLOWSESSIONLOGFILE FALSE
MAXSTANDALONELOGS <m>
LOGFILEPOOLSIZE 0

Standalone logfiles, user-owned:
ALLOWSESSIONLOGFILE FALSE
MAXSTANDALONELOGS <m>
LOGFILEPOOLSIZE <n>*<m>

Met n als het totaal aantal verwachte gelijktijdige sessies, en m als het maximaal aantal standalone logfile tabellen dat per sessie toegestaan is.

De HOLDLOGPOOLTABLES variabele bepaalt, wanneer tabellen weer beschikbaar komen voor de pool. Wanneer deze variabele op true wordt ingesteld, wordt de tabel gedurende de hele sessie vastgehouden en na afloop van de sessie waar voor de pool beschikbaar gesteld. Wanneer deze variabele op false wordt ingesteld wordt de tabel al weer aan de pool beschikbaar gesteld op het moment dat de selectie set verwijderd is.