Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Regex SerDe
Regex SerDe menggunakan ekspresi reguler (regex) untuk deserialisasi data dengan mengekstrak grup regex ke dalam kolom tabel.
Jika baris dalam data tidak cocok dengan regex, maka semua kolom di baris dikembalikan sebagai. NULL
Jika baris cocok dengan regex tetapi memiliki lebih sedikit grup dari yang diharapkan, grup yang hilang adalah. NULL
Jika baris dalam data cocok dengan regex tetapi memiliki lebih banyak kolom daripada grup di regex, kolom tambahan akan diabaikan.
Untuk informasi selengkapnya, lihat Kelas RegexSerDe
SerDe nama
RegexSerDe
Nama perpustakaan
RegexSerDe
Contoh
Contoh berikut membuat tabel dari CloudFront log menggunakan RegExSerDe. Ganti myregion
s3://athena-examples-
dengan pengidentifikasi wilayah tempat Anda menjalankan Athena (misalnya,). myregion
/cloudfront/plaintext/s3://athena-examples-us-west-1/cloudfront/plaintext/
CREATE EXTERNAL TABLE IF NOT EXISTS cloudfront_logs ( `Date` DATE, Time STRING, Location STRING, Bytes INT, RequestIP STRING, Method STRING, Host STRING, Uri STRING, Status INT, Referrer STRING, os STRING, Browser STRING, BrowserVersion STRING ) ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.RegexSerDe' WITH SERDEPROPERTIES ( "input.regex" = "^(?!#)([^ ]+)\\s+([^ ]+)\\s+([^ ]+)\\s+([^ ]+)\\s+([^ ]+)\\s+([^ ]+)\\s+([^ ]+)\\s+([^ ]+)\\s+([^ ]+)\\s+([^ ]+)\\s+[^\(]+[\(]([^\;]+).*\%20([^\/]+)[\/](.*)$" ) LOCATION 's3://athena-examples-
myregion
/cloudfront/plaintext/';