Rekomendasi untuk menggunakan kueri langsung di Amazon Service OpenSearch - OpenSearch Layanan Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Rekomendasi untuk menggunakan kueri langsung di Amazon Service OpenSearch

Halaman ini memberikan rekomendasi untuk menggunakan kueri langsung Amazon OpenSearch Service untuk menganalisis data dari CloudWatch Log, Amazon S3, dan Amazon Security Lake. Praktik terbaik ini membantu Anda mengoptimalkan kinerja dan memastikan kueri yang efisien tanpa perlu menelan atau duplikasi data.

Rekomendasi umum

Kami menyarankan Anda melakukan hal berikut saat menggunakan kueri langsung:

  • Gunakan COALESCE SQL fungsi untuk menangani kolom yang hilang dan memastikan hasil dikembalikan.

  • Gunakan batasan pada kueri Anda untuk memastikan Anda tidak menarik terlalu banyak data kembali.

  • Jika Anda berencana untuk menganalisis kumpulan data yang sama berkali-kali, buat tampilan yang diindeks untuk sepenuhnya menyerap dan mengindeks data ke dalam OpenSearch dan menjatuhkannya ketika Anda telah menyelesaikan analisis.

  • Jatuhkan pekerjaan dan indeks akselerasi saat tidak lagi dibutuhkan.

  • Kueri yang berisi nama bidang yang identik tetapi berbeda hanya jika (seperti field1 danFIELD1) tidak didukung.

    Misalnya, kueri berikut tidak didukung:

    Select AWSAccountId, AwsAccountId from LogGroup Select a.@LogStream, b.@logStream from Table A INNER Join Table B ona.id = b.id

    Namun, kueri berikut didukung karena nama bidang (@logStream) identik di kedua grup log:

    Select a.@logStream, b.@logStream from Table A INNER Join Table B on a.id = b.id
  • Fungsi dan ekspresi harus beroperasi pada nama bidang dan menjadi bagian dari SELECT pernyataan dengan grup log yang ditentukan dalam FROM klausa.

    Misalnya, kueri ini tidak didukung:

    SELECT cos(10) FROM LogGroup

    Kueri ini didukung:

    SELECT cos(field1) FROM LogGroup

Rekomendasi Amazon S3

Jika Anda menggunakan OpenSearch Layanan Amazon untuk mengarahkan data kueri di Amazon S3, kami juga merekomendasikan hal berikut:

  • Menyerap data ke Amazon S3 menggunakan format partisi tahun, bulan, hari, jam untuk mempercepat kueri.

  • Saat Anda membuat indeks skipping, gunakan filter Bloom untuk bidang dengan kardinalitas tinggi dan min/max indeks untuk bidang dengan rentang nilai yang besar. Untuk bidang kardinalitas tinggi, pertimbangkan untuk menggunakan pendekatan berbasis nilai untuk meningkatkan efisiensi kueri.

  • Gunakan Manajemen Status Indeks untuk mempertahankan penyimpanan untuk tampilan terwujud dan indeks penutup.

CloudWatch Rekomendasi Log

Jika Anda menggunakan OpenSearch Layanan Amazon untuk mengarahkan data kueri di CloudWatch Log, kami juga merekomendasikan hal berikut:

  • Saat mencari beberapa grup log dalam satu kueri, gunakan sintaks yang sesuai. Untuk informasi selengkapnya, lihat Fungsi grup multi-log.

  • Saat menggunakan perintah SQL atau PPL, lampirkan bidang tertentu di backticks agar berhasil menanyakannya. Backticks diperlukan untuk bidang dengan karakter khusus (non-alfabet dan non-numerik). Misalnya, lampirkan@message, Operation.Export, dan Test::Field di backticks. Anda tidak perlu melampirkan kolom dengan nama abjad murni di backticks.

    Contoh kueri dengan bidang sederhana:

    SELECT SessionToken, Operation, StartTime FROM `LogGroup-A` LIMIT 1000;

    Kueri serupa dengan backticks ditambahkan:

    SELECT `@SessionToken`, `@Operation`, `@StartTime` FROM `LogGroup-A` LIMIT 1000;

Rekomendasi Danau Keamanan

Jika Anda menggunakan OpenSearch Layanan Amazon untuk mengarahkan data kueri di Security Lake, kami juga merekomendasikan hal berikut: