Veri kümesi oluşturma iki adımlı bir işlemdir:
Veri kümesini oluşturma isteğinde bulunun.
Veri kümesine veri yükleme isteğinde bulunun.
İlk veri yükleme işleminden sonra, veri kümesine yeni veriler yükleyerek yeni bir sürüm oluşturabilirsiniz.
Ön koşullar
Veri kümesi oluştururken:
- Görünen adlar, Google Cloud projenizde benzersiz olmalıdır.
- Görünen adlar 64 bayttan küçük olmalıdır (Bu karakterler UTF-8'de temsil edildiğinden, bazı dillerde her karakter birden çok baytla temsil edilebilir).
- Açıklamalar 1.000 bayttan küçük olmalıdır.
Veri yüklerken:
- Desteklenen dosya türleri CSV, GeoJSON ve KML'dir.
- Desteklenen maksimum dosya boyutu 350 MB'tır.
- Özellik sütunu adları "?_" dizesiyle başlayamaz.
- Üç boyutlu geometriler desteklenmez. Buna "Z" dahildir WKT biçiminde son ek, ve rakım koordinatı, GeoJSON biçimindedir.
Veri hazırlamayla ilgili en iyi uygulamalar
Yoğun noktalar, uzun çizgi dizeleri veya poligonlar gibi kaynak verileriniz karmaşık veya büyükse (genellikle 50 MB'tan büyük kaynak dosya boyutları bu kategoriye girer). Verilerinizi basitleştirmeyi düşünün. görsel haritada en iyi performansı elde etmek için yüklemeden önce bakın.
Verilerinizi hazırlamaya yönelik en iyi uygulamalardan bazıları şunlardır:
- Özellik özelliklerini en aza indirin. Yalnızca stil belirlemek için gereken özellik özelliklerini koru haritanız (ör. "id") ve "category". Bir istemcideki özelliğin ek mülklerini ekleyebilirsiniz benzersiz tanımlayıcı anahtarında veriye dayalı stiller kullanan bir uygulamadır. Örneğin, bkz. Veriye dayalı stil ile verilerinizi gerçek zamanlı olarak görün.
- Mümkün olduğunda tamsayılar, kullanarak karo boyutunu küçültün ve harita performansını artırın.
- Bir dosya yüklemeden önce karmaşık geometrileri basitleştirin. Bu işlemi seçtiğiniz jeo-uzamsal araç (ör. açık kaynak Mapshaper.org yardımcı programını kullanarak veya ST_Simplify geometrik şekiller ve grafiklerdir.
- Bir dosya yüklemeden önce çok yoğun noktaları kümeleyin. Bu işlemi seçtiğiniz jeo-uzamsal araç (ör. açık kaynak turf.js küme işlevleri olarak veya BigQuery'de ST_CLUSTERDBSCAN kullanılarak GeoX çalışması yapmaya karar verdi.
Veri kümeleriyle ilgili en iyi uygulamalar hakkında daha fazla bilgi için Veri kümeleri ve BigQuery ile verilerinizi görselleştirin.
GeoJSON gereksinimleri
Maps Datasets API, mevcut GeoJSON spesifikasyonu. Maps Datasets API, aşağıdaki nesne türlerinden herhangi birini içeren GeoJSON dosyalarını da destekler:
- Geometri nesneleri. Geometri nesnesi, birleşim olarak tanımlanan mekansal bir şekildir noktaların, çizgilerin ve poligonların sayısını gösterir.
- Nesneleri öne çıkarın. Özellik nesnesi bir geometri ve buna ek olarak (anlamı uygulamaya özgü olan ad/değer çiftleri).
- Özellik koleksiyonları. Özellik koleksiyonu, özellik nesnelerinden oluşan bir gruptur.
Haritalar Veri Kümeleri API'si, koordinat referans sisteminde veri içeren GeoJSON dosyalarını desteklemez WGS84 dışında (CRS) kullanmayın.
GeoJSON hakkında daha fazla bilgi için bkz. RFC 7946 uyumlu.
KML gereksinimleri
Haritalar Veri Kümeleri API'si aşağıdaki şartlara sahiptir:
- Tüm URL'ler, dosyanın kendisinde yerel (veya göreli) olmalıdır.
- Nokta, çizgi ve poligon geometrileri desteklenir.
- Tüm veri özellikleri dize olarak kabul edilir.
- Dosyanın dışında tanımlanmış simgeler veya
<styleUrl>
. - Ağ bağlantıları, ör.
<NetworkLink>
<GroundOverlay>
gibi zemin bindirmeler- 3D geometriler veya
<altitudeMode>
gibi rakımla ilgili etiketler - Kamera özellikleri (ör.
<LookAt>
) - KML dosyasında tanımlanan stiller.
CSV koşulları
CSV dosyaları için, desteklenen sütun adları öncelik sırasına göre aşağıda listelenmiştir:
latitude
,longitude
lat
,long
x
,y
wkt
(İyi Bilinen Metin)address
,city
,state
,zip
address
- Tüm adres bilgilerini içeren tek bir sütun, örneğin
1600 Amphitheatre Parkway Mountain View, CA 94043
.
Örneğin, dosyanız x
, y
ve wkt
adlı sütunlar içeriyor.
x
ve y
, tarama sırasına göre daha yüksek bir önceliğe sahip olduğu için
desteklenen sütun adları şunlardır: x
ve y
sütunlarındaki değerler
kullanılır ve wkt
sütunu yoksayılır.
Ayrıca:
- Her sütun adı tek bir sütuna ait olmalıdır. Diğer bir deyişle,
Hem x hem de y koordinat verilerini içeren
xy
. x ve y koordinatlarının içinde olmalıdır ayrı sütunlar oluşturabilirsiniz. - Sütun adları büyük/küçük harfe duyarlı değildir.
- Sütun adlarının sırası önemli değildir. Örneğin, CSV dosyanız
lat
velong
sütunları herhangi bir sırada olabilir.
Veri yükleme hatalarını işleme
Bir veri kümesine veri yüklerken, bu makalede açıklanan yaygın hatalardan biriyle karşılaşabilirsiniz: bölümüne bakın.
GeoJSON hataları
Yaygın GeoJSON hataları şunlardır:
type
alanı eksik veyatype
bir dize değil. Yüklenen GeoJSON veri dosyası, her bir değerin parçası olaraktype
adlı bir dize alanı içermelidir Özellik nesnesi ve Geometri nesne tanımı.
KML hataları
Yaygın KML hataları şunlardır:
- Veri dosyası yukarıda listelenen desteklenmeyen KML özelliklerinin hiçbirini içermemelidir, aksi takdirde veri içe aktarma işlemi başarısız olabilir.
CSV hataları
Sık karşılaşılan CSV hataları şunlardır:
- Bazı satırlarda bir geometri sütunu için değer eksik. CSV dosyasındaki tüm satırlar şunları içermelidir:
boş olmayan değerleri girin. Geometri sütunları şunları içerir:
latitude
,longitude
lat
,long
x
,y
wkt
address
,city
,state
,zip
address
- Tüm adres bilgilerini içeren tek bir sütun, örneğin
1600 Amphitheatre Parkway Mountain View, CA 94043
.
- Geometri sütunlarınız
x
vey
ise birimlerin boylam ve enlem. Bazı herkese açık veri kümeleri, başlıkların altında farklı koordinat sistemleri kullanır.x
vey
. Yanlış birimler kullanılırsa veri kümesi içe aktarılabilir başarılı bir şekilde çalışır, ancak oluşturulan veriler beklenmedik konumlardaki veri kümesi noktalarını gösterebilir.
Veri kümesini oluşturma
Veri kümesi oluşturmak içinPOST
veri kümeleri uç noktası:
https://mapsplatformdatasets.googleapis.com/v1/projects/PROJECT_NUMBER_OR_ID/datasets
JSON gövdesi iletme isteğe bağlı olarak kullanırız. Bu politika uyarınca:
Veri kümesinin
displayName
öğesini belirtin.displayName
değeri tüm veri kümeleri için benzersiz olmalıdır.usage
değeriniUSAGE_DATA_DRIVEN_STYLING
olarak ayarlayın.
Örneğin:
curl -X POST -d '{ "displayName": "My Test Dataset", "usage": "USAGE_DATA_DRIVEN_STYLING" }' \ -H 'X-Goog-User-Project: PROJECT_NUMBER_OR_ID' \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer $TOKEN" \ https://mapsplatformdatasets.googleapis.com/v1/projects/PROJECT_NUMBER_OR_ID/datasets
Yanıt, veri kümesinin kimliğini şu biçimde içerir:
projects/PROJECT_NUMBER_OR_ID/datasets/DATASET_ID
.
ek bilgilerle birlikte gönderebilirsiniz. Veri kümesi kimliğini kullanarak
veri kümesini güncelleyebilir veya değiştirebilir.
{ "name": "projects/PROJECT_NUMBER_OR_ID/datasets/f57074a0-a8b6-403e-9df1-e9fc46", "displayName": "My Test Dataset", "usage": [ "USAGE_DATA_DRIVEN_STYLING" ], "createTime": "2022-08-15T17:50:00.189682Z", "updateTime": "2022-08-15T17:50:00.189682Z" }
Veri kümesine veri yükleme
Veri kümesini oluşturduktan sonra Google Cloud Storage veya yerel bir dosyadan veri kümesine eklenir.
Cloud Storage'dan veri yükleme
Cloud Storage'dan veri kümenize veri kümesine POST
isteği göndererek
veri kümeleri uç noktası da
veri kümesinin kimliğini içerir:
https://mapsplatformdatasets.googleapis.com/v1/projects/PROJECT_NUMBER_OR_ID/datasets/DATASET_ID:import
JSON istek gövdesinde:
Verileri içeren kaynağın dosya yolunu belirtmek için
inputUri
değerini kullanın . Bu yol,gs://GCS_BUCKET/FILE
İstekte bulunan kullanıcı için Storage Nesnesi Görüntüleyen rolü veya
storage.objects.get
iznini içeren başka bir rol. Örneğin, Cloud Storage'a erişimi yönetme hakkında daha fazla bilgi için bkz. Erişim denetimine genel bakış.Verilerin dosya biçimini aşağıdaki şekilde belirtmek için
fileFormat
kullanın:FILE_FORMAT_GEOJSON
(GeoJson dosyası),FILE_FORMAT_KML
(KML dosyası) veyaFILE_FORMAT_CSV
(CSV dosyası).
Örneğin:
curl -X POST -d '{ "gcs_source":{ "inputUri": "gs://my_bucket/my_csv_file", "fileFormat": "FILE_FORMAT_CSV" } }' \ -H 'X-Goog-User-Project: PROJECT_NUMBER_OR_ID' \ -H "content-type: application/json" \ -H "Authorization: Bearer $TOKEN" \ https://mapsplatformdatasets.googleapis.com/v1/projects/PROJECT_NUMBER_OR_ID/datasets/f57074a0-a8b6-403e-9df1-e9fc46:import
Yanıt şu biçimdedir:
{ "name": "projects/PROJECT_NUMBER_OR_ID/datasets/DATASET_ID@VERSION_NUMBER" }
Dosyadan veri yükleme
Bir dosyadan veri yüklemek için şuraya HTTP POST
isteği gönderin
veri kümeleri uç noktası da
veri kümesinin kimliğini içerir:
https://mapsplatformdatasets.googleapis.com/upload/v1/projects/PROJECT_NUMBER_OR_ID/datasets/DATASET_ID:import.
İstek şunları içeriyor:
Goog-Upload-Protocol
başlığımultipart
olarak ayarlandı.metadata
özelliği, Yüklenecek verilerin türü. Bunlar şunlardan biridir:FILE_FORMAT_GEOJSON
(GeoJSON dosyası),FILE_FORMAT_KML
(KML dosyası) veyaFILE_FORMAT_CSV
(CSV dosyası).Bu dosyanın içeriği aşağıdaki biçimdedir:
{"local_file_source": {"file_format": "FILE_FORMAT_GEOJSON"}}
GeoJSON, KML veya CSV dosyasının yolunu belirten
rawdata
özelliği ekleyebilirsiniz.
Aşağıdaki istekte, iki öğenin yolunu belirtmek için curl -F
seçeneği kullanılmaktadır
dosyalar:
curl -X POST \ -H 'X-Goog-User-Project: PROJECT_NUMBER_OR_ID' \ -H "Authorization: Bearer $TOKEN" \ -H "X-Goog-Upload-Protocol: multipart" \ -F "metadata=@csv_metadata_file" \ -F "rawdata=@csv_data_file" \ https://mapsplatformdatasets.googleapis.com/upload/v1/projects/PROJECT_NUMBER_OR_ID/datasets/f57074a0-a8b6-403e-9df1-e9fc46:import
Yanıt şu biçimdedir:
{ "name": "projects/PROJECT_NUMBER_OR_ID/datasets/DATASET_ID@VERSION_NUMBER" }
Veri kümesine yeni veri yükleme
Veri kümesini oluşturup ilk verileri başarıyla yükledikten sonra, durum
veri kümesinin yüzdesi STATE_COMPLETED
olarak ayarlandı. Bu, veri kümesinin
elde edersiniz. Veri kümesinin state
değerini belirlemek için
veri kümesi bulunmalıdır.
Ayrıca, veri kümesine yeni veriler yükleyerek veri kümesiyle eşleştirilir. Yeni veri yüklemek için Veri yükleme işlemini izleyerek yeni verileri yükleyin. Cloud Storage'dan veya Bir dosyadan veri yükleyin, ve yüklenecek yeni verileri belirtin.
Yeni veriler başarıyla yüklenirse:
Veri kümesinin yeni sürümünün durumu
STATE_COMPLETED
olarak ayarlanır.Yeni sürüm "etkin" hale gelir sürümünü temsil eder ve uygulamasını indirin.
Yükleme işleminde hata varsa:
Yeni veri kümesi sürümünün durumu, aşağıdaki durumlardan birine ayarlanır:
STATE_IMPORT_FAILED
STATE_PROCESSING_FAILED
STATE_PUBLISHING_FAILED
STATE_DELETION_FAILED
Önceki veri kümesinin başarılı sürümü "etkin" olarak kalır ve uygulamanızın kullandığı sürüm.