Notebook adalah platform analisis dan pengembangan data interaktif yang menyediakan fitur seperti pengeditan pekerjaan, analisis data, dan visualisasi data. Jika Anda ingin menggunakan Notebook untuk mengembangkan pekerjaan Spark SQL, Anda dapat menggunakan fitur Notebook dari Data Management (DMS) untuk menyelesaikan pengembangan pekerjaan.
Prasyarat
Sebuah kluster AnalyticDB for MySQL Enterprise Edition, Basic Edition, atau Data Lakehouse Edition telah dibuat.
Sebuah grup sumber daya pekerjaan telah dibuat untuk kluster AnalyticDB for MySQL.
Sebuah akun database telah dibuat untuk kluster AnalyticDB for MySQL.
Jika Anda menggunakan akun Alibaba Cloud, cukup buat akun dengan hak istimewa.
Jika Anda menggunakan Pengguna Resource Access Management (RAM), Anda harus membuat akun dengan hak istimewa dan akun standar serta mengaitkan akun standar dengan pengguna RAM.
AnalyticDB for MySQL diberi otorisasi untuk mengambil peran AliyunADBSparkProcessingDataRole guna mengakses sumber daya cloud lainnya.
Path penyimpanan log aplikasi Spark telah dikonfigurasi untuk kluster AnalyticDB for MySQL.
CatatanMasuk ke Konsol AnalyticDB for MySQL. Temukan kluster yang ingin Anda kelola dan klik ID kluster. Di panel navigasi di sebelah kiri, pilih . Klik Log Settings. Dalam kotak dialog yang muncul, pilih path default atau tentukan path penyimpanan kustom. Anda tidak dapat menetapkan path penyimpanan kustom ke direktori root OSS. Pastikan bahwa path penyimpanan kustom berisi setidaknya satu lapis folder.
Sebuah bucket Object Storage Service (OSS) telah dibuat di wilayah yang sama dengan kluster AnalyticDB for MySQL.
Batasan
Fitur Notebook hanya didukung di wilayah China (Hangzhou).
Prosedur
Buat dan masuk ke ruang kerja.
- Masuk ke Konsol DMS V5.0.
Pindahkan pointer ke ikon
di sudut kiri atas dan pilih .CatatanJika Anda menggunakan konsol DMS dalam mode normal, pilih di bilah navigasi atas.
Klik Create Workspace. Dalam kotak dialog Buat Ruang Kerja, konfigurasikan parameter Workspace Name dan Region, lalu klik OK.
Klik Go to Workspace di kolom Actions ruang kerja untuk masuk ke ruang kerja.
(Opsional) Tambahkan anggota ruang kerja. Jika sebuah ruang kerja memiliki banyak pengguna, Anda harus melakukan langkah ini untuk memberikan peran yang berbeda kepada setiap pengguna.
Konfigurasikan penyimpanan kode.
Di tab
, klik Storage Management.Konfigurasikan path OSS di bagian Code Storage.
Tambahkan sumber daya.
Di tab
, klik Resource Configuration.Klik Tambah Sumber Daya. Dalam panel Tambah Sumber Daya, konfigurasikan parameter yang dijelaskan dalam tabel berikut.
Parameter
Diperlukan
Deskripsi
Resource Name
Ya
Nama sumber daya. Anda dapat memasukkan nama kustom.
Resource Introduction
Ya
Deskripsi sumber daya. Anda dapat memasukkan tujuan dari sumber daya tersebut.
Image
Ya
Hanya mendukung Spark3.5+Python3.9.
Instansi AnalyticDB
Ya
ID kluster AnalyticDB for MySQL.
CatatanJika Anda tidak dapat menemukan kluster yang diinginkan, periksa apakah kluster tersebut telah didafarkan dengan DMS.
AnalyticDB Resource Group
Ya
Nama grup sumber daya pekerjaan.
Executor Spec
Ya
Spesifikasi sumber daya Spark executor. Dalam contoh ini, spesifikasi medium default digunakan.
Jenis sumber daya yang berbeda sesuai dengan spesifikasi yang berbeda. Untuk informasi lebih lanjut, lihat kolom Type di topik parameter konfigurasi aplikasi Spark.
Max Executors
Min Executors
Ya
Jumlah Spark executor.
Setelah Anda memilih image Spark3.5+Python3.9, parameter Min Executors secara otomatis disetel ke 2, dan parameter Max Executors secara otomatis disetel ke 8.
Notebook Spec
Ya
Spesifikasi Notebook. Dalam contoh ini, General_Tiny_v1 (1 core, 4 GB) digunakan.
VPC ID
Ya
VPC tempat kluster AnalyticDB for MySQL berada, yang memastikan bahwa Notebook dapat berkomunikasi dengan kluster AnalyticDB for MySQL.
PentingJika Anda mengubah VPC dan vSwitch kluster AnalyticDB for MySQL, Anda harus mengubah parameter VPC ID dan VSwitch ID sumber daya ke VPC dan vSwitch baru. Jika tidak, pengiriman pekerjaan mungkin gagal.
Zone ID
Ya
Zona tempat kluster AnalyticDB for MySQL berada.
VSwitch ID
Ya
vSwitch tempat kluster AnalyticDB for MySQL terhubung.
Security Group ID
Ya
Grup keamanan yang tersedia, yang memastikan bahwa Notebook dapat berkomunikasi dengan kluster AnalyticDB for MySQL.
Release Resource
Ya
Periode waktu sumber daya tetap idle sebelum dirilis secara otomatis.
Dependent Jars
Tidak
Path penyimpanan OSS paket JAR. Tentukan parameter ini hanya jika Anda mengirimkan pekerjaan dalam Python dan menggunakan paket JAR.
SparkConf
Tidak
Parameter konfigurasi yang mirip dengan Apache Spark. Parameter harus dalam format
key: value. Untuk informasi tentang parameter konfigurasi yang berbeda dari Apache Spark atau parameter konfigurasi khusus untuk AnalyticDB for MySQL, lihat parameter konfigurasi aplikasi Spark.Klik Save.
Klik Start di kolom Actions sumber daya untuk memulai sumber daya.
Inisialisasi data.
Pindahkan pointer ke ikon
di sudut kiri atas dan pilih .Klik +New. Dalam kotak dialog Add Instance, konfigurasikan parameter yang dijelaskan dalam tabel berikut.
Parameter
Deskripsi
Data Source
Di tab Alibaba Cloud, pilih OSS.
Basic Information
File and Log Storage
Parameter ini secara otomatis disetel ke OSS.
Instance Region
Wilayah tempat kluster AnalyticDB for MySQL berada.
Connection Method
Parameter ini secara otomatis disetel ke Connection String Address.
Connection String Address
Setel nilai menjadi oss-cn-hangzhou.aliyuncs.com.
Bucket
Nama bucket.
Access mode
Metode akses. Dalam contoh ini, Security Hosting - Manual digunakan.
AccessKey ID
ID AccessKey akun Alibaba Cloud atau pengguna RAM yang memiliki izin untuk mengakses OSS.
Untuk informasi tentang cara mendapatkan ID AccessKey dan Rahasia AccessKey, lihat Akun dan Izin.
AccessKey Secret
Rahasia AccessKey akun Alibaba Cloud atau pengguna RAM yang memiliki izin untuk mengakses OSS.
Untuk informasi tentang cara mendapatkan ID AccessKey dan Rahasia AccessKey, lihat Akun dan Izin.
Advanced Information
Parameter opsional. Untuk informasi lebih lanjut, lihat bagian "Informasi Lanjutan" dari topik Register an Alibaba Cloud database instance.
Setelah Anda mengonfigurasi parameter sebelumnya, klik Test Connection di pojok kiri bawah.
CatatanJika tes koneksi gagal, periksa informasi instansi berdasarkan pesan kesalahan.
Setelah pesan Successful connection ditampilkan, klik Submit.
Masuk ke ruang kerja dan klik tab
.Di tab Data Lake Data, klik Add OSS dan pilih bucket yang Anda tentukan di Langkah b.
Buat sebuah notebook.
Di tab
, klik ikon
dan pilih Notebook.
Kembangkan pekerjaan Spark SQL di halaman Notebook.
CatatanUntuk informasi tentang tombol di halaman Notebook, lihat bagian "Antarmuka Pengguna Notebook" dari topik Gunakan Notebook untuk Menanyakan dan Menganalisis Data.
Jalankan perintah berikut untuk mengunduh dependensi Python:
pip install deltaGanti tipe sel ke SQL dan jalankan pernyataan berikut untuk membuat database.
CatatanDatabase db_delta yang dibuat di Langkah b dan tabel eksternal
sample_datayang dibuat di Langkah c secara otomatis ditampilkan di kluster AnalyticDB for MySQL. Anda dapat menganalisis tabelsample_datadi konsol AnalyticDB for MySQL.
CREATE DATABASE db_delta LOCATION 'oss://testBucketName/db_delta/'; -- Tentukan path penyimpanan data di database db_delta.Ganti tipe sel ke Code dan jalankan kode berikut untuk membuat tabel eksternal bernama
sample_datadan menyisipkan data ke dalam tabel. Data tabel eksternalsample_datadisimpan di path OSS yang ditentukan di Langkah b.# -*- coding: utf-8 -*- import pyspark from delta import * from pyspark.sql.types import * from pyspark.sql.functions import * print("Memulai pembuatan tabel Delta") data = [ ("Robert", "Baratheon", "Baratheon", "Storms End", 48), ("Eddard", "Stark", "Stark", "Winterfell", 46), ("Jamie", "Lannister", "Lannister", "Casterly Rock", 29), ("Robert", "Baratheon", "Baratheon", "Storms End", 48), ("Eddard", "Stark", "Stark", "Winterfell", 46), ("Jamie", "Lannister", "Lannister", "Casterly Rock", 29), ("Robert", "Baratheon", "Baratheon", "Storms End", 48), ("Eddard", "Stark", "Stark", "Winterfell", 46), ("Jamie", "Lannister", "Lannister", "Casterly Rock", 29) ] schema = StructType([ StructField("firstname", StringType(), True), StructField("lastname", StringType(), True), StructField("house", StringType(), True), StructField("location", StringType(), True), StructField("age", IntegerType(), True) ]) sample_dataframe = spark.createDataFrame(data=data, schema=schema) sample_dataframe.delta').mode("overwrite").option('mergeSchema','true').saveAsTable("db_delta.sample_data")Ganti tipe sel ke SQL dan jalankan pernyataan berikut untuk menanyakan data dari tabel
sample_data:SELECT * FROM db_delta.sample_data;
Untuk menggunakan Spark SQL guna menganalisis tabel
sample_datadi konsol AnalyticDB for MySQL, lakukan langkah-langkah berikut:Masuk ke Konsol AnalyticDB for MySQL. Di sudut kiri atas konsol, pilih wilayah. Di panel navigasi di sebelah kiri, klik Clusters. Temukan kluster yang ingin Anda kelola dan klik ID kluster.
Di panel navigasi di sebelah kiri, pilih . Di halaman yang muncul, pilih mesinSpark dan grup sumber daya interaktif.
Tanyakan data dari tabel
sample_data.SELECT * FROM db_delta.sample_data LIMIT 1000;
Referensi
Notebook: menjelaskan informasi tentang Notebook.