Základné rozdiely a limity formátov
Geodatabáza má širšie funkčné možnosti ako šejp. Dovolí viac znakov – viac ako 10 znakov pre popis atribútov, aj pre dĺžku bunky – v porovnaní s DBF v SHP. Ak robíte exporty zo služby AGOL, resp. ArcGIS Enterprise, odporúčam nepoužiť SHP aj kvôli tomu, že vám názvy stĺpcov oreže. SHP predstavuje jednu vrstvu, geodatabáza môže mať neobmedzené množstvo vrstiev. Dĺžka názvu atribútu v prípade šejpu je maximálne 10 znakov. Do SHP žiadnu prílohu nepridáte.
Geodatabáza pracuje s doménami a subtypmi. Je to niečo ako číselník, prepojovacia tabuľka, resp. substitúcia. Napríklad v tabuľke máte záznamy označené kódmi 1 až 1000 alebo A až N. K nim máte tabuľku, v ktorej je definované, čo ktoré kódy znamenajú. Typické príklady sú pôdne typy, typy druhov pozemku katastra, kategorizácia platieb, ekonomická klasifikácia a podobne. Doménu vytvoríte buď ručne, alebo importom z XLS či CSV.
Veľkosť dát a výkon
Vykresľovanie GDB je rýchlejšie aj z dôvodu, že je kapacitne úspornejšia. DBF alokuje pevné miesto pre každý záznam podľa definície polí bez ohľadu na použité hodnoty. Ak máte milión záznamov, v ktorých je len 100 buniek nejakého atribútu vyplnených, na veľkosť súboru DBF to nemá žiaden vplyv. V prípade GDB to má zásadný vplyv. Pri rovnakom obsahu dát GDB zaberie podstatne menej priestoru na úložisku ako SHP.
GDB ako kontajner dát
Svojím spôsobom je GDB niečo ako kontajner, pretože prijme rôzne formy dát – rastre, TIN, mozaiky a podobne. „Konzumuje“ rôzne vrstvy, zatiaľ čo SHP vždy iba jednu. Kontajner je termín používaný aj pri multimédiách, napríklad MPEG alebo MKV. Ide o obalovú technológiu, ktorá prijíma rôzne typy dát – pri videu napríklad H.264, H.265, MP4, AVI. Podobne pri rastroch ide o *.TIFF kontajner, kde môže byť vnútorná kompresia ako JPEG, LZW, TIFF RLE, CCITT, PNG a podobne.
Geometrické atribúty a editácia
GDB si sama automaticky pri exporte tvorí rozmerové atribúty ku geometrii a udržiava ich aj pri editácii. Pri SHP ich treba pri zmene údajov dopočítavať ručne.
Praktické nevýhody GDB
Nevýhoda GDB je v tom, že jej obsah je prakticky nečitateľný bez GIS softvéru. Zo súborov v správcovi súborov nie je zrejmé, čo je vo vnútri. V prípade SHP si viete šejp pomenovať ako chcete a vidíte ho priamo na disku. Preto sa GDB horšie kopíruje a synchronizuje. GDB vie byť lockovaná – zamknutá, čo je niekedy výhoda, inokedy problém. Ak nejde niečo zmazať, treba najprv skontrolovať, či nie je niečo editované, a potom použiť Delete v geoprocessingu. Na synchronizáciu GDB je vhodné použiť Catalog, prípadne jednoduché Ctrl+C / Ctrl+V, ale najspoľahlivejšie sú nástroje v geoprocessingu v Analyze.
Publikovanie na server
Ak sa publikuje SHP na ArcGIS Enterprise alebo AGOL, technológia si ho natívne pretransformuje do GDB – mierne odlišnej, než by vytvorilo ArcGIS Pro. SHP je z princípu otvorený formát, prístupný strojovému spracovaniu, GDB nie. SHP sa postupne stáva výmenným formátom medzi ne-GIS a GIS svetom, medzi softvérmi, ktoré si inak súborovo neporozumejú. Používa ho napríklad PTV Vision (dopravné modelovanie), Kokeš, čiastočne Autodesk, Hexagon a ďalšie systémy.
Serverové služby a prílohy
Niektoré služby na serverovej technológii je možné vytvoriť iba z GDB, napríklad mozaiky z rastrov. GDB umožňuje pridávať prílohy aj z ne-GIS sveta, typicky fotografie vo formáte JPEG. To je veľmi dôležité pre laikov a manažérov a zároveň vizuálne veľmi efektné.
Metadáta a dokumentácia
Ako v prípade SHP, aj pri GDB odporúčam údaje otagovať a popísať metadátami. Ak GDB obsahuje viac vrstiev alebo súčastí, ideálne je popísať každú samostatne. Oceníte to najmä pri publikovaní na server, pretože ArcGIS Enterprise a AGOL všetky tieto informácie automaticky preberajú.
Basic differences and format limitations
A geodatabase has broader functional capabilities than a shapefile. It allows longer field names – more than 10 characters for attribute descriptions, as well as greater field length – compared to the DBF used in SHP. If you are exporting data from AGOL or ArcGIS Enterprise services, I recommend not using SHP also because column names get truncated. SHP represents a single layer, while a geodatabase can contain an unlimited number of layers. The maximum length of an attribute name in a shapefile is 10 characters. You cannot add any attachments to SHP.
Domains, subtypes, and lookup tables
A geodatabase works with domains and subtypes. This is similar to a lookup table, a linking table, or a substitution mechanism. For example, in a table you may have records coded from 1 to 1000 or from A to N. You then have another table defining what each code means. Typical examples include soil types, cadastral land use types, payment categories, economic classifications, and similar datasets. Domains can be created manually or imported from XLS or CSV.
Data size and performance
Rendering from a GDB is faster, also because it is more storage-efficient. DBF allocates a fixed amount of space for each record based on the field definitions, regardless of how many values are actually used. If you have one million records in which only 100 cells of a certain attribute are filled, this has no impact on the size of the DBF file. In the case of GDB, however, this has a significant effect. With the same data content, a GDB occupies substantially less storage space than SHP.
GDB as a data container
In a way, GDB acts as a container, because it can hold different types of data – rasters, TINs, mosaics, and similar datasets. It “consumes” multiple layers, whereas SHP always contains only one. The term container is also used in multimedia, for example MPEG or MKV. It refers to a wrapper technology that holds different kinds of data – in video, for example, H.264, H.265, MP4, AVI. Similarly for rasters, you may have a *.TIFF container, but internally the data can be compressed using JPEG, LZW, TIFF RLE, CCITT, PNG, and so on.
Geometric attributes and editing
When exporting to GDB, the geodatabase automatically creates geometry dimension attributes and maintains them during editing. In SHP, these must be recalculated manually after data changes.
Practical disadvantages of GDB
A disadvantage of GDB is that its contents are practically unreadable without GIS software. From the files in a file manager, it is not clear what is stored inside. With SHP, you can name the shapefile as you like and see it directly on disk. Therefore, GDB is harder to copy and synchronize. A GDB can be locked, which is sometimes an advantage and sometimes a problem. If something cannot be deleted, you should first check whether it is being edited, and then try using Delete in geoprocessing. For synchronizing a GDB, it is advisable to use Catalog or simple Ctrl+C / Ctrl+V, but the most reliable tools are those in the Analyze geoprocessing toolbox.
Publishing to a server
When a SHP is published to ArcGIS Enterprise or AGOL, the technology internally converts it into a native GDB – slightly different from what ArcGIS Pro would create. SHP is by nature an open format, suitable for machine processing, whereas GDB is not. SHP is gradually becoming a transfer format between non-GIS and GIS environments, and between software systems that otherwise do not fully understand each other at the file level. It is used, for example, by PTV Vision (traffic modeling), Kokeš, partly Autodesk, Hexagon, and other systems.
Server services and attachments
Some server-based services can be created only from GDB, for example raster mosaics. GDB also allows adding attachments from the non-GIS world, typically photographs in JPEG format. This is very important for non-technical users and managers, and at the same time very visually effective.
Metadata and documentation
As with SHP, I also recommend tagging and documenting GDB data using metadata. If a GDB contains multiple layers or components, ideally each one should be described separately. This is especially valuable when publishing to a server, because ArcGIS Enterprise and AGOL automatically inherit all this information.
