Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:
Databricks SQL
Databricks Runtime
H3 adalah sistem pengindeksan untuk grid global. Sistem kisi menggunakan bentuk, seperti persegi panjang atau segitiga, untuk menyusun sebuah permukaan, yang dalam hal ini adalah permukaan Bumi. Sistem H3 dirancang untuk menggunakan segi enam (dan beberapa segi lima), dan menawarkan 16 tingkat resolusi dalam hierarkinya. Pada resolusi yang lebih tinggi, bentuk tesselasi lebih kecil.
Dalam Databricks Runtime 17.0 atau lebih tinggi, ekspresi H3 didukung pada semua jenis komputasi kecuali gudang Databricks SQL klasik, termasuk kluster non-Foton.
Baca selengkapnya tentang resolusi H3, dan tentang asal-usul H3.
Lihat juga:
H3 untuk Analitik Geospasial
H3 mendukung pola umum untuk memproses dan menganalisis data spasial. Mulailah dengan mengindeks data geospasial dari format standar (garis lintang dan bujur, Teks terkenal (WKT), Biner terkenal (WKB), atau ID sel GeoJSON ke H3. Dengan satu himpunan data, Anda dapat mengagregasi menurut ID sel untuk menjawab pertanyaan berbasis lokasi. Dengan beberapa himpunan data terindeks, Anda dapat menggabungkannya menggunakan ID sel, mengungkapkan bagaimana himpunan data yang berbeda berhubungan satu sama lain. Gabungan himpunan data ini secara semantik merupakan gabungan spasial, tetapi tanpa perlu predikat spasial.
Apa manfaat menggunakan H3 dalam Databricks?
Manfaatkan fitur Delta Lake untuk penyimpanan dan tata letak data terindeks H3 Anda yang efisien. Pengklusteran cairan pada ID sel H3 memungkinkan Anda menemukan data secara spasial. Algoritma lompati data Delta Lake menggunakan kolokalitas guna mengurangi secara cerdas volume data yang perlu dibaca.
Anda memiliki fleksibilitas dalam cara Anda bekerja dengan data. Anda dapat memilih untuk bekerja dengan ID sel H3 yang disimpan sebagai bilangan bulat atau string besar. Untuk performa terbaik menggunakan ID sel H3, gunakan representasi bilangan bulat besar. Untuk penggunaan rinci ekspresi H3, lihat panduan referensi SQL.
Catatan
Anda tidak perlu menginstal pustaka H3. Ini disertakan sebagai dependensi yang terlihat dalam Databricks Runtime, dimulai dengan Databricks Runtime 11.2, menggunakan versi 3.7.0 dari pustaka Java H3.
Mengimpor fungsi Databricks untuk mendapatkan H3 (Databricks Runtime)
Tidak diperlukan impor untuk Databricks SQL dan Spark SQL.
Untuk mengimpor fungsi H3 untuk Python atau Scala di notebook, gunakan perintah berikut:
Python
from pyspark.databricks.sql import functions as dbf
Scala
import com.databricks.sql.functions._
Daftar fungsi geospasial H3 (Databricks SQL)
Impor
| Fungsi | Deskripsi |
|---|---|
| h3_coverash3(geographyExpr, resolutionExpr) | Mengembalikan ARRAY ID sel H3 (yang diwakili sebagai BIGINT) yang sesuai dengan sekumpulan segi enam atau segi lima minimal, dari resolusi yang ditentukan, yang sepenuhnya mencakup geografi linier yang dimasukkan atau area. |
| h3_coverash3string(geographyExpr, resolutionExpr) | Mengembalikan ARRAY ID sel H3 (direpresentasikan sebagai STRING) yang sesuai dengan sekumpulan segi enam atau segi lima minimal, dari resolusi yang ditentukan, yang sepenuhnya mencakup geografi linear atau areal input. |
| h3_longlatash3(longitudeExpr, latitudeExpr, resolutionExpr) | Mengembalikan ID sel H3 (sebagai BIGINT) yang sesuai dengan garis bujur dan garis lintang yang disediakan pada resolusi yang ditentukan. |
| h3_longlatash3string(longitudeExpr, latitudeExpr, resolutionExpr) | Mengembalikan ID sel H3 (sebagai STRING heksadesimal) yang sesuai dengan garis bujur dan garis lintang yang disediakan pada resolusi yang ditentukan. |
| h3_pointash3(geographyExpr, resolutionExpr) | Mengembalikan ID sel H3 (sebagai BIGINT) yang sesuai dengan titik yang disediakan pada resolusi yang ditentukan. |
| h3_pointash3string(geographyExpr, resolutionExpr) | Mengembalikan ID sel H3 (sebagai STRING) yang sesuai dengan titik yang disediakan pada resolusi yang ditentukan. |
| h3_polyfillash3(geographyExpr, resolutionExpr) | Mengembalikan ARRAY ID sel H3 (direpresentasikan sebagai BIGINT) yang sesuai dengan segi enam atau segi enam resolusi yang ditentukan yang sentroidnya terkandung dalam geografi areal input. |
| h3_polyfillash3string(geographyExpr, resolutionExpr) | Mengembalikan ARRAY ID sel H3 (direpresentasikan sebagai STRING) yang sesuai dengan segi enam atau segi enam resolusi yang ditentukan yang sentroidnya terkandung dalam geografi areal input. |
| h3_tessellateaswkb(geographyExpr, resolutionExpr) | Mengembalikan tessellasi geografi input menggunakan sel H3 pada resolusi yang ditentukan. |
| h3_try_coverash3(geographyExpr, resolutionExpr) | Mengembalikan ARRAY dari ID sel H3 (dinyatakan sebagai BIGINT) yang sesuai dengan sekumpulan minimal segi enam atau segi lima, dengan resolusi yang ditetapkan, yang sepenuhnya mencakup geografi linier atau areal yang diberikan, atau NULL jika argumen pertama tidak valid. |
| h3_try_coverash3string(geographyExpr, resolutionExpr) | Mengembalikan ARRAY ID sel H3 (direpresentasikan sebagai STRING) yang sesuai dengan sekumpulan segi enam atau segi lima minimal, dari resolusi yang ditentukan, yang sepenuhnya mencakup geografi linier atau areal dari input, atau NULL jika argumen pertama tidak valid. |
| h3_try_polyfillash3(geographyExpr, resolutionExpr) | Mengembalikan ARRAY ID sel H3 (direpresentasikan sebagai BIGINT) yang sesuai dengan segi enam atau segi enam resolusi yang ditentukan yang sentroidnya terkandung dalam geografi areal input. |
| h3_try_polyfillash3string(geographyExpr, resolutionExpr) | Mengembalikan ARRAY ID sel H3 (direpresentasikan sebagai STRING) yang sesuai dengan segi enam atau segi enam resolusi yang ditentukan yang sentroidnya terkandung dalam geografi areal input. |
| h3_try_tessellateaswkb(geographyExpr, resolutionExpr) | Menghasilkan tessellation dari geografi input menggunakan sel H3 pada resolusi yang ditentukan, atau NULL jika argumen pertama tidak valid atau fungsinya gagal menghitung tessellation. |
Ekspor
| Fungsi | Deskripsi |
|---|---|
| h3_boundaryasgeojson(h3CellIdExpr) | Menampilkan batas poligonal sel H3 input dalam format GeoJSON. |
| h3_boundaryaswkb(h3CellIdExpr) | Menampilkan batas poligonal sel H3 input dalam format WKB. |
| h3_boundaryaswkt(h3CellIdExpr) | Menampilkan batas poligonal sel H3 input dalam format WKT. |
| h3_centerasgeojson(h3CellIdExpr) | Menampilkan pusat sel H3 input sebagai titik dalam format GeoJSON. |
| h3_centeraswkb(h3CellIdExpr) | Menampilkan pusat sel H3 input sebagai titik dalam format WKB. |
| h3_centeraswkt(h3CellIdExpr) | Menampilkan pusat sel H3 input sebagai titik dalam format WKT. |
Konversi
| Fungsi | Deskripsi |
|---|---|
| h3_h3tostring(h3CellIdExpr) | Mengonversi ID sel H3 input ke representasi string heksadesimal yang setara. |
| h3_stringtoh3(h3CellIdStringExpr) | Mengonversi string input, yang diharapkan menjadi string heksadesimal yang mewakili ID sel H3, ke representasi BIGINT yang sesuai dari ID sel H3. |
Predikat
| Fungsi | Deskripsi |
|---|---|
| h3_ischildof(h3CellId1Expr, h3CellId2Expr) | Mengembalikan true jika ID sel H3 pertama sama dengan atau turunan dari ID sel H3 kedua. |
| h3_ispentagon(h3CellIdExpr) | Menampilkan true jika input BIGINT atau STRING heksadesimal sesuai dengan sel H3 pentagonal atau tidak. |
Validitas
| Fungsi | Deskripsi |
|---|---|
| h3_isvalid(expr) | Mengembalikan true jika input BIGINT atau STRING adalah ID sel H3 yang valid. |
| h3_try_validate(h3CellIdExpr) | Mengembalikan nilai input, yaitu jenis BIGINT atau STRING, jika sesuai dengan ID sel H3 yang valid, atau NULL sebaliknya. |
| h3_validate(h3CellIdExpr) | Nilai input, yang berjenis BIGINT atau STRING, dikembalikan jika sesuai dengan ID sel H3 yang valid, atau menghasilkan kesalahan sebaliknya. |
Terkait dengan Jarak
| Fungsi | Deskripsi |
|---|---|
| h3_distance(h3CellId1Expr, h3CellId2Expr) | Mengembalikan jarak grid dari dua ID sel H3 yang diinputkan. |
| h3_hexring(h3CellIdExpr, kExpr) | Mengembalikan array ID sel H3 yang membentuk cincin heksagonal berongga yang berpusat di sel H3 asal dan berada pada jarak grid k dari sel H3 asal. |
| h3_kring(h3CellIdExpr, kExpr) | Mengembalikan ID sel H3 yang berada dalam jarak kisi k dari ID sel asal. |
| h3_kringdistances(h3CellIdExpr, kExpr) | Mengembalikan semua ID sel H3 (yang direpresentasikan sebagai bilangan bulat panjang atau string) yang berada dalam jarak k dari ID sel H3 asal, bersama dengan jarak setiap sel dari ID sel H3 asal tersebut. |
| h3_try_distance(h3CellId1Expr, h3CellId2Expr) | Mengembalikan jarak kisi dari dua ID sel H3 input dengan resolusi yang sama, atau NULL jika jarak tidak terdefinisi. |
Penelusuran
| Fungsi | Deskripsi |
|---|---|
| h3_maxchild(h3CellIdExpr, resolutionExpr) | Mengembalikan anak dari nilai maksimum sel H3 masukan pada resolusi yang ditentukan. |
| h3_minchild(h3CellIdExpr, resolutionExpr) | Mengembalikan anak dari nilai minimum sel H3 input pada resolusi yang ditentukan. |
| h3_resolution(h3CellIdExpr) | Mengembalikan resolusi dari ID sel H3 yang diinput. |
| h3_tochildren(h3CellIdExpr, resolutionExpr) | Mengembalikan array yang berisi ID sel H3 anak-anak dari ID sel H3 input pada resolusi tertentu. |
| h3_toparent(h3CellIdExpr, resolutionExpr) | Mengembalikan ID sel H3 induk dari ID sel H3 input pada resolusi yang telah ditentukan. |
Pemadatan
| Fungsi | Deskripsi |
|---|---|
| h3_compact(h3CellIdsExpr) | Memampatkan himpunan ID sel H3 seefektif mungkin. |
| h3_uncompact(h3CellIdsExpr, resolutionExpr) | Menguraikan set ID sel H3 input pada resolusi yang ditentukan. |