Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
UNLOAD
Timestream untuk LiveAnalytics mendukung UNLOAD
perintah sebagai ekstensi untuk SQL dukungannya. Tipe data UNLOAD
yang didukung oleh dijelaskan dalamJenis data yang didukung. unknown
Jenis time
dan tidak berlaku untukUNLOAD
.
UNLOAD (SELECT statement) TO 's3://bucket-name/folder' WITH ( option = expression [, ...] )
di mana opsi adalah
{ partitioned_by = ARRAY[ col_name[,…] ] | format = [ '{ CSV | PARQUET }' ] | compression = [ '{ GZIP | NONE }' ] | encryption = [ '{ SSE_KMS | SSE_S3 }' ] | kms_key = '<string>' | field_delimiter ='<character>' | escaped_by = '<character>' | include_header = ['{true, false}'] | max_file_size = '<value>' }
- SELECTpernyataan
-
Pernyataan query yang digunakan untuk memilih dan mengambil data dari satu atau lebih Timestream untuk LiveAnalytics tabel.
(SELECT column 1, column 2, column 3 from database.table where measure_name = "ABC" and timestamp between ago (1d) and now() )
- Klausul TO
-
TO 's3://bucket-name/folder'
atau
TO 's3://access-point-alias/folder'
TO
Klausa dalamUNLOAD
pernyataan menentukan tujuan untuk output dari hasil query. Anda perlu menyediakan jalur lengkap, termasuk nama ember Amazon S3 atau Amazon S3 dengan lokasi folder di Amazon S3 access-point-alias tempat Timestream untuk menulis objek file output. LiveAnalytics Bucket S3 harus dimiliki oleh akun yang sama dan di wilayah yang sama. Selain set hasil kueri, Timestream untuk LiveAnalytics menulis file manifes dan metadata ke folder tujuan tertentu. - PARTITIONED_BY klausa
-
partitioned_by = ARRAY [col_name[,…] , (default: none)
partitioned_by
Klausa ini digunakan dalam kueri untuk mengelompokkan dan menganalisis data pada tingkat granular. Saat mengekspor hasil kueri ke bucket S3, Anda dapat memilih untuk mempartisi data berdasarkan satu atau beberapa kolom dalam kueri pilih. Saat mempartisi data, data yang diekspor dibagi menjadi himpunan bagian berdasarkan kolom partisi dan setiap subset disimpan dalam folder terpisah. Dalam folder hasil yang berisi data yang diekspor, sub-folder dibuatfolder/results/partition column = partition value/
secara otomatis. Namun, perhatikan bahwa kolom yang dipartisi tidak termasuk dalam file output.partitioned_by
bukan klausa wajib dalam sintaks. Jika Anda memilih untuk mengekspor data tanpa partisi apa pun, Anda dapat mengecualikan klausa dalam sintaks.Dengan asumsi Anda memantau data clickstream situs web Anda dan memiliki 5 saluran lalu lintas yaitu
direct
,,,Social Media
Organic Search
,Other
dan.Referral
Saat mengekspor data, Anda dapat memilih untuk mempartisi data menggunakan kolomChannel
. Dalam folder data Andas3://bucketname/results
,, Anda akan memiliki lima folder masing-masing dengan nama saluran masing-masing, misalnya,s3://bucketname/results/channel=Social Media/.
Dalam folder ini Anda akan menemukan data semua pelanggan yang mendarat di situs web Anda melaluiSocial Media
saluran. Demikian pula, Anda akan memiliki folder lain untuk saluran yang tersisa.Data yang diekspor dipartisi oleh kolom Saluran
- FORMAT
-
format = [ '{ CSV | PARQUET }' , default: CSV
Kata kunci untuk menentukan format hasil kueri yang ditulis ke bucket S3 Anda. Anda dapat mengekspor data baik sebagai nilai dipisahkan koma (CSV) menggunakan koma (,) sebagai pembatas default atau dalam format Apache Parquet, format penyimpanan kolom terbuka yang efisien untuk analitik.
- COMPRESSION
-
compression = [ '{ GZIP | NONE }' ], default: GZIP
Anda dapat mengompres data yang diekspor menggunakan algoritma kompresi GZIP atau membuatnya tidak dikompresi dengan menentukan opsi.
NONE
- ENCRYPTION
-
encryption = [ '{ SSE_KMS | SSE_S3 }' ], default: SSE_S3
File output di Amazon S3 dienkripsi menggunakan opsi enkripsi yang Anda pilih. Selain data Anda, file manifes dan metadata juga dienkripsi berdasarkan opsi enkripsi yang Anda pilih. Saat ini kami mendukung SSE enkripsi _S3 dan SSE _KMS. SSE_S3 adalah enkripsi sisi server dengan Amazon S3 mengenkripsi data menggunakan enkripsi standar enkripsi lanjutan () 256-bit. AES SSE_ KMS adalah enkripsi sisi server untuk mengenkripsi data menggunakan kunci yang dikelola pelanggan.
- KMS_KEY
-
kms_key = '<string>'
KMSKunci adalah kunci yang ditentukan pelanggan untuk mengenkripsi hasil kueri yang diekspor. KMSKey dikelola dengan aman oleh AWS Key Management Service (AWS KMS) dan digunakan untuk mengenkripsi file data di Amazon S3.
- FIELD_DELIMITER
-
field_delimiter ='<character>' , default: (,)
Saat mengekspor data dalam CSV format, bidang ini menentukan satu ASCII karakter yang digunakan untuk memisahkan bidang dalam file output, seperti karakter pipa (|), koma (,), atau tab (/t). Pembatas default untuk CSV file adalah karakter koma. Jika nilai dalam data Anda berisi pembatas yang dipilih, pembatas akan dikutip dengan karakter kutipan. Misalnya, jika nilai dalam data Anda berisi
Time,stream
, maka nilai ini akan dikutip seperti"Time,stream"
pada data yang diekspor. Karakter kutipan yang digunakan oleh Timestream untuk LiveAnalytics adalah tanda kutip ganda (“).Hindari menentukan karakter carriage return (ASCII13, hex
0D
, text '\ r') atau karakter line break (ASCII10, hex 0A, text'\n') sebagaiFIELD_DELIMITER
jika Anda ingin memasukkan header dalamCSV, karena itu akan mencegah banyak parser dari dapat mengurai header dengan benar dalam output yang dihasilkan. CSV - ESCAPED_OLEH
-
escaped_by = '<character>', default: (\)
Saat mengekspor data dalam CSV format, bidang ini menentukan karakter yang harus diperlakukan sebagai karakter escape dalam file data yang ditulis ke bucket S3. Melarikan diri terjadi dalam skenario berikut:
-
Jika nilai itu sendiri berisi karakter kutipan (“) maka itu akan diloloskan menggunakan karakter escape. Misalnya, jika nilainya
Time"stream
, di mana (\) adalah karakter escape yang dikonfigurasi, maka itu akan lolos sebagaiTime\"stream
. -
Jika nilai berisi karakter escape dikonfigurasi, itu akan lolos. Misalnya, jika nilainya
Time\stream
, maka itu akan lolos sebagaiTime\\stream
.
catatan
Jika output yang diekspor berisi tipe data yang kompleks seperti Array, Rows atau Timeseries, itu akan diserialisasi sebagai string. JSON Berikut adalah contohnya.
Tipe data Nilai aktual Bagaimana nilai diloloskan dalam CSV format [serial stringJSON] Array
[ 23,24,25 ]
"[23,24,25]"
Baris
( x=23.0, y=hello )
"{\"x\":23.0,\"y\":\"hello\"}"
Timeseries
[ ( time=1970-01-01 00:00:00.000000010, value=100.0 ),( time=1970-01-01 00:00:00.000000012, value=120.0 ) ]
"[{\"time\":\"1970-01-01 00:00:00.000000010Z\",\"value\":100.0},{\"time\":\"1970-01-01 00:00:00.000000012Z\",\"value\":120.0}]"
-
- INCLUDE_HEADER
-
include_header = 'true' , default: 'false'
Saat mengekspor data dalam CSV format, bidang ini memungkinkan Anda menyertakan nama kolom sebagai baris pertama dari file CSV data yang diekspor.
Nilai yang diterima adalah 'true' dan 'false' dan nilai default adalah 'false'. Opsi transformasi teks seperti
escaped_by
danfield_delimiter
berlaku untuk header juga.catatan
Saat menyertakan header, penting bahwa Anda tidak memilih karakter carriage return (ASCII13, hex 0D, text '\ r') atau karakter pemisah baris (ASCII10, hex 0A, teks'\n') sebagai
FIELD_DELIMITER
, karena itu akan mencegah banyak parser untuk dapat mengurai header dengan benar dalam output yang dihasilkan. CSV - MAX_FILE_SIZE
-
max_file_size = 'X[MB|GB]' , default: '78GB'
Bidang ini menentukan ukuran maksimum file yang dibuat
UNLOAD
pernyataan di Amazon S3.UNLOAD
Pernyataan tersebut dapat membuat beberapa file tetapi ukuran maksimum setiap file yang ditulis ke Amazon S3 akan kira-kira apa yang ditentukan dalam bidang ini.Nilai bidang harus antara 16 MB dan 78 GB, inklusif. Anda dapat menentukannya dalam bilangan bulat seperti
12GB
, atau dalam desimal seperti atau.0.5GB
24.7MB
Nilai default adalah 78 GB.Ukuran file sebenarnya diperkirakan saat file sedang ditulis, sehingga ukuran maksimum sebenarnya mungkin tidak persis sama dengan angka yang Anda tentukan.