Skip To Content

ビッグ データ ファイル共有のマニフェスト

注意:

ArcGIS Enterprise 10.9.1 以降では、ArcGIS Server Manager ではなく、ポータルのコンテンツ ページを介してビッグ データ ファイル共有の追加または編集を行うことを推奨します。

ポータルでのビッグ データ ファイル共有の詳細

ビッグ データ ファイル共有は、ポータルのコンテンツ ページを介して、データ ストアとして登録されます。 ビッグ データ ファイル共有は、マニフェストによって、データのスキーマの概略およびデータセット内のジオメトリと時間を表現するフィールドの概略が記述される必要があります。 ビッグ データ ファイル共有を登録するとマニフェストが自動的に生成されますが、データに対して変更が行われた場合や必要なすべての情報をマニフェストの生成時に決定できなかった場合 (自動生成されたマニフェストでジオメトリまたは時間に対応する正確なフィールドが選択されなかった場合など) は修正が必要とされることもあります。

注意:

マニフェストを介したビッグ データ ファイル共有の編集は、高度なオプションです。 ビッグ データ ファイル共有で個々のデータセットに変更を適用する方法の詳細については、「ポータルでのビッグ データ ファイル共有の管理」をご参照ください。 区切りファイルに対するヒント ファイルの適用については、「ヒント ファイル」をご参照ください。

マニフェストはデータセットから構成されます。 データセットの数は、ビッグ データ ファイル共有に含まれるフォルダーの数によって決まります。 次の例では、5 つのデータセットが記述されています。

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

各データセットの内部には、適用可能な 5 つの最上位オブジェクトが存在します。 これらのオブジェクトのうち、nameformat、および schema は必須です。

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

名前

name オブジェクトは必須であり、データセットの名前を定義します。 これはマニフェスト内で一意である必要があります。

フォーマット

format オブジェクトは必須であり、データセットのタイプとその形式を定義します。

構文
"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 >"
}

シェープファイルを使用した例:

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

区切りファイルを使用した例:

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

説明

  • type - ソース データを定義する必須プロパティ。 delimitedshapefileparquet、または orc のいずれかです。
  • extension - ファイル拡張子を示す必須プロパティ。 シェープファイルでは、shp になり、区切りファイルではデータのファイル拡張子 (csvtsv など)、ORC ファイルでは orc、Parquet ファイルでは parquet が使用されます。
  • fieldDelimiter - typedelimited の場合は必須です。 このフィールドは、区切りファイルでのフィールドの区切り文字を表します。
  • recordTerminator - typedelimited の場合にのみ必須です。 このフィールドは、区切りファイルでのフィーチャの終了文字列を指定します。
  • quoteChar - typedelimited の場合にのみ必須です。 この文字は、区切りファイルでの引用符に使用する文字列を表します。
  • hasHeaderRow - typedelimited の場合にのみ必須です。 このプロパティは、区切りファイルの最初の行をヘッダーとして扱うか、最初のフィーチャとして扱うかを指定します。
  • encoding - typedelimited の場合にのみ必須です。 このプロパティは、使用されるエンコーディングのタイプを指定します。

schema (スキーマ)

schema オブジェクトは必須であり、データセットのフィールドとフィールド タイプを定義します。

構文
"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"
  }
 ]
}

説明

  • fields - スキーマのフィールドを定義する必須プロパティ。
  • name - フィールド名を示す必須プロパティ。 フィールド名はデータセットで一意である必要があり、英数字とアンダースコアのみで構成される必要があります。
  • type - フィールドのタイプを定義する必須プロパティです。 次のようなオプションがあります。
    • esriFieldTypeInteger - 整数。
    • esriFieldTypeSmallInteger - 整数。
    • esriFieldTypeBigInteger - 整数。 多倍長整数フィールドは、フィーチャ サービスに double フィールドとして格納されます。
    • esriFieldTypeString - 文字列。
    • esriFieldTypeDouble - 倍精度または浮動小数点。
    • esriFieldTypeDate - 日付フィールドを含むシェープファイル用。 日付を表すフィールドを含む区切りデータセット、ORC データセット、Parquet データセットには、esriFieldTypeString フィールドで表される日付が必要です。
    • esriFieldTypeSingle - 単精度。
    • esriFieldTypeBlob - バイナリ値。 BLOB フィールドは、フィーチャ サービスに文字列フィールドとして格納されます。
注意:

ビッグ データ ファイル共有が GeoAnalytics Toolsによって解析され、フィーチャ サービスとして保存されると、タイプが変わる可能性があります。 たとえば、ビッグ データ ファイル共有の esriFieldTypeBigInteger は、フィーチャ サービスでは esriFieldTypeDouble フィールドになります。

ジオメトリ

geometry オブジェクトはオプションです。 ポイント、ポリライン、ポリゴンなど、空間的な表現がデータセットに含まれている場合は必須です。

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

X および Y 値を含む区切りファイルを使用した例:

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

X、Y、および Z 値を含む区切りファイルを使用した例:

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

*.tsv ファイルを使用した例:

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

説明

注意:

geometry オブジェクトはオプションであるため、次に示すプロパティは、ジオメトリが使用されていることを前提として、必須またはオプションと示されています。

  • geometryType - これは必須です。 次のようなオプションがあります。
    • esriGeometryPoint
    • esriGeometryPolyline
    • esriGeometryPolygon
  • spatialReference - データセットの空間参照を示す必須プロパティ。
    • wkid - 空間参照を示すフィールド。ジオメトリを含むデータセットの場合、wkid または latestWkid は必須です。
    • latestWkid - 指定のソフトウェア リリースで空間参照を示すフィールド。ジオメトリを含むデータセットの場合、wkid または latestWkid は必須です。
  • fields - 空間的な表現を含む区切りデータセットの必須プロパティ。 フィールド名またはジオメトリの名前と形式を示します。
    • name - 空間的な表現を含む区切りデータセットの必須プロパティ。 ジオメトリの表現に使用されるフィールドの名前を示します。 このプロパティのインスタンスは複数存在することがあります。
    • formats - 空間的な表現を含む区切りデータセットの必須プロパティ。 ジオメトリの表現に使用されるフィールドの形式を示します。 このプロパティのインスタンスは複数存在することがあります。
  • dropSourceFields - ジオメトリを表すフィールドを含むデータセットのオプションのプロパティです。 これは、ジオメトリを指定するために使用されるフィールドが、解析でフィールドとして使用されるかどうかを示します。 これを True に設定した場合、ジオメトリに使用されるフィールドは、(統計情報のサマリーのように) 解析フィールドとして表示されず、ツールの実行時に削除されます。 デフォルトは false です。 このプロパティは、シェープファイル データセットでは設定できません。

時間

time オブジェクトはオプションです。 時間的な表現がデータセットに含まれている場合は必須です。

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

時間フィールドに複数の形式でインスタント (instant) を使用した例:

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

startTime に複数のフィールドを使用して間隔 (interval) を使用した例:

"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"
  }
 ]
}

説明

注意:

time オブジェクトはオプションであるため、次に示すプロパティは、time が使用されていることを前提として、必須またはオプションと示されています。

  • timeType - データセットに時間が含まれている場合、時間タイプは必須です。 次のようなオプションがあります。
    • instant - 一瞬の時間
    • interval - 開始時間と終了時間で表される時間間隔
  • timeReference -データセットが時間対応である場合に、タイム ゾーン (timeZone) を示す必須フィールド。
    • timeZone - データのタイム ゾーン形式を示す、timeReference の必須フィールド。 タイム ゾーンは、Joda-Time に基づきます。 Joda-Time 形式の詳細については、「Joda-Time の利用可能なタイム ゾーン」をご参照ください。 timeZone は、次のような形式をとります。
      • タイム ゾーンの完全名を使用: Pacific Standard Time
      • タイムゾーンのオフセット (時) を使用: -0100 または -01:00
      • UTC または GMT の場合にのみ、タイムゾーンの略語を使用できます。それ以外の場合は、完全名または時間のオフセットを使用します。
  • fields - 時間のフィールド名と形式を示す必須フィールド。 fields には次の必須プロパティがあります。
    • name - 時間の表現に使用されるフィールドの名前を示す必須フィールド。 このオブジェクトのインスタンスは複数存在することがあります。
    • formats - 時間の表現に使用されるフィールドの形式を示す必須フィールド。 1 つのフィールドで複数の形式が使用されることがあります (上記を参照)。 このオブジェクトのインスタンスは複数存在することがあります。 フィールドがどのような形式をとるかについては、「時間形式」をご参照ください。
    • role - timeTypeinterval の場合の必須フィールド。 時間間隔の startTime または endTime を表します。
  • dropSourceFields - 時間を表すフィールドを含むデータセットのオプションのプロパティです。 これは、時間を指定するために使用されるフィールドが、解析でフィールドとして使用されるかどうかを示します。 これを True に設定した場合、時間に使用されるフィールドは、(統計情報のサマリーのように) 解析フィールドとして表示されず、ツールの実行時に削除されます。 デフォルトは false です。