Setelah log dikirim dari Simple Log Service ke Object Storage Service (OSS), log tersebut dapat disimpan dalam berbagai format. Topik ini menjelaskan format Parquet.
Versi lama pengiriman log ke OSS telah dihentikan. Lihat versi baru.
Parameter
Gambar berikut menunjukkan parameter yang perlu dikonfigurasi jika Anda menentukan parquet untuk Storage Format dalam aturan pengiriman. Untuk informasi lebih lanjut, lihat Kirim data log dari Simple Log Service ke OSS.
Tabel berikut menjelaskan parameter tersebut.
Parameter | Deskripsi |
Nama Kunci | Nama field log yang ingin Anda kirim ke OSS. Anda dapat melihat field log pada tab Raw Logs dari sebuah logstore. Kami merekomendasikan Anda menambahkan field log satu per satu. Saat field log dikirim ke OSS, field log tersebut 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 dalam konten log dan field cadangan seperti __time__, _topic__, dan __source__. Untuk informasi lebih lanjut tentang field cadangan, lihat Field cadangan. Nilai kolom dalam file Parquet adalah null dalam skenario berikut:
Catatan
|
Tipe | Format Parquet mendukung penyimpanan data dari enam tipe: string, boolean, int32, int64, float, dan double. Setelah log dikirim, data tipe string disimpan sebagai tipe byte_array dalam Parquet, dan sistem tidak menetapkan nilai dari field |
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.
Tipe kompresi | Akhiran objek | Contoh URL | Deskripsi |
Tidak dikompresi | .parquet | oss://oss-shipper-shenzhen/ecs_test/2016/01/26/20/54_1453812893059571256_937.parquet | Unduh objek OSS ke komputer Anda dan gunakan data dalam objek tersebut. Untuk informasi lebih lanjut, lihat Konsumsi data. |
Snappy | .snappy.parquet | oss://oss-shipper-shenzhen/ecs_test/2016/01/26/20/54_1453812893059571256_937.snappy.parquet |
Konsumsi Data
Konsumsi data yang dikirim ke OSS menggunakan E-MapReduce, Spark, atau Hive. Untuk informasi lebih lanjut, lihat LanguageManual DDL.
Konsumsi data menggunakan alat inspeksi.
Gunakan parquet-tools yang disediakan oleh Python untuk memeriksa file Parquet, melihat detail file, dan membaca data. Instal utilitas tersebut 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
############ metadata 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%) ......