Halaman ini merujuk pada parameter
extendsyang merupakan bagian dari Explore.
extendsjuga dapat digunakan sebagai bagian dari tampilan, seperti yang dijelaskan di halaman dokumentasi parameterextends(untuk tampilan).
extendsjuga dapat digunakan sebagai bagian dari dasbor LookML, seperti yang dijelaskan di halaman dokumentasi Parameter dasbor.
Penggunaan
explore: explore_name {
extends: [explore_name, explore_name, ...]
}
|
Hierarki
extends |
Nilai Default
Tidak ada
Menerima
Tanda kurung siku yang berisi daftar nama Eksplorasi yang dipisahkan koma
|
Definisi
Parameter extends memungkinkan Anda membuat konten dan setelan dari Eksplorasi lain, menggunakan Eksplorasi lain sebagai titik awal. Jika ada konflik, Explore yang diperluas akan menggunakan setelannya sendiri, menggantikan setelan Explore yang diperluas. Lihat halaman dokumentasi Menggunakan kembali kode dengan extends untuk mengetahui detail cara Looker melakukannya.
Lihat penajaman LookML.
Memperluas tampilan atau Eksplorasi sangat ideal untuk skenario saat Anda ingin memiliki beberapa versi tampilan atau Eksplorasi. Namun, jika sasaran Anda hanya untuk mengubah tampilan atau Eksplorasi tanpa mengedit file LookML yang memuatnya, Anda dapat menggunakan penyempurnaan. Anda juga dapat menggunakan parameterextendsdi dalam penyempurnaan. Lihat halaman dokumentasi Penyempurnaan LookML untuk mengetahui informasi dan kasus penggunaan selengkapnya.
Saat memperluas Eksplorasi, penting untuk memiliki parameter view_name di Eksplorasi yang akan diperluas. Parameter view_name menentukan tampilan yang menjadi dasar Eksplorasi. Nilai defaultnya adalah nama Jelajah. Jika Jelajah dasar tidak memiliki view_name yang ditentukan, nama Jelajah akan digunakan secara default. Namun, cara ini tidak berfungsi untuk Eksplorasi lain yang memperluas Eksplorasi dasar, sehingga kita akan mendapatkan error "tampilan tidak diketahui". Agar Looker menggunakan file tampilan yang benar, kita perlu menentukannya menggunakan parameter view_name. Karena ini akan diperlukan dalam versi Explore yang diperluas, praktik terbaiknya adalah menambahkannya ke Explore dasar sehingga dirujuk secara konsisten setiap kali Explore diperluas.
Jika Jelajah dasar Anda belum memiliki parameter view_name, Anda cukup menambahkan parameter view_name dan menentukan nilai yang sama dengan nama Jelajah Anda.
Anda juga dapat menggunakan parameter view_label di Eksplorasi dasar dan perluasan. Parameter view_label menentukan label yang digunakan untuk mengelompokkan kolom tampilan di pemilih kolom (lihat halaman dokumentasi parameter view_label (untuk Eksplorasi) untuk melihat contohnya). Jika Anda tidak menentukan view_label untuk Eksplorasi dasar dan perluasan, keduanya akan menggunakan nama Eksplorasi dari Eksplorasi dasar.
Contoh
Berikut contoh Eksplorasi yang ditentukan dalam file model kita:
explore: orders {
view_name: orders
view_label: "Orders"
# The normal contents of the Explore follow
}
Di sini kita menambahkan Eksplorasi baru yang memperluas Eksplorasi orders yang kita tentukan sebelumnya:
explore: name_of_the_new_explore {
extends: [orders]
view_label: "Order Information"
# The additional things you want to add or change
# in the new Explore
}
Jika Anda memperluas Eksplorasi yang didasarkan pada tampilan yang diperluas, Anda juga harus menggunakan parameter from. Tambahkan from ke Jelajah yang diperluas dan tetapkan nama tampilan yang diperluas.
explore: new_explore {
extends: [orders]
from: extended_orders_view
#The normal contents of the Explore follow
}
Menggunakan extends untuk membatasi kolom bagi pengguna yang berbeda
Kasus penggunaan yang sangat berguna untuk memperluas Eksplorasi adalah menampilkan hanya subset kolom Eksplorasi kepada pengguna tertentu. Misalnya, Anda memiliki Eksplorasi products dengan semua kolom yang tersedia dari tabel gabungan:
explore: products {
view_name: products
from: products
join: inventory_items {
type: left_outer
sql_on: ${products.id}=${inventory_items.product_id} ;;
relationship: many_to_one
}
join: order_items {
type: left_outer
sql_on: ${order_items.inventory_item_id}=${inventory_items.id} ;;
relationship: one_to_one
}
}
Jika Anda memiliki tim yang hanya perlu melihat kategori produk dan pengembalian, Anda dapat memperluas products Jelajahi dan gunakan parameter fields untuk menentukan bahwa hanya kolom kategori produk dan pengembalian yang akan disertakan:
explore: products_extended {
extends: [products]
fields: [products.category,order_items.returned_date]
}
Eksplorasi products_extended hanya akan menampilkan dua kolom ini: products.category dan order_items.returned_date.
Memperluas Eksplorasi di seluruh model
Eksplorasi biasanya ditentukan dalam file model. Jika ingin memperluas Eksplorasi, Anda cukup menentukan Eksplorasi yang diperluas dalam file model yang sama, seperti dalam contoh sebelumnya.
Namun, jika ingin memperluas Eksplorasi di beberapa model, Anda harus membuat file Eksplorasi terpisah untuk digunakan sebagai file dasar. Setelah menentukan Eksplorasi dasar dalam filenya sendiri, Anda dapat menyertakan file Eksplorasi dalam file model dan memperluas Eksplorasi dalam file model.
Karena Anda dapat menyertakan file Eksplorasi dalam file Eksplorasi lain, Anda juga dapat membagikan file Eksplorasi dasar ke beberapa file Eksplorasi lain, jika perlu.
File eksplorasi akan memantau koneksi model tempat file tersebut disertakan. Perhatikan hal ini saat Anda menyertakan file Jelajah dalam model yang dikonfigurasi dengan koneksi yang berbeda dari model induk file Jelajah. Jika skema untuk koneksi model yang disertakan berbeda dengan skema untuk koneksi model induk, hal ini dapat menyebabkan error kueri.
Menggunakan metadata untuk melihat ekstensi objek
Anda dapat mengklik parameter explore atau view di Looker IDE dan menggunakan panel metadata untuk melihat ekstensi apa pun pada objek, atau untuk melihat objek yang diperluasnya. Lihat halaman dokumentasi Metadata untuk objek LookML untuk mengetahui informasi.
Hal-hal yang perlu dipertimbangkan
Beberapa parameter bersifat aditif
Dalam banyak kasus, jika objek yang diperluas berisi parameter yang sama dengan objek yang sedang diperluas, nilai objek yang memperluas akan menggantikan nilai parameter objek yang diperluas. Namun, ekstensi dapat bersifat aditif untuk beberapa parameter, yang berarti nilai dari objek yang diperluas digunakan bersama dengan nilai dari objek yang diperluas.
Parameter Explore berikut bersifat aditif:
access_filteraggregate_tableextends(Anda dapat merangkai beberapaextends)joinquery
Dalam contoh berikut, Eksplorasi aircraft_base menggunakan parameter join untuk menggabungkan tampilan aircraft dengan tampilan aircraft_types:
explore: aircraft_base {
view_name: aircraft
label: "Aircraft"
join: aircraft_types {
type: left_outer
sql_on: ${aircraft.aircraft_type_id} = ${aircraft_types.aircraft_type_id} ;;
relationship: many_to_one
}
}
Selain itu, aircraft_extended Explore memperluas aircraft_base Explore. Selain itu, Eksplorasi aircraft_extended memiliki parameter join yang bergabung dalam tampilan aircraft_engine_types:
explore: aircraft_extended {
extends: [aircraft_base]
label: "Aircraft Extended"
join: aircraft_engine_types {
type: left_outer
sql_on: ${aircraft.aircraft_engine_type_id} = ${aircraft_engine_types.aircraft_engine_type_id} ;;
relationship: many_to_one
}
}
Parameter join bersifat tambahan, sehingga Eksplorasi yang dihasilkan akan menampilkan tabel virtual yang digabungkan dalam Eksplorasi dasar, ditambah tabel virtual yang digabungkan ke dalam Eksplorasi yang diperluas. Dalam hal ini, Eksplorasi aircraft_extended berisi tampilan aircraft, tampilan aircraft_types, dan tampilan aircraft_engine_types.

Project dengan pelokalan
Saat memperluas objek, perhatikan bahwa aturan pelokalan juga berlaku untuk perluasan Anda. Jika Anda memperluas objek, lalu menentukan label atau deskripsi baru, Anda harus memberikan definisi pelokalan dalam file string bahasa project. Lihat halaman dokumentasi Melokalkan model LookML untuk mengetahui informasi selengkapnya.