Setelah log dikirim dari Simple Log Service ke Object Storage Service (OSS), log tersebut dapat disimpan dalam berbagai format. Topik ini menjelaskan format Parquet.
Parameter
Gambar berikut menunjukkan parameter yang harus Anda konfigurasikan jika menentukan parquet untuk Storage Format dalam pekerjaan pengiriman. Untuk informasi lebih lanjut, lihat Buat pekerjaan pengiriman data OSS (versi baru).
Tabel berikut menjelaskan parameter tersebut.
Parameter | Deskripsi |
Key Name | Nama field log yang ingin Anda kirim ke OSS. Anda dapat melihat field log di tab Raw Logs dari sebuah Logstore. Kami merekomendasikan Anda menambahkan field log satu per satu. Saat field log dikirim ke OSS, field log akan disimpan dalam file Parquet berdasarkan urutan penambahan mereka. Nama field log digunakan sebagai nama kolom dalam file Parquet. Field log yang dapat Anda kirim ke OSS mencakup field cadangan, seperti __time__, __topic__, dan __source__. Untuk informasi lebih lanjut, lihat Field cadangan. Nilai kolom dalam file Parquet adalah null dalam skenario berikut:
Catatan
|
Type | Tipe data field log yang ditentukan. Tipe data berikut didukung: STRING, BOOLEAN, INT32, INT64, FLOAT, dan DOUBLE. Saat field log bertipe STRING dikirim dari Simple Log Service ke OSS, field log tersebut dikonversi ke tipe byte_array, yang didukung dalam file Parquet. Selain itu, kolom |
Contoh URL Objek OSS
Setelah log dikirim ke OSS, log tersebut disimpan dalam Bucket OSS. Tabel berikut memberikan contoh URL objek OSS yang menyimpan log tersebut.
Jika Anda menentukan akhiran objek saat membuat pekerjaan pengiriman data, objek OSS menggunakan akhiran tersebut.
Jika Anda tidak menentukan akhiran objek saat membuat pekerjaan pengiriman data, objek OSS menggunakan akhiran yang dihasilkan berdasarkan tipe kompresi.
Tipe Kompresi | Akhiran Objek | Contoh URL | Deskripsi |
Tidak dikompresi | Jika Anda menentukan akhiran objek, akhiran yang ditentukan berlaku. Contoh: .suffix. | oss://oss-shipper-chengdu/ecs_test/2022/01/26/20/54_1453812893059571256_937.suffix | Anda dapat mengunduh objek OSS ke komputer Anda dan menggunakan data dalam objek tersebut. Untuk informasi lebih lanjut, lihat Konsumsi Data. |
Jika Anda tidak menentukan akhiran objek, akhiran .parquet digunakan. | oss://oss-shipper-chengdu/ecs_test/2022/01/26/20/54_1453812893059571256_937.parquet | ||
Snappy | Jika Anda menentukan akhiran objek, akhiran yang ditentukan berlaku. Contoh: .suffix. | oss://oss-shipper-chengdu/ecs_test/2022/01/26/20/54_1453812893059571256_937.suffix | |
Jika Anda tidak menentukan akhiran objek, akhiran .snappy.parquet digunakan. | oss://oss-shipper-chengdu/ecs_test/2022/01/26/20/54_1453812893059571256_937.snappy.parquet | ||
Gzip | Jika Anda menentukan akhiran objek, akhiran yang ditentukan berlaku. Contoh: .suffix. | oss://oss-shipper-chengdu/ecs_test/2022/01/26/20/54_1453812893059571256_937.suffix | |
Jika Anda tidak menentukan akhiran objek, akhiran .gz.parquet digunakan. | oss://oss-shipper-chengdu/ecs_test/2022/01/26/20/54_1453812893059571256_937.gz.parquet | ||
Zstandard | Jika Anda menentukan akhiran objek, akhiran yang ditentukan berlaku. Contoh: .suffix. | oss://oss-shipper-chengdu/ecs_test/2022/01/26/20/54_1453812893059571256_937.suffix | |
Jika Anda tidak menentukan akhiran objek, akhiran .zst.parquet digunakan. | oss://oss-shipper-chengdu/ecs_test/2022/01/26/20/54_1453812893059571256_937.zst.parquet |
Konsumsi Data
Anda dapat menggunakan E-MapReduce, Spark, atau Hive untuk mengonsumsi data yang dikirim ke OSS. Untuk informasi lebih lanjut, lihat LanguageManual DDL.
Anda juga dapat mengonsumsi data menggunakan alat inspeksi.
Anda dapat menggunakan utilitas parquet-tools yang disediakan oleh Python untuk memeriksa file Parquet, melihat detail file, dan membaca data. Anda dapat menginstal utilitas ini dengan menjalankan perintah berikut atau menggunakan metode lain:
pip3 install parquet-toolsLihat data kolom dalam file Parquet
Perintah
Lihat data kolom remote_addr dan body_bytes_sent.
parquet-tools show -n 2 -c remote_addr,body_bytes_sent 44_1693464263000000000_2288ff590970d092.parquetRespons
+----------------+-------------------+ | remote_addr | body_bytes_sent | |----------------+-------------------| | 61.243.1.63 | b'1904' | | 112.235.74.182 | b'4996' | +----------------+-------------------+
Lihat isi file Parquet (Ubah file menjadi format CSV.)
Perintah
parquet-tools csv -n 2 44_1693464263000000000_2288ff590970d092.parquetRespons
remote_addr,body_bytes_sent,time_local,request_method,request_uri,http_user_agent,remote_user,request_time,request_length,http_referer,host,http_x_forwarded_for,upstream_response_time,status b'61.**.**.63',b'1904',b'31/Aug/2023:06:44:01',b'GET',b'/request/path-0/file-7',"b'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_5_8) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.801.0 Safari/535.1'",b'uh2z',b'49',b'4082',b'www.kwm.mock.com',b'www.ap.mock.com',b'222.**.**.161',b'2.63',b'200' b'112.**.**.182',b'4996',b'31/Aug/2023:06:44:01',b'GET',b'/request/path-1/file-5',b'Mozilla/5.0 (Windows NT 6.1; de;rv:12.0) Gecko/20120403211507 Firefox/12.0',b'tix',b'71',b'1862',b'www.gx.mock.com',b'www.da.mock.com',b'36.**.**.237',b'2.43',b'200'
Lihat detail file Parquet
Perintah
parquet-tools inspect 44_1693464263000000000_2288ff590970d092.parquetRespons
############ meta data file ############ created_by: SLS version 1 num_columns: 14 num_rows: 4661 num_row_groups: 1 format_version: 1.0 serialized_size: 2345 ############ Kolom ############ remote_addr body_bytes_sent time_local request_method request_uri http_user_agent remote_user request_time request_length http_referer host http_x_forwarded_for upstream_response_time status ############ Kolom(remote_addr) ############ name: remote_addr path: remote_addr max_definition_level: 1 max_repetition_level: 0 physical_type: BYTE_ARRAY logical_type: None converted_type (legacy): NONE compression: UNCOMPRESSED (space_saved: 0%) ......