Skip To Content

Manifest zur Big-Data-Dateifreigabe

Hinweis:

Für ArcGIS Enterprise 10.9.1 oder spätere Versionen wird empfohlen, Big-Data-Dateifreigaben über die Inhaltsseite des Portals hinzufügen oder zu bearbeiten statt über ArcGIS Server Manager.

Weitere Informationen zum Hinzufügen von Big-Data-Dateifreigaben im Portal

Big-Data-Dateifreigaben werden über die Inhaltsseite des Portals als Data Store registriert. Big-Data-Dateifreigaben erfordern ein Manifest, um das Schema der Daten sowie die Felder zur Darstellung von Geometrie und Zeit im Dataset zu beschreiben. Das Manifest wird beim Registrieren einer Big-Data-Dateifreigabe automatisch erstellt, Sie müssen jedoch möglicherweise Änderungen vornehmen, wenn sich Ihre Daten ändern oder wenn anhand der Manifesterstellung nicht alle erforderlichen Informationen ermittelt werden konnten (das automatisch erstellte Manifest hat beispielsweise nicht das richtige Feld für die Geometrie oder Zeit ausgewählt).

Hinweis:

Das Bearbeiten der Big-Data-Dateifreigabe über das Manifest ist eine erweiterte Option. Weitere Informationen zum Anwenden von Änderungen auf einzelne Datasets in der Big-Data-Dateifreigabe finden Sie unter Verwalten von Big-Data-Dateifreigaben in einem Portal. Weitere Informationen zum Anwenden einer Hint-Datei für Dateien mit Trennzeichen finden Sie unter Hint-Dateien.

Das Manifest besteht aus Datasets. Die Anzahl der Datasets hängt von der Anzahl der Ordner ab, die in der Big-Data-Dateifreigabe enthalten sind. Im folgenden Beispiel sind fünf Datasets verfügbar:

"datasets":[
  {.. dataset1 ..},
  {.. dataset2 ..},
  {.. dataset3 ..},
  {.. dataset4 ..},
  {.. dataset5 ..},
]

Jedes Dataset weist fünf Objekte der obersten Ebene auf, die angewendet werden können. Von diesen Objekten sind name, format und schema erforderlich.

{
 "name": "dataset1",
 "format": {},
 "schema": {},
 "geometry": {},
 "time": {}
}

Name

Das name-Objekt ist erforderlich und definiert den Namen des Datasets. Dieser muss im Manifest eindeutig sein.

Format

Das format-Objekt ist erforderlich und definiert den Dataset-Typ und dessen Format.

SyntaxBeispiel
"format" : {
 "type" :  "< delimited | shapefile | orc | parquet >",
 "extension" : "< csv | tsv | shp | orc | parquet >",
 "fieldDelimiter" : "< delimiter >",
 "recordTerminator: "< terminator >",
 "quoteChar":  "< character for quotes>",
 "hasHeaderRow" :  < true | false >, 
 "encoding" : "< encoding format >"
}

Beispiel für die Verwendung eines Shapefiles:

"format" : {
 "type": "shapefile",
 "extension": "shp"
}

Beispiel für die Verwendung einer durch Trennzeichen getrennten Datei:

"format" : {
 "type": "delimited",
 "extension": "csv",
 "fieldDelimiter": ",",
 "recordTerminator": "\n", 
 "quoteChar" "\"",
 "hasHeaderRow": true,
 "encoding" : "UTF-8"
}

Beschreibung

  • type: Eine erforderliche Eigenschaft, die die Quelldaten definiert. Hierbei kann es sich um delimited, shapefile, parquet oder orc handeln.
  • extension: Eine erforderliche Eigenschaft, die die Dateierweiterung angibt. Für Shapefiles lautet diese shp, während durch Trennzeichen getrennte Dateien die Dateierweiterung der Daten verwenden (z. B. csv oder tsv). Für ORC-Dateien wird orc und für Parquet-Dateien parquet verwendet.
  • fieldDelimiter: Dies ist erforderlich, wenn type delimited entspricht. In diesem Feld wird dargestellt, wodurch Felder in der durch Trennzeichen getrennten Datei getrennt werden.
  • recordTerminator: Dies ist nur dann erforderlich, wenn type delimited entspricht. In diesem Feld wird angegeben, wodurch Features in der durch Trennzeichen getrennten Datei beendet werden.
  • quoteChar: Dies ist nur dann erforderlich, wenn type delimited entspricht. Das Zeichen zeigt an, wie Anführungszeichen in der durch Trennzeichen getrennten Datei angegeben werden.
  • hasHeaderRow: Dies ist nur dann erforderlich, wenn type delimited entspricht. Diese Eigenschaft legt fest, ob die erste Zeile in einer durch Trennzeichen getrennten Datei als Kopfzeile oder als erstes Feature behandelt werden soll.
  • encoding: Dies ist nur dann erforderlich, wenn type delimited entspricht. Diese Eigenschaft gibt die Art der verwendeten Codierung an.

Schema

Das schema-Objekt ist erforderlich. Es definiert die Dataset-Felder und den Feldtyp.

SyntaxBeispiel
"schema" : {
 "fields" : {
  "name": "< fieldName >",
  "type" : "< esriFieldTypeString | 
     esriFieldTypeBigInteger | 
     esriFieldTypeDouble >"
 }
}
"schema" : {
 "fields":[
  {
   "name": "trackid",
   "type": "esriFieldTypeString"
  },
  {
   "name": "x",
   "type": "esriFieldTypeDouble"
  },
  {
   "name": "y",
   "type": "esriFieldTypeDouble"
  },
  {
   "name": "time",
   "type": "esriFieldTypeBigInteger"
  },
  {
   "name": "value",
   "type": "esriFieldTypeBigInteger"
  }
 ]
}

Beschreibung

  • fields: Eine erforderliche Eigenschaft, die die Felder im Schema definiert.
  • name: Eine erforderliche Eigenschaft, die den Feldnamen angibt. Der Feldname muss für das Dataset eindeutig sein und darf nur alphanumerische Zeichen und Unterstriche enthalten.
  • type: Dies ist eine erforderliche Eigenschaft, die den Feldtyp definiert. Die folgenden Optionen sind verfügbar:
    • esriFieldTypeInteger für ganzzahlige Werte.
    • esriFieldTypeSmallInteger für ganzzahlige Werte.
    • esriFieldTypeBigInteger für ganzzahlige Werte. Felder für große Ganzzahlen werden als Double-Felder in einem Feature-Service gespeichert.
    • esriFieldTypeString für Zeichenfolgen.
    • esriFieldTypeDouble für Double- oder Float-Felder.
    • esriFieldTypeDate für Shapefiles mit Datumsfeldern. Durch Trennzeichen getrennte, ORC- und Parquet-Datasets mit Feldern, die Datumsangaben repräsentieren, müssen durch ein esriFieldTypeString-Feld dargestellt werden.
    • esriFieldTypeSingle: für einzelne Felder.
    • esriFieldTypeBlob: für binäre Werte. BLOB-Felder werden als Zeichenfolgenfelder in einem Feature-Service gespeichert.
Hinweis:

Wenn Big-Data-Dateifreigaben mithilfe von GeoAnalytics Tools analysiert und als Feature-Service gespeichert werden, können sich die Typen ändern. Beispiel: esriFieldTypeBigInteger in einer Big-Data-Dateifreigabe wird zu einem esriFieldTypeDouble-Feld in einem Feature-Service.

Geometrie

Das geometry-Objekt ist optional. Es ist erforderlich, wenn ein Dataset eine räumliche Darstellung wie einen Punkt, eine Polylinie oder ein Polygon aufweist.

SyntaxBeispiel
"geometry" : {
 "geometryType" : "< esriGeometryType >",
 "spatialReference" : {
  "wkid": <wkidNum>,
  "latestwkid" : <latestWkidNum>
  },
 "fields": [
 {
  "name": "<fieldName1>",
  "formats": ["<fieldFormat1>"]
 },
 {
  "name": "<fieldName2>",
  "formats": ["<fieldFormat2>"]
 }
 ]
}

Beispiel für die Verwendung einer durch Trennzeichen getrennten Datei mit X- und Y-Werten:

"geometry" : {
 "geometryType" : "esriGeometryPoint",
 "spatialReference" : {
  "wkid": 3857
 },
 "fields": [
 {
  "name": "XValue",
  "formats": ["x"]
 },
 {
  "name": "YValue",
  "formats": ["y"]
 }
 ]
}

Beispiel für die Verwendung einer durch Trennzeichen getrennten Datei mit X-, Y- und Z-Werten:

"geometry" : {
 "geometryType" : "esriGeometryPoint",
 "spatialReference" : {
  "wkid": 4326
 },
 "fields": [
 {
  "name": "Longitude",
  "formats": ["x"]
 },
 {
  "name": "Latitude",
  "formats": ["y"]
 },
 {
  "name": "Height",
  "formats": ["z"]
 }
 ]
}

Beispiel für die Verwendung einer .tsv-Datei:

"geometry" : {
 "geometryType" : "esriGeometryPolygon",
 "dropSourceFields": true,
 "spatialReference" : {
  "wkid": 3857
 },
 "fields": [
 {
  "name": "Shapelocation",
  "formats": ["WKT"]
 }
 ]
}

Beschreibung

Hinweis:

Da das geometry-Objekt optional ist, sind die folgenden Eigenschaften als erforderlich oder optional aufgeführt, wobei vorausgesetzt wird, dass eine Geometrie verwendet wird:

  • geometryType: Dies ist erforderlich. Die folgenden Optionen sind verfügbar:
    • esriGeometryPoint
    • esriGeometryPolyline
    • esriGeometryPolygon
  • spatialReference: Eine erforderliche Eigenschaft, die den Raumbezug des Datasets angibt.
    • wkid: Ein Feld, das den Raumbezug angibt, wobei wkid oder latestWkid für ein Dataset mit einer Geometrie erforderlich ist.
    • latestWkid: Ein Feld, das den Raumbezug in einer bestimmten Softwareversion angibt, wobei wkid oder latestWkid für ein Dataset mit Geometrie erforderlich ist.
  • fields: Eine erforderliche Eigenschaft für durch Trennzeichen getrennte Datasets mit einer räumlichen Darstellung. Gibt den/die Feldnamen und die Formate der Geometrie an.
    • name: Eine erforderliche Eigenschaft für durch Trennzeichen getrennte Datasets mit einer räumlichen Darstellung. Dies gibt den Namen des Feldes an, das zur Darstellung der Geometrie verwendet wird. Hiervon können mehrere Instanzen vorhanden sein.
    • formats: Eine erforderliche Eigenschaft für durch Trennzeichen getrennte Datasets mit einer räumlichen Darstellung. Dies gibt das Format des Feldes an, das zur Darstellung der Geometrie verwendet wird. Hiervon können mehrere Instanzen vorhanden sein.
  • dropSourceFields: Eine optionale Eigenschaft für Datasets mit Feldern, die die Geometrie darstellen. Sie gibt an, ob die Felder zur Angabe der Geometrie auch als Felder in der Analyse verwendet werden sollen. "True" bedeutet, dass die Felder für die Geometrie nicht als Analysefelder (z. B. Summenstatistiken) sichtbar sind und bei der Ausführung von Werkzeugen übergangen werden. Der Standardwert ist "false". Für Shapefile-Datasets kann diese Eigenschaft nicht festgelegt werden.

Zeit

Das time-Objekt ist optional. Dies ist erforderlich, wenn ein Dataset eine zeitliche Darstellung aufweist.

SyntaxBeispiel
"time" : {
 "timeType" : "< instant | interval >",
 "timeReference" : {
  "timeZone" : "<timeZone >"
  },
  "fields": [
  {
   "name": "<fieldName1>",
   "formats": ["<fieldFormat1>"]
   "role": "< start | end >"
  }
 ]
}

Beispiel für die Verwendung einer Instanz mit mehreren Formaten in den Zeitfeldern:

"time": {
 "timeType": "instant",
 "timeReference": {"timeZone": "UTC"},
 "fields": [
 {
  "name": "iso_time",
  "formats": [
   "yyyy-MM-dd HH:mm:ss",
   "MM/dd/yyyy HH:mm"
   ]
  }
 ]
}

Beispiel für die Verwendung eines Intervalls mit mehreren Feldern für startTime:

"time": {
 "timeType": "interval",
 "timeReference": {"timeZone": "-0900"},
 "dropSourceFields" : true,
 "fields": [
 {
  "name": "time_start",
  "formats": ["HH:mm:ss"],
  "role" : "start"
  },
 {
  "name": "date_start",
  "formats": ["yyyy-MM-dd"],
  "role" : "start"
  },
 {
  "name": "datetime_ending",
  "formats": ["yyyy-MM-dd HH:mm:ss"],
  "role" : "end"
  }
 ]
}

Beschreibung

Hinweis:

Da das time-Objekt optional ist, sind die folgenden Eigenschaften als erforderlich oder optional aufgeführt, wobei vorausgesetzt wird, dass time verwendet wird:

  • timeType: Der Zeittyp ist erforderlich, wenn das Dataset Zeitangaben enthält. Die folgenden Optionen sind verfügbar:
    • instant: Für einen einzelnen Zeitpunkt.
    • interval: Für ein Zeitintervall, das durch eine Start- und Endzeit dargestellt wird.
  • timeReference: Ein erforderliches Feld (wenn das Dataset zeitaktiviert ist), das die Zeitzone angibt (timeZone).
    • timeZone: Ein erforderliches Feld von timeReference, das das Zeitzonenformat der Daten angibt. Zeitzonen basieren auf Joda-Time. Weitere Informationen über die Joda-Time-Formate finden Sie unter Joda-Time Available Time Zones. timeZone kann wie folgt formatiert werden:
      • Unter Verwendung des vollständigen Namens der Zeitzone: Pacific Standard Time.
      • Der Zeitzonenversatz, ausgedrückt in Stunden: -0100 oder -01:00.
      • Abkürzungen können nur für UTC und GMT verwendet werden; in allen anderen Fällen wird der vollständige Name der Zeitzone oder der Versatz in Stunden genannt.
  • fields: Ein erforderliches Feld für die Feldnamen und -formate der Zeitangabe. Die folgenden Eigenschaften von fields sind erforderlich:
    • name: Ein erforderliches Feld, das den Namen des Feldes zur Darstellung der Zeit angibt. Dieses Objekt kann mehrmals vorhanden sein.
    • formats: Ein erforderliches Feld, das das Format des Feldes zur Darstellung der Zeit angibt. Es können mehrere Formate für ein einzelnes Feld vorhanden sein (wie oben dargestellt). Dieses Objekt kann mehrmals vorhanden sein. Informationen zum Formatieren von Feldern finden Sie unter Zeitformate.
    • role: Ein erforderliches Feld, wenn timeType interval entspricht. Kann die startTime oder die endTime eines Zeitintervalls darstellen.
  • dropSourceFields: Eine optionale Eigenschaft für Datasets mit Feldern, die die Zeit darstellen. Sie gibt an, ob die Felder zur Angabe der Zeit auch als Felder in der Analyse verwendet werden sollen. "True" bedeutet, dass die Felder für die Zeit nicht als Analysefelder (z. B. Summenstatistiken) sichtbar sind und bei der Ausführung von Werkzeugen übergangen werden. Der Standardwert ist "false".