Skip To Content

Informazioni sul file Big Data Manifest di condivisione

Le condivisioni file Big Data vengono registrate come Data Store tramite ArcGIS Server Manager. Richiedono un Manifets per delineare lo schema dei dati e i campi che rappresentano geometria e tempo in un dataset. Il Manifest viene generato automaticamente quando si registra una condivisione file Big Data, ma è necessario apportare delle modifiche se i dati variano o se la generazione del Manifest non ha potuto determinare tutte le informazioni necessarie, (ad esempio se nel Manifest generato automaticamente non era stato selezionato il campo esatto per la geometria o il tempo).

Nota:

La modifica della condivisione file Big Data è un'opzione avanzata. Per ulteriori informazioni sull'applicazione di modifiche ai singoli dataset nel Manifest, consultare Modificare i Manifest delle condivisioni file Big Data in Manager. Per ulteriori informazioni sull'applicazione di un file dei suggerimenti per i file delimitati, consultare Informazioni sul file dei suggerimenti.

Il Manifest è costituito da dataset. Il numero di dataset dipende dal numero di cartelle contenute dalla condivisione file Big Data. Nell'esempio seguente, ci sono cinque dataset:

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

All'interno di ogni dataset, ci sono cinque oggetti di livello superiore applicabili. Di questi oggetti, name, format e schema sono obbligatori.

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

Nome

L'oggetto name è obbligatorio e definisce il nome del dataset. Deve essere univoco nel Manifest.

Formato

L’oggetto format è obbligatorio e definisce il tipo di dataset e il relativo formato.

SintassiQuesta funzione è stata aggiunta a partire da 10.1.
"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 >"
}

Esempio di utilizzo di uno shapefile:

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

Esempio di utilizzo di un file delimitato:

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

Descrizione

  • type: una proprietà obbligatoria che definisce i dati di origine. Può essere delimited, shapefile, parquet o orc.
  • extension: una proprietà obbligatoria che indica l'estensione del file. Per shapefile, è shp, mentre i file delimitati utilizzano l’estensione del file dei dati (ad esempio, csv o tsv), i file ORC utilizzano orc e i file parquet utilizzano parquet.
  • fieldDelimiter: obbligatoria quando type è delimited. Questo campo rappresenta ciò che separa i campi nel file delimitato.
  • recordTerminator: obbligatoria solo quando type è delimited. Questo campo specifica ciò che termina le feature nel file delimitato.
  • quoteChar: obbligatoria solo quando type è delimited. Il carattere definisce come le virgolette vengono specificate nel file delimitato.
  • hasHeaderRow: obbligatoria solo quando type è delimited. Questa proprietà specifica se la prima riga in un file delimitato deve essere considerata come intestazione o come prima feature.
  • encoding: obbligatoria solo quando type è delimited. Questa proprietà specifica il tipo di codifica utilizzata.

Schema

L’oggetto schema è obbligatorio; definisce i campi di dataset e il tipo di campo.

SintassiQuesta funzione è stata aggiunta a partire da 10.1.
"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"
  }
 ]
}

Descrizione

  • fields: una proprietà obbligatoria che definisce i campi nello schema.
  • name: una proprietà obbligatoria che indica il nome del campo. Il nome del campo deve essere univoco nel dataset e può contenere solo caratteri alfanumerici e di sottolineatura.
  • type: una proprietà obbligatoria che definisce il tipo di campo. Le opzioni includono le seguenti:
    • esriFieldTypeString: per stringhe
    • esriFieldTypeDouble: per valori doppi o mobili
    • esriFieldTypeBigInteger: per valori interi
    • esriFieldTypeDate: per shapefile con campi data. I dataset delimitati, ORC Dataset e Parquet Dataset, con campi che rappresentano la data devono avere le date rappresentate da un campo esriFieldTypeString.

Geometria

L'oggetto geometry è facoltativo. È obbligatorio se un dataset ha una rappresentazione spaziale come un punto, una polilinea o un poligono.

SintassiQuesta funzione è stata aggiunta a partire da 10.1.
"geometry" : {
 "geometryType" : "< esriGeometryType >",
 "spatialReference" : {
  "wkid": <wkidNum>,
  "latestwkid" : <latestWkidNum>
  },
 "fields": [
 {
  "name": "<fieldName1>",
  "formats": ["<fieldFormat1>"]
 },
 {
  "name": "<fieldName2>",
  "formats": ["<fieldFormat2>"]
 }
 ]
}

Esempio utilizzando un file delimitato con valori x e y:

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

Esempio utilizzando un file delimitato con valori x, y e z:

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

Esempio di utilizzo di un file .tsv:

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

Descrizione

Nota:

Dal momento che l’oggetto geometry è facoltativo, le seguenti proprietà sono obbligatorie o facoltative presupponendo che è utilizzata una geometria.

  • geometryType: è obbligatoria. Le opzioni includono le seguenti:
    • esriGeometryPoint
    • esriGeometryPolyline
    • esriGeometryPolygon
  • spatialReference: una proprietà obbligatoria che indica il riferimento spaziale del dataset.
    • wkid: un campo che indica il riferimento spaziale, in cui wkid o latestWkid è obbligatoria per un dataset con una geometria.
    • latestWkid: un campo che indica il riferimento spaziale in una determinata versione di software, in cui wkid o latestWkid è obbligatoria per un dataset con una geometria.
  • fields: una proprietà obbligatoria per dataset delimitati con una rappresentazione spaziale. Indica il nome del campo o i nomi e i formati della geometria.
    • name: una proprietà obbligatoria per dataset delimitati con una rappresentazione spaziale. Indica il nome del campo utilizzato per rappresentare la geometria. Potrebbero esserci istanze multiple.
    • formats: una proprietà obbligatoria per dataset delimitati con una rappresentazione spaziale. Indica il formato del campo utilizzato per rappresentare la geometria. Potrebbero esserci istanze multiple.
  • dropSourceFields: una proprietà opzionale per dataset con campi rappresentanti la geometria. Questo denota se i campi utilizzati per specificare la geometria saranno utilizzati come campi nell’analisi. Se impostato su “True”, i campi utilizzati per la geometria non saranno visibili come campi di analisi (come le statistiche di riepilogo) e verranno tralasciati durante l’esecuzione degli strumenti. Il valore predefinito è False. Questa proprietà non può essere impostata su dataset shapefile.

Tempo

L'oggetto time è facoltativo. Obbligatorio se un dataset ha una rappresentazione temporale.

SintassiQuesta funzione è stata aggiunta a partire da 10.1.
"time" : {
 "timeType" : "< instant | interval >",
 "timeReference" : {
  "timeZone" : "<timeZone >"
  },
  "fields": [
  {
   "name": "<fieldName1>",
   "formats": ["<fieldFormat1>"]
   "role": "< start | end >"
  }
 ]
}

Esempio di utilizzo di un istante con più formati nei campi del tempo:

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

Esempio di utilizzo di un intervallo con più campi utilizzati per 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"
  }
 ]
}

Descrizione

Nota:

Dal momento che l’oggetto time è facoltativo, le seguenti proprietà sono obbligatorie o facoltative presupponendo l’uso di time.

  • timeType: il tipo di tempo è obbligatorio se nel dataset è incluso il tempo. Le opzioni includono le seguenti:
    • instant: per un singolo momento di tempo
    • interval: per un intervallo di tempo rappresentato da un tempo di inizio e uno di fine
  • timeReference: un campo obbligatorio se il dataset è abilitato per variazioni temporali, indicando il fuso orario (timeZone).
    • timeZone: un campo obbligatorio di timeReference che indica il formato del fuso orario dei dati. I fusi orari si basano su Joda-Time. Per informazioni sui formati Joda-Time, consultare Fusi orari disponibili in Joda-Time. timeZone può essere formattato come mostrato di seguito:
      • Utilizzo del nome completo del fuso orario: Pacific Standard Time
      • Utilizzo dell’offset del fuso orario espresso in ore:-0100 o -01:00.
      • È possibile utilizzare abbreviazioni per i fusi orari solamente per UTC o GMT; altrimenti, utilizzare il nome completo o l’offset orario.
  • fields: un campo obbligatorio che indica i nomi dei campi e i formati del tempo. Le proprietà obbligatoria di fields sono le seguenti:
    • name: un campo obbligatorio che indica il nome del campo utilizzato per rappresentare il tempo. Potrebbero esserci istanze multiple di questo oggetto.
    • formats: un campo obbligatorio che indica il formato del campo utilizzato per rappresentare il tempo. Potrebbero esserci formati multipli per un singolo campo (come indicato sopra). Potrebbero esserci istanze multiple di questo oggetto. Per ulteriori informazioni sulla formattazione dei campi, consultare Formati del tempo nel Manifest di una condivisione file Big Data.
    • role: un campo obbligatorio quando timeType è interval. Può rappresentare sia la proprietà startTime che endTime di un intervallo di tempo.
  • dropSourceFields: una proprietà opzionale per dataset con campi rappresentanti il tempo. Questo denota se i campi utilizzati per specificare il tempo saranno utilizzati come campi nell’analisi. Se impostato su “True”, i campi utilizzati per il tempo non saranno visibili come campi di analisi (come le statistiche di riepilogo) e verranno tralasciati durante l’esecuzione degli strumenti. Il valore predefinito è "False".

In questo argomento
  1. Nome
  2. Formato
  3. Schema
  4. Geometria
  5. Tempo