Gunakan driver ODBC Azure Cosmos DB untuk menghubungkan ke BI serta alat analitik data
BERLAKU UNTUK: NoSQL
Artikel ini mendampingi Anda dalam penginstalan dan penggunaan driver ODBC Azure Cosmos DB untuk membuat tabel dan tampilan yang dinormalisasi untuk data Azure Cosmos DB Anda. Anda bisa mengkueri data yang dinormalisasi dengan kueri SQL, atau mengimpor data ke Power BI atau perangkat lunak BI dan analitik lainnya untuk membuat laporan serta visualisasi.
Azure Cosmos DB adalah database tanpa skema, yang memungkinkan pengembangan aplikasi yang cepat dan berkemampuan untuk melakukan iterasi pada model data tanpa terbatas pada skema yang ketat. Satu database Azure Cosmos DB dapat berisi dokumen JSON dari berbagai struktur. Untuk menganalisis atau melaporkan data ini, Anda mungkin harus meratakan data agar sesuai dengan skema.
Dengan menggunakan driver ODBC, Anda sekarang bisa menormalkan ulang data di Azure Cosmos DB ke dalam tabel dan tampilan yang sesuai dengan analitik data dan kebutuhan pelaporan Anda. Skema yang dinormalisasi memungkinkan Anda untuk menggunakan alat yang mematuhi ODBC untuk mengakses data. Skema tidak berpengaruh pada data yang mendasar, dan tidak mengharuskan pengembang untuk mematuhinya. Driver ODBC membantu membuat database Azure Cosmos DB berguna untuk analis data dan tim pengembangan.
Anda dapat melakukan operasi SQL terhadap tabel dan tampilan yang dinormalisasi, termasuk mengelompokkan menurut kueri, menyisipkan, memperbarui, dan menghapus. Driver-nya adalah ODBC 3.8 sesuai dan mendukung sintaks ANSI SQL-92.
Penting
Pertimbangkan untuk menggunakan Azure Synapse Link for Azure Cosmos DB untuk membuat tabel dan tampilan untuk data Anda. Synapse Link memiliki manfaat performa yang berbeda untuk himpunan data besar melalui driver ODBC. Anda juga dapat menghubungkan data Azure Cosmos DB yang dinormalisasi ke solusi perangkat lunak lain, seperti SQL Server Integration Services (SSIS), QlikSense, Tableau, dan perangkat lunak analitik lainnya, BI, dan alat integrasi data. Anda bisa menggunakan solusi tersebut untuk menganalisis, memindahkan, mengubah, serta membuat visualisasi dengan data Azure Cosmos DB Anda.
Penting
- Menyambungkan ke Azure Cosmos DB dengan driver ODBC saat ini hanya didukung untuk Azure Cosmos DB untuk NoSQL.
- Driver ODBC saat ini tidak mendukung pushdown agregat dan memiliki masalah umum dengan banyak alat analitik. Hingga versi baru dirilis, Anda bisa menggunakan salah satu alternatif berikut:
- Azure Synapse Link adalah solusi analitik pilihan untuk Azure Cosmos DB. Dengan Azure Synapse Link dan Azure Synapse kumpulan tanpa server SQL, Anda dapat menggunakan alat BI apa pun untuk mengekstrak wawasan mendekati real-time dari data Azure Cosmos DB SQL atau API untuk MongoDB.
- Untuk Power BI, Anda bisa menggunakan konektor Azure Cosmos DB untuk Power BI.
- Untuk Qlik Sense, lihat Koneksi Qlik Sense ke Azure Cosmos DB.
Pasang driver ODBC dan sambungkan ke database Anda
Unduh driver untuk lingkungan Anda:
Installer Sistem operasi yang didukung Microsoft Azure Cosmos DB ODBC 64-bit.msi untuk Windows 64-bit Versi 64-bit Windows 8.1 atau yang lebih baru, Windows 8, Windows 7. Windows Server 2012 R2 versi 64-bit, Windows Server 2012, dan Windows Server 2008 R2. Microsoft Azure Cosmos DB ODBC 32x64-bit.msi untuk 32-bit pada Windows 64-bit Versi 64-bit Windows 8.1 atau yang lebih baru, Windows 8, Windows 7, Windows XP, Windows Vista. Windows Server 2012 R2 versi 64-bit, Windows Server 2012, Windows Server 2008 R2, dan Windows Server 2003. Microsoft Azure Cosmos DB ODBC 32-bit.msi untuk Windows 32-bit Windows 8.1 versi 32-bit atau yang lebih baru, Windows 8, Windows 7, Windows XP, dan Windows Vista. Jalankan file .msi secara lokal, yang memulai Wizard Penginstalan Driver ODBC Microsoft Azure Cosmos DB.
Selesaikan wizard penginstalan menggunakan masukan default untuk menginstal driver ODBC.
Setelah penginstalan driver, ketik sumber Data ODBC di kotak pencarian Windows, dan buka Administrator Sumber Data ODBC.
Pastikan bahwa Driver ODBC Microsoft Azure DocumentDB tercantum pada tab Driver.
Pilih tab DSN Pengguna, lalu pilih Tambahkan untuk membuat nama sumber data (DSN) baru. Anda juga bisa membuat sebuah DSN Sistem.
Di jendela Buat Sumber Data Baru, pilih Driver ODBC Microsoft Azure Cosmos DB, lalu klik Selesai.
Di jendela Penyiapan SDN Driver ODBC Azure Cosmos DB, isi informasi berikut:
- Nama Sumber Data: Nama yang ramah untuk DSN ODBC. Nama ini termasuk unik untuk akun Azure Cosmos DB ini.
- Deskripsi: Deskripsi singkat tentang sumber data.
- Host: URI untuk akun Azure Cosmos DB Anda. Anda bisa mendapatkan informasi ini dari halaman Kunci di akun Azure Cosmos DB Anda di portal Microsoft Azure.
- Kunci Akses: Kunci utama atau sekunder, baca-tulis atau baca-saja dari halaman Kunci Azure Cosmos DB di portal Microsoft Azure. Yang terbaik adalah menggunakan kunci baca-saja, apabila Anda menggunakan DSN untuk pemrosesan serta pelaporan data baca-saja.
Untuk menghindari kesalahan autentikasi, gunakan tombol salin untuk menyalin URI dan kunci dari portal Microsoft Azure.
- Kunci Akses Enkripsi untuk: Pilih pilihan terbaik berdasarkan pengguna komputer ini.
Klik Uji untuk memastikan Anda bisa terhubung ke akun Azure Cosmos DB Anda.
Klik Opsi Tingkat Lanjut dan atur nilai-nilai berikut ini:
Versi REST API: Pilih versi REST API untuk operasi Anda. Secara default adalah 2015-12-16.
Jika Anda memiliki kontainer dengan kunci partisi besar yang memerlukan versi
2018-12-31
REST API, ketik2018-12-31
, lalu ikuti langkah-langkah di akhir prosedur ini.Konsistensi Kueri: Pilih tingkat konsistensi untuk operasi Anda. Defaultnya adalah Sesi.
Jumlah Percobaan Kembali: Masukkan jumlah percobaan kembali untuk sebuah operasi jika permintaan awal tidak selesai karena pembatasan tarif layanan.
File Skema: Apabila Anda tidak memilih file skema, driver memindai halaman pertama data untuk setiap kontainer untuk menentukan skemanya, yang disebut pemetaan kontainer, untuk setiap sesi. Proses ini bisa menyebabkan waktu mulai yang lama untuk aplikasi yang menggunakan DSN. Yang terbaik adalah mengaitkan file skema ke DSN.
Jika Anda sudah mempunyai file skema, pilih Telusuri, navigasi ke file, pilih Simpan, lalu pilih OK.
Jika Anda belum mempunyai file skema, pilih OK, lalu ikuti langkah-langkah di bagian berikutnya untuk membuat sebuah definisi skema. Setelah Anda membuat skema, kembali ke jendela Opsi Tingkat Lanjut ini untuk menambahkan file skema.
Setelah Anda memilih OK untuk menyelesaikan serta menutup jendela Penyetelan DSN Driver ODBC DocumentDB, DSN Pengguna baru muncul pada tab DSN Pengguna dari jendela Administrator Sumber Data ODBC.
Edit registri Windows untuk mendukung REST API versi 2018-12-31
Jika Anda mempunyai kontainer dengan kunci partisi besar yang memerlukan REST API versi 2018-12-31, ikuti langkah-langkah ini untuk memperbarui registri Windows untuk mendukung versi ini.
Di menu Mulai Windows, ketik regedit untuk menemukan serta membuka aplikasi Editor Registri.
Di Editor Registri, navigasi ke jalur: Computer\HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI.
Buat sebuah subkey baru dengan nama yang sama dengan DSN Anda, misalnya Akun Contoso ODBC DSN.
Navigasi ke subkey DSN ODBC Akun Contoso baru, dan klik kanan untuk menambahkan nilai String baru:
Nama Nilai: IgnoreSessionToken
Data nilai: 1
Membuat sebuah definisi skema
Ada dua jenis metode pengambilan sampel yang bisa Anda gunakan untuk membuat skema: pemetaan kontainer atau pemetaan pembatas tabel. Sebuah sesi pengambilan sampel bisa menggunakan kedua metode pengambilan sampel, tetapi setiap kontainer hanya bisa menggunakan metode pengambilan sampel tertentu. Metode mana yang akan digunakan tergantung pada karakteristik data Anda.
Pemetaan kontainer mengambil data pada halaman kontainer untuk menentukan struktur data, serta mengubah urutan kontainer ke tabel di sisi ODBC. Metode pengambilan sampel ini efisien dan cepat ketika data dalam kontainer homogen.
Pemetaan pemisah tabel menyediakan pengambilan sampel yang lebih kuat untuk data heterogen. Metode ini mencakup pengambilan sampel ke sekumpulan atribut dan nilai yang sesuai.
Misalnya, jika dokumen berisi properti Jenis, Anda dapat mencakup pengambilan sampel ke nilai properti ini. Hasil akhir pengambilan sampel adalah sekumpulan tabel untuk setiap nilai untuk Jenis yang telah Anda tentukan. Jenis = Mobil menghasilkan sebuah tabel Mobil, sedangkan Jenis = Pesawat menghasilkan tabel Pesawat.
Untuk menentukan sebuah skema, ikuti langkah-langkah ini. Untuk metode pemetaan pemisah tabel, Anda mengambil langkah tambahan untuk menentukan atribut serta nilai untuk skema.
Pada tab DSN Pengguna dari jendela Administrator Sumber Data ODBC, pilih Nama DSN Pengguna Azure Cosmos DB Anda, kemudian pilih Konfigurasikan.
Di jendela Penyetelan DSN Driver ODBC DOCUMENTDB, pilih Editor Skema.
Di jendela Editor Skema, klik Buat Baru.
Jendela Hasilkan Skema menampilkan semua kontainer di akun Azure Cosmos DB. Pilih kotak centang di samping kontainer yang ingin Anda jadikan sampel.
Untuk menggunakan metode pemetaan kontainer, pilih Sampel.
Atau, untuk menggunakan pemetaan pemisah tabel, lakukan langkah-langkah berikut untuk menentukan atribut serta nilai untuk cakupan sampel.
Pilih Edit di kolom Definisi Pemetaan untuk DSN Anda.
Di jendela Definisi Pemetaan, di Metode Pemetaan, pilih metode Pembatas Tabel.
Dalam kotak Atribut, ketik nama properti pemisah di dokumen yang ingin Anda cakup pengambilan sampelnya, misalnya, City. Tekan Enter.
Jika Anda hanya ingin mencakup pengambilan sampel ke nilai tertentu untuk atribut yang Anda masukkan, pilih atribut, kemudian masukkan nilai dalam kotak Nilai, misalnya Seattle, dan tekan Enter. Anda bisa terus menambahkan beberapa nilai untuk atribut. Pastikan bahwa atribut yang benar dipilih ketika Anda memasukkan nilai.
Setelah Anda selesai memasukkan atribut dan nilai, pilih OK.
Di jendela Hasilkan Skema, pilih Sampel.
Di tab Tampilan Desain, saring skema Anda. Tampilan Desain mewakili database, skema, serta tabel. Tampilan tabel menampilkan sekumpulan properti yang terkait dengan nama kolom, seperti Nama SQL dan Nama Sumber.
Untuk setiap kolom, Anda bisa memodifikasi nama SQL, jenis SQL, panjang SQL, Skala, Presisi, dan Nullable jika berlaku.
Anda bisa mengatur Sembunyikan Kolom ke true jika Anda ingin mengecualikan kolom tersebut dari hasil kueri. Kolom bertanda Sembunyikan Kolom = true tidak dikembalikan untuk pemilihan dan proyeksi, meskipun kolom-kolom tersebut masih menjadi bagian dari skema. Misalnya, Anda bisa menyembunyikan semua properti yang diperlukan sistem Azure Cosmos DB yang dimulai dengan _. Kolom id adalah satu-satunya bidang yang tidak bisa Anda sembunyikan, karena ini adalah kunci utama dalam skema yang dinormalisasi.
Setelah Anda selesai menentukan skema, pilih File>Simpan, navigasikan ke direktori untuk menyimpan, dan pilih Simpan.
Untuk menggunakan skema ini dengan DSN, di jendela Penyetelan DSN Driver ODBC DocumentDB, pilih Opsi Tingkat Lanjut. Pilih kotak File Skema, navigasikan ke skema yang disimpan, pilih OK kemudian pilih OK lagi. Menyimpan file skema ke memodifikasi koneksi DSN ke cakupan ke data dan struktur yang ditentukan oleh skema.
Membuat tampilan
Secara opsional, Anda bisa menentukan serta membuat tampilan di Editor Skema sebagai bagian dari proses pengambilan sampel. Tampilan ini setara dengan tampilan SQL. Tampilan hanya membaca saja, dan cakup ke pilihan serta proyeksi dari kueri Azure Cosmos DB SQL yang ditentukan.
Ikuti langkah-langkah ini untuk membuat sebuah tampilan untuk data Anda:
Pada tab Tampilan Sampel dari jendela Editor Skema, pilih kontainer yang ingin Anda jadikan sampel, lalu pilih Tambahkan di kolom Tampilkan Definisi.
Di jendela Tampilkan Definisi, pilih Baru. Masukkan nama untuk tampilan, misalnya EmployeesfromSeattleView, kemudian klik OK.
Di jendela Edit tampilan, masukkan kueri Azure Cosmos DB, misalnya:
SELECT c.City, c.EmployeeName, c.Level, c.Age, c.Manager FROM c WHERE c.City = "Seattle"
PilihOK.
Anda bisa membuat banyak tampilan sesuka Anda. Setelah Anda selesai menentukan tampilan, pilih Sampel untuk mengambil sampel data.
Penting
Teks kueri dalam definisi tampilan tidak boleh berisi jeda baris. Jika tidak, kita akan mendapatkan kesalahan umum saat mempratinjau tampilan.
Kueri dengan SQL Server Management Studio
Setelah menyiapkan DSN Pengguna Driver ODBC Azure Cosmos DB, Anda bisa mengkueri Azure Cosmos DB dari SQL Server Management Studio (SSMS) dengan menyiapkan koneksi server yang ditautkan.
Instal SQL Server Management Studio dan sambungkan ke server.
Di editor kueri SQL Server Management Studio, buat objek server tertaut untuk sumber data dengan menjalankan perintah-perintah berikut. Ganti
DEMOCOSMOS
dengan nama untuk server tertaut Anda, danSDS Name
dengan nama sumber data sistem Anda.USE [master] GO EXEC master.dbo.sp_addlinkedserver @server = N'DEMOCOSMOS', @srvproduct=N'', @provider=N'MSDASQL', @datasrc=N'SDS Name' EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'DEMOCOSMOS', @useself=N'False', @locallogin=NULL, @rmtuser=NULL, @rmtpassword=NULL GO
Untuk melihat nama server tertaut yang baru, refresh daftar server tertaut.
Untuk mengkueri database yang ditautkan, masukkan kueri SSMS. Dalam contoh ini, kueri memilih dari tabel dalam kontainer bernama customers
:
SELECT * FROM OPENQUERY(DEMOCOSMOS, 'SELECT * FROM [customers].[customers]')
Mengeksekusi kueri. Hasilnya seharusnya mirip dengan output berikut ini:
attachments/ 1507476156 521 Bassett Avenue, Wikieup, Missouri, 5422 "2602bc56-0000-0000-0000-59da42bc0000" 2015-02-06T05:32:32 +05:00 f1ca3044f17149f3bc61f7b9c78a26df
attachments/ 1507476156 167 Nassau Street, Tuskahoma, Illinois, 5998 "2602bd56-0000-0000-0000-59da42bc0000" 2015-06-16T08:54:17 +04:00 f75f949ea8de466a9ef2bdb7ce065ac8
attachments/ 1507476156 885 Strong Place, Cassel, Montana, 2069 "2602be56-0000-0000-0000-59da42bc0000" 2015-03-20T07:21:47 +04:00 ef0365fb40c04bb6a3ffc4bc77c905fd
attachments/ 1507476156 515 Barwell Terrace, Defiance, Tennessee, 6439 "2602c056-0000-0000-0000-59da42bc0000" 2014-10-16T06:49:04 +04:00 e913fe543490432f871bc42019663518
attachments/ 1507476156 570 Ruby Street, Spokane, Idaho, 9025 "2602c156-0000-0000-0000-59da42bc0000" 2014-10-30T05:49:33 +04:00 e53072057d314bc9b36c89a8350048f3
Lihat data Anda di Power BI Desktop
Anda bisa menggunakan DSN untuk menghubungkan ke Azure Cosmos DB dengan alat yang sesuai dengan ODBC. Prosedur ini memperlihatkan kepada Anda cara menghubungkan ke Power BI Desktop untuk membuat sebuah visualisasi Power BI.
Di Power BI Desktop, pilih Dapatkan Data.
Di jendela Dapatkan Data, pilihODBC>Lainnya, lalu pilih Sambungkan.
Di jendela Dari ODBC, pilih nama sumber data yang Anda buat, kemudian klik OK.
Di jendela Akses sumber data menggunakan driver ODBC, pilih Default atau Kustom kemudian klik Sambungkan.
Di jendela Navigator, di panel kiri, perluas database, skema, kemudian pilih tabel. Panel hasil menyertakan data menggunakan skema yang Anda buat.
Untuk memvisualisasikan data di desktop Power BI, centang kotak di depan nama tabel, lalu klik Muat.
Di Power BI Desktop, pilih tab Data di sisi kiri layar untuk mengonfirmasi bahwa data Anda diimpor.
Pilih tab Laporan di sisi kiri layar, pilih Visual baru dari pita, lalu kustomisasi visual.
Pemecahan Masalah
Masalah: Anda mendapati kesalahan berikut saat mencoba menghubungkan:
[HY000]: [Microsoft][Azure Cosmos DB] (401) HTTP 401 Authentication Error: {"code":"Unauthorized","message":"The input authorization token can't serve the request. Please check that the expected payload is built as per the protocol, and check the key being used. Server used the following payload to sign: 'get\ndbs\n\nfri, 20 jan 2017 03:43:55 gmt\n\n'\r\nActivityId: 9acb3c0d-cb31-4b78-ac0a-413c8d33e373"}
Solusi: Pastikan nilai Host dan Kunci Akses yang Anda salin dari portal Microsoft Azure sudah benar, kemudian coba lagi.
Masalah: Anda mendapati kesalahan berikut di SQL Server Management Studio ketika mencoba membuat server Azure Cosmos DB yang ditautkan:
Msg 7312, Level 16, State 1, Line 44 Invalid use of schema or catalog for OLE DB provider "MSDASQL" for linked server "DEMOCOSMOS". A four-part name was supplied, but the provider does not expose the necessary interfaces to use a catalog or schema.
Solusi: Server Azure Cosmos DB yang ditautkan tidak mendukung penamaan empat bagian.
Langkah berikutnya
- Untuk mempelajari selengkapnya tentang Azure Cosmos DB, lihat Selamat Datang di Azure Cosmos DB.
- Untuk informasi selengkapnya tentang membuat visualisasi di Power BI Desktop, lihat Jenis visualisasi di Power BI.