Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memulai dengan driver JDBC 3.x
Gunakan informasi di bagian ini untuk memulai dengan driver Amazon Athena JDBC 3.x.
Topik
Petunjuk Instalasi
Anda dapat menggunakan driver JDBC 3.x dalam aplikasi khusus atau dari SQL klien pihak ketiga.
Dalam aplikasi khusus
Unduh .zip
file yang berisi jar driver dan dependensinya. Setiap dependensi memiliki .jar
file sendiri. Tambahkan jar driver sebagai dependensi dalam aplikasi kustom Anda. Secara selektif tambahkan dependensi jar driver berdasarkan apakah Anda telah menambahkan dependensi tersebut ke aplikasi Anda dari sumber lain.
Di SQL klien pihak ketiga
Unduh file jar uber driver dan tambahkan ke SQL klien pihak ketiga mengikuti instruksi untuk klien itu.
Menjalankan pengemudi
Untuk menjalankan driver, Anda dapat menggunakan aplikasi khusus atau SQL klien pihak ketiga.
Dalam aplikasi khusus
Gunakan JDBC antarmuka untuk berinteraksi dengan JDBC driver dari suatu program. Kode berikut menunjukkan contoh aplikasi Java kustom.
public static void main(String args[]) throws SQLException { Properties connectionParameters = new Properties(); connectionParameters.setProperty("Workgroup", "primary"); connectionParameters.setProperty("Region", "us-east-2"); connectionParameters.setProperty("Catalog", "AwsDataCatalog"); connectionParameters.setProperty("Database","sampledatabase"); connectionParameters.setProperty("OutputLocation","s3://amzn-s3-demo-bucket"); connectionParameters.setProperty("CredentialsProvider","DefaultChain"); String url = "jdbc:athena://"; AthenaDriver driver = new AthenaDriver(); Connection connection = driver.connect(url, connectionParameters); Statement statement = connection.createStatement(); String query = "SELECT * from sample_table LIMIT 10"; ResultSet resultSet = statement.executeQuery(query); printResults(resultSet); // A custom-defined method for iterating over a // result set and printing its contents }
Di SQL klien pihak ketiga
Ikuti dokumentasi untuk SQL klien yang Anda gunakan. Biasanya, Anda menggunakan antarmuka pengguna grafis SQL klien untuk memasukkan dan mengirimkan kueri, dan hasil kueri ditampilkan dalam antarmuka yang sama.
Mengkonfigurasi driver
Anda dapat menggunakan parameter koneksi untuk mengonfigurasi driver Amazon AthenaJDBC. Untuk parameter koneksi yang didukung, lihatParameter koneksi Amazon Athena JDBC 3.x.
Dalam aplikasi khusus
Untuk mengatur parameter koneksi untuk JDBC driver dalam aplikasi khusus, lakukan salah satu hal berikut:
-
Tambahkan nama parameter dan nilainya ke
Properties
objek. Saat Anda meneleponConnection#connect
, lewati objek itu bersama denganURL. Sebagai contoh, lihat contoh aplikasi Java diMenjalankan pengemudi. -
Dalam string koneksi (theURL), gunakan format berikut untuk menambahkan nama parameter dan nilainya langsung setelah awalan protokol.
<parameterName>
=<parameterValue>
;Gunakan titik koma di akhir setiap pasangan nama/parameter nilai parameter, dan tidak meninggalkan spasi putih setelah titik koma, seperti pada contoh berikut.
String url = "jdbc:athena://WorkGroup=primary;Region=us-east-1;...;";AthenaDriver driver = new AthenaDriver();Connection connection = driver.connect(url, null);
catatan
Jika parameter ditentukan baik dalam string koneksi dan
Properties
objek, nilai dalam string koneksi diutamakan. Menentukan parameter yang sama di kedua tempat tidak disarankan. -
Tambahkan nilai parameter sebagai argumen untuk metode
AthenaDataSource
, seperti dalam contoh berikut.AthenaDataSource dataSource = new AthenaDataSource(); dataSource.setWorkGroup("primary"); dataSource.setRegion("us-east-2"); ... Connection connection = dataSource.getConnection(); ...
Di SQL klien pihak ketiga
Ikuti instruksi dari SQL klien yang Anda gunakan. Biasanya, klien menyediakan antarmuka pengguna grafis untuk memasukkan nama parameter dan nilainya.
Upgrade dari driver JDBC Athena v2
Sebagian besar parameter koneksi JDBC versi 3 kompatibel dengan driver versi 2 (Simba). JDBC Ini berarti bahwa string koneksi versi 2 dapat digunakan kembali dengan versi 3 driver. Namun, beberapa parameter koneksi telah berubah. Perubahan ini dijelaskan di sini. Saat Anda meningkatkan ke JDBC driver versi 3, perbarui konfigurasi yang ada jika perlu.
Kelas pengemudi
Beberapa alat BI meminta Anda untuk memberikan kelas driver dari .jar
file JDBC driver. Sebagian besar alat menemukan kelas ini secara otomatis. Nama kelas yang sepenuhnya memenuhi syarat dalam driver versi 3 adalahcom.amazon.athena.jdbc.AthenaDriver
. Di driver versi 2, kelasnyacom.simba.athena.jdbc.Driver
.
String koneksi
Driver versi 3 digunakan jdbc:athena://
untuk protokol di awal string JDBC koneksiURL. Driver versi 3 juga mendukung protokol versi 2jdbc:awsathena://
, tetapi penggunaan protokol versi 2 tidak digunakan lagi. Untuk menghindari perilaku yang tidak terdefinisi, versi 3 tidak menerima string koneksi yang dimulai dengan jdbc:awsathena://
jika versi 2 (atau driver lain yang menerima string koneksi yang dimulai denganjdbc:awsathena://
) telah terdaftar di kelas. DriverManager
Penyedia kredensyal
Driver versi 2 menggunakan nama yang sepenuhnya memenuhi syarat untuk mengidentifikasi penyedia kredensyal yang berbeda (misalnya,. com.simba.athena.amazonaws.auth.DefaultAWSCredentialsProviderChain
Driver versi 3 menggunakan nama yang lebih pendek (misalnya,DefaultChain
). Nama-nama baru dijelaskan di bagian yang sesuai untuk setiap penyedia kredensyal.
Penyedia kredensi khusus yang ditulis untuk driver versi 2 perlu dimodifikasi untuk driver versi 3 untuk mengimplementasikan AwsCredentialsProvider
PropertiesFileCredentialsProvider
Tidak didukung di driver JDBC 3.x. Penyedia digunakan dalam driver JDBC 2.x tetapi milik versi sebelumnya AWS SDK untuk Java yang mendekati akhir dukungan. Untuk mencapai fungsionalitas yang sama di driver JDBC 3.x, gunakan AWS
kredensial profil konfigurasi penyedia sebagai gantinya.
Tingkat log
Tabel berikut menunjukkan perbedaan LogLevel
parameter pada driver JDBC versi 2 dan versi 3.
JDBCversi driver | Nama parameter | Jenis parameter | Nilai default | Kemungkinan nilai | Contoh string koneksi |
---|---|---|---|---|---|
v2 | LogLevel |
Opsional | 0 | 0-6 | LogLevel=6; |
v3 | LogLevel |
Opsional | TRACE | OFF, ERROR, WARN, INFO, DEBUG, TRACE | LogLevel=INFO; |
Pengambilan ID kueri
Dalam driver versi 2, Anda membuka Statement
instance kecom.interfaces.core.IStatementQueryInfoProvider
, antarmuka yang memiliki dua metode: #getPReparedQueryId
dan#getQueryId
. Anda dapat menggunakan metode ini untuk mendapatkan ID eksekusi kueri dari kueri yang telah berjalan.
Dalam driver versi 3, Anda membuka, Statement
PreparedStatement
, dan ResultSet
instance ke antarmuka. com.amazon.athena.jdbc.AthenaResultSet
Antarmuka memiliki satu metode:#getQueryExecutionId
.