Menggunakan SSAS di Amazon RDS - Layanan Basis Data Relasional Amazon

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

Menggunakan SSAS di Amazon RDS

Setelah menerapkan SSAS proyek, Anda dapat langsung memproses OLAP database. SSMS

Untuk digunakan SSAS pada RDS
  1. DiSSMS, sambungkan SSAS menggunakan nama pengguna dan kata sandi untuk domain Active Directory.

  2. Perluas Basis data. SSASDatabase yang baru digunakan muncul.

  3. Temukan string koneksi, dan perbarui nama pengguna dan kata sandi untuk memberikan akses ke SQL database sumber. Melakukan hal ini diperlukan untuk memproses SSAS objek.

    1. Untuk mode Tabel, lakukan hal berikut:

      1. Perluas tab Koneksi.

      2. Buka menu konteks (klik kanan) untuk , lalu pilih Properti.

      3. Perbarui nama pengguna dan kata sandi dalam string koneksi.

    2. Untuk mode Multidimensi, lakukan hal berikut:

      1. Perluas tab Sumber Data.

      2. Buka menu konteks (klik kanan) untuk objek sumber data, lalu pilih Properti.

      3. Perbarui nama pengguna dan kata sandi dalam string koneksi.

  4. Buka menu konteks (klik kanan) untuk SSAS database yang Anda buat dan pilih Process Database.

    Bergantung pada ukuran data input, operasi pemrosesan akan memakan waktu beberapa menit untuk selesai.

Menyiapkan pengguna yang diautentikasi Windows untuk SSAS

Pengguna utama dapat (kadang dipanggil pengguna master) menggunakan contoh kode berikut untuk menyiapkan login yang diautentikasi Windows dan memberikan izin prosedur yang diperlukan. Melakukan hal ini memberikan izin kepada pengguna domain untuk menjalankan tugas SSAS pelanggan, menggunakan prosedur transfer file S3, membuat kredensyal, dan bekerja dengan proxy Agen Server. SQL Untuk informasi selengkapnya, lihat Kredensial (mesin database) dan Membuat proxy Agen SQL Server di dokumentasi Microsoft.

Anda dapat memberikan beberapa atau semua izin berikut sesuai kebutuhan kepada pengguna yang diautentikasi Windows.

-- Create a server-level domain user login, if it doesn't already exist USE [master] GO CREATE LOGIN [mydomain\user_name] FROM WINDOWS GO -- Create domain user, if it doesn't already exist USE [msdb] GO CREATE USER [mydomain\user_name] FOR LOGIN [mydomain\user_name] GO -- Grant necessary privileges to the domain user USE [master] GO GRANT ALTER ANY CREDENTIAL TO [mydomain\user_name] GO USE [msdb] GO GRANT EXEC ON msdb.dbo.rds_msbi_task TO [mydomain\user_name] with grant option GRANT SELECT ON msdb.dbo.rds_fn_task_status TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_task_status TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_cancel_task TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_download_from_s3 TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_upload_to_s3 TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_delete_from_filesystem TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_gather_file_details TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_add_proxy TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_update_proxy TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_grant_login_to_proxy TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_revoke_login_from_proxy TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_delete_proxy TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_enum_login_for_proxy to [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.sp_enum_proxy_for_subsystem TO [mydomain\user_name] with grant option GRANT EXEC ON msdb.dbo.rds_sqlagent_proxy TO [mydomain\user_name] with grant option ALTER ROLE [SQLAgentUserRole] ADD MEMBER [mydomain\user_name] GO

Menambahkan pengguna domain sebagai administrator basis data

Anda dapat menambahkan pengguna domain sebagai administrator SSAS database dengan cara berikut:

  • Administrator database dapat menggunakan SSMS untuk membuat peran dengan admin hak istimewa, lalu menambahkan pengguna ke peran itu.

  • Anda dapat menggunakan prosedur penyimpanan berikut.

    exec msdb.dbo.rds_msbi_task @task_type='SSAS_ADD_DB_ADMIN_MEMBER', @database_name='myssasdb', @ssas_role_name='exampleRole', @ssas_role_member='domain_name\domain_user_name';

    Parameter-parameter berikut diperlukan:

    • @task_type— Jenis MSBI tugas, dalam hal iniSSAS_ADD_DB_ADMIN_MEMBER.

    • @database_name— Nama SSAS database tempat Anda memberikan hak administrator.

    • @ssas_role_name— Nama peran administrator SSAS database. Jika peran tersebut belum ada, ini akan dibuat.

    • @ssas_role_member— Pengguna SSAS database yang Anda tambahkan ke peran administrator.

Membuat SSAS proxy

Untuk dapat menjadwalkan pemrosesan SSAS database menggunakan SQL Server Agent, buat SSAS kredensi dan SSAS proxy. Jalankan prosedur ini sebagai pengguna yang diautentikasi Windows.

Untuk membuat SSAS kredensyal
  • Buat kredensial untuk proksi. Untuk melakukan ini, Anda dapat menggunakan SSMS atau SQL pernyataan berikut.

    USE [master] GO CREATE CREDENTIAL [SSAS_Credential] WITH IDENTITY = N'mydomain\user_name', SECRET = N'mysecret' GO
    catatan

    IDENTITY harus merupakan kredensial login yang diautentikasi domain. Ganti mysecret dengan kata sandi untuk kredensial login yang diautentikasi domain.

Untuk membuat SSAS proxy
  1. Gunakan SQL pernyataan berikut untuk membuat proxy.

    USE [msdb] GO EXEC msdb.dbo.sp_add_proxy @proxy_name=N'SSAS_Proxy',@credential_name=N'SSAS_Credential',@description=N'' GO
  2. Gunakan SQL pernyataan berikut untuk memberikan akses ke proxy ke pengguna lain.

    USE [msdb] GO EXEC msdb.dbo.sp_grant_login_to_proxy @proxy_name=N'SSAS_Proxy',@login_name=N'mydomain\user_name' GO
  3. Gunakan SQL pernyataan berikut untuk memberikan SSAS subsistem akses ke proxy.

    USE [msdb] GO EXEC msdb.dbo.rds_sqlagent_proxy @task_type='GRANT_SUBSYSTEM_ACCESS',@proxy_name='SSAS_Proxy',@proxy_subsystem='SSAS' GO
Untuk melihat proksi dan izin pada proksi
  1. Gunakan SQL pernyataan berikut untuk melihat penerima hibah proxy.

    USE [msdb] GO EXEC sp_help_proxy GO
  2. Gunakan SQL pernyataan berikut untuk melihat hibah subsistem.

    USE [msdb] GO EXEC msdb.dbo.sp_enum_proxy_for_subsystem GO

Penjadwalan pemrosesan SSAS basis data menggunakan SQL Server Agent

Setelah Anda membuat kredensi dan proxy dan memberikan SSAS akses ke proxy, Anda dapat membuat pekerjaan Agen SQL Server untuk menjadwalkan pemrosesan SSAS basis data.

Untuk menjadwalkan pemrosesan SSAS basis data
  • Gunakan SSMS atau T- SQL untuk membuat pekerjaan Agen SQL Server. Contoh berikut menggunakan T-SQL. Anda dapat lebih lanjut mengkonfigurasi jadwal pekerjaannya melalui SSMS atau T-SQL.

    • @commandParameter menguraikan perintah XML for Analysis (XMLA) yang akan dijalankan oleh pekerjaan Agen SQL Server. Contoh ini mengkonfigurasi pemrosesan database SSAS Multidimensional.

    • @serverParameter menguraikan nama SSAS server target dari pekerjaan Agen SQL Server.

      Untuk memanggil SSAS layanan dalam instance RDS DB yang sama di mana pekerjaan Agen SQL Server berada, gunakanlocalhost:2383.

      Untuk memanggil SSAS layanan dari luar instans RDS DB, gunakan RDS titik akhir. Anda juga dapat menggunakan titik akhir Kerberos Active Directory (AD) (your-DB-instance-name.your-AD-domain-name) jika instans RDS DB digabungkan dengan domain yang sama. Untuk instans DB eksternal, pastikan untuk mengonfigurasi grup VPC keamanan yang terkait dengan instans RDS DB dengan benar untuk koneksi yang aman.

    Anda dapat mengedit kueri lebih lanjut untuk mendukung berbagai XMLA operasi. Lakukan pengeditan baik dengan langsung memodifikasi SQL T-query atau dengan menggunakan SSMS UI berikut pembuatan pekerjaan Agen SQL Server.

    USE [msdb] GO DECLARE @jobId BINARY(16) EXEC msdb.dbo.sp_add_job @job_name=N'SSAS_Job', @enabled=1, @notify_level_eventlog=0, @notify_level_email=0, @notify_level_netsend=0, @notify_level_page=0, @delete_level=0, @category_name=N'[Uncategorized (Local)]', @job_id = @jobId OUTPUT GO EXEC msdb.dbo.sp_add_jobserver @job_name=N'SSAS_Job', @server_name = N'(local)' GO EXEC msdb.dbo.sp_add_jobstep @job_name=N'SSAS_Job', @step_name=N'Process_SSAS_Object', @step_id=1, @cmdexec_success_code=0, @on_success_action=1, @on_success_step_id=0, @on_fail_action=2, @on_fail_step_id=0, @retry_attempts=0, @retry_interval=0, @os_run_priority=0, @subsystem=N'ANALYSISCOMMAND', @command=N'<Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine"> <Parallel> <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ddl2="http://schemas.microsoft.com/analysisservices/2003/engine/2" xmlns:ddl2_2="http://schemas.microsoft.com/analysisservices/2003/engine/2/2" xmlns:ddl100_100="http://schemas.microsoft.com/analysisservices/2008/engine/100/100" xmlns:ddl200="http://schemas.microsoft.com/analysisservices/2010/engine/200" xmlns:ddl200_200="http://schemas.microsoft.com/analysisservices/2010/engine/200/200" xmlns:ddl300="http://schemas.microsoft.com/analysisservices/2011/engine/300" xmlns:ddl300_300="http://schemas.microsoft.com/analysisservices/2011/engine/300/300" xmlns:ddl400="http://schemas.microsoft.com/analysisservices/2012/engine/400" xmlns:ddl400_400="http://schemas.microsoft.com/analysisservices/2012/engine/400/400" xmlns:ddl500="http://schemas.microsoft.com/analysisservices/2013/engine/500" xmlns:ddl500_500="http://schemas.microsoft.com/analysisservices/2013/engine/500/500"> <Object> <DatabaseID>Your_SSAS_Database_ID</DatabaseID> </Object> <Type>ProcessFull</Type> <WriteBackTableCreation>UseExisting</WriteBackTableCreation> </Process> </Parallel> </Batch>', @server=N'localhost:2383', @database_name=N'master', @flags=0, @proxy_name=N'SSAS_Proxy' GO

Mencabut SSAS akses dari proxy

Anda dapat mencabut akses ke SSAS subsistem dan menghapus SSAS proxy menggunakan prosedur tersimpan berikut.

Untuk mencabut akses dan menghapus proksi
  1. Mencabut akses subsistem.

    USE [msdb] GO EXEC msdb.dbo.rds_sqlagent_proxy @task_type='REVOKE_SUBSYSTEM_ACCESS',@proxy_name='SSAS_Proxy',@proxy_subsystem='SSAS' GO
  2. Mencabut izin pada proksi.

    USE [msdb] GO EXEC msdb.dbo.sp_revoke_login_from_proxy @proxy_name=N'SSAS_Proxy',@name=N'mydomain\user_name' GO
  3. Hapus proksi.

    USE [msdb] GO EXEC dbo.sp_delete_proxy @proxy_name = N'SSAS_Proxy' GO