Można tworzyć, aktualizować, usuwać i udostępniać połączenia ze źródłami danych. Czynności te można wykonywać, będąc użytkownikiem Oracle Analytics z uprawnieniami "Autor zawartości DV".
Tematy:
Można utworzyć połączenie pozwalające na analizę danych w konkretnym źródle danych.
Szczegóły połączenia ze źródłem danych można aktualizować.
Jeśli jest edytowane połączenie SSL z bazą danych Oracle i trzeba użyć nowego pliku cwallet.sso
, należy nacisnąć przycisk Wybór dla pola Portfel klienta, po czym przejść do pliku cwallet.sso
. Informacje, gdzie znajduje się plik cwallet.sso
, można uzyskać od administratora.
Połączenie ze źródłem danych można usunąć z Oracle Analytics Cloud. Na przykład trzeba usunąć połączenie z bazą danych i utworzyć nowe, jeśli zostało zmienione hasło bazy danych.
Jeśli połączenie obejmuje jakiekolwiek zbiory danych, to - przed usunięciem połączenia - trzeba te zbiory usunąć.
Użytkownik może do połączeń źródeł danych, które utworzył lub którymi administruje, przypisywać uprawnienia dostępu.
Gdy szczegóły połączenia są określane za pomocą okna dialogowego "Utwórz połączenie" lub "Zbadaj", dla niektórych typów danych są dostępne dodatkowe opcje konfiguracyjne.
Opcje ogólne
sales.example.com =(DESCRIPTION= (ADDRESS_LIST= (LOAD_BALANCE=on)(FAILOVER=ON) (ADDRESS=(PROTOCOL=tcp)(HOST=123.45.67.111)(PORT=1521)) (ADDRESS=(PROTOCOL=tcp)(HOST=123.45.67.222)(PORT=1521)) (ADDRESS=(PROTOCOL=tcp)(HOST=123.45.67.333)(PORT=1521))) (CONNECT_DATA=(SERVICE_NAME= salesservice.example.com)))
Włącz replikację masową - Jeśli zbiór danych jest ładowany dla skoroszytu, opcja ta powinna być wyłączona i można ją zignorować. Jest ona zarezerwowana dla analityków danych i zaawansowanych użytkowników, którzy przeprowadzają replikację danych między bazami danych.
Opcje identyfikacji
Połączenie systemowe
Aby skopiować ID obiektu połączenia, należy kliknąć Kopiuj. Osoby odpowiedzialne za modele biznesowe, aby móc identyfikować połączenie z danymi i go używać, mogą wkleić ID obiektu w narzędziu Model Administration Tool (w oknie dialogowym "Pula połączeń").
Uwaga: jeśli użytkownik, tworząc połączenie, nie kliknie Połączenie systemowe, to później, aby osoby odpowiedzialne za modele danych mogły używać tego połączenia, konieczne będzie utworzenie nowego połączenia i wybranie opcji Połączenie systemowe. Inaczej mówiąc, nie można później edytować połączenia, aby wybrać tę opcję.
Przed przystąpieniem do tworzenia połączenia z bazą danych dobrze jest poznać jego ograniczenia.
Maksymalna liczba tabel bazy danych, wyświetlanych w Oracle Analytics, wynosi 10 000. Jeśli są potrzebne dodatkowe tabele, Oracle zaleca zwrócić się do administratora bazy danych o utworzenie użytkownika bazy danych mającego prawa dostępu do określonych obiektów, które będą analizowane. Następnie, tworząc połączenie z bazą danych, należy podać uwierzytelnienia tego użytkownika.
Łącząc się z bazą danych Oracle, Oracle Autonomous Data Warehouse, Oracle Transaction Processing, Snowflake, SQL Server lub My SQL, można zmienić domyślny identyfikator cytowania, tak aby było możliwe odczytywanie danych z wielkimi, małymi i mieszanymi literami w nazwach tabel lub kolumn.
select EfG_Field from AbCd;
(które zakończyłoby się niepowodzeniem) doda wówczas znaki cudzysłowu do używanej instrukcji SQL select "EfG_Field" from "AbCd";
.Korzystając z Oracle Analytics REST API, można programistycznie zarządzać połączeniami z różnymi źródłami danych. Na przykład można utworzyć skrypt tworzący lub modyfikujący ten sam zestaw połączeń zarówno w środowisku testowym Oracle Analytics Cloud, jak i w środowisku produkcyjnym.
Korzystając z REST API, można tworzyć, aktualizować i usuwać połączenia z różnymi źródłami danych. Przedstawiono tu typy połączeń ze źródłami danych, którymi to połączeniami można zarządzać za pomocą REST API.
Uwaga:
REST API for Oracle Analytics Cloud zawiera szczegółowe informacje o każdym z REST API. Zob. Connection REST Endpoints.Obsługiwane źródła danych
Parametry połączenia
Parametry połączeń, wymagane dla poszczególnych źródeł, różnią się. Zamierzając używać REST API do tworzenia lub aktualizowania połączenia, trzeba znać format ładunku JSON wymagany dla używanego źródła danych. Zob. Przykładowe ładunki JSON dla źródeł danych.
Przedstawiono tu typowe zadania związane z rozpoczęciem używania Oracle Analytics Cloud REST API do programistycznego zarządzania połączeniami. Używając po raz pierwszy REST API, można potraktować te zadania jako wytyczne.
Zadanie | Opis | Dokumentacja REST API |
---|---|---|
Zrozumienie wymagań wstępnych |
Zrozumienie i wykonanie kilku wymaganych wstępnie zadań. Do zarządzania połączenia z danymi z użyciem REST API są wymagane w Oracle Analytics Cloud uprawnienia do tworzenia skoroszytów i łączenia się z danymi (autor zawartości DV). |
Wymagania wstępne |
Zrozumienie identyfikacji za pomocą tokenów OAuth 2.0 | Identyfikacja i autoryzacja w Oracle Analytics Cloud są zarządzane przez Oracle Identity Cloud Service. Do uzyskania dostępu do Oracle Analytics Cloud REST API jest potrzebny token dostępu OAuth 2.0, służący do autoryzacji. | OAuth 2.0 Token Authentication |
Zrozumienie obsługiwanych źródeł danych | Zapoznanie się z tematem opisującym typy połączeń, którymi można zarządzać za pomocą REST API. | Obsługiwane źródła danych |
Ustalenie formatów ładunku JSON | Zapoznanie się z tematem opisującym format ładunku JSON dla używanego źródła danych oraz uzyskać wymagane parametry połączenia. | Przykładowe ładunki JSON dla źródeł danych |
Utworzenie połączenia | Utworzenie połączenia z danymi, które będzie używane w skoroszytach, raportach i pulpitach informacyjnych. | Tworzenie połączenia (wersja poglądowa) |
Zaktualizowanie połączenia | Zaktualizowanie właściwości istniejącego połączenia z danymi. | Aktualizowanie połączenia (wersja poglądowa) |
Usunięcie połączenia | Usunięcie połączenia z danymi | Usuwanie połączenia (wersja poglądowa) |
Podane przykłady mogą pomóc w zarządzaniu połączeniami ze źródłami danych za pomocą żądań REST API z użyciem poleceń cURL.
Przykładowy format cURL
curl --header "Authorization: Bearer <token>" --header "Content-Type: application/json" --request POST|PUT https://<hostname>/api/20210901/catalog/connections --data "<data source connection payload>"
curl --header "Authorization: Bearer <token>" --request POST|PUT https://<hostname>/api/20210901/catalog/connections --form "cert=<security wallet file>" --form "connectionParams=<data source connection payload>"
<token> - Token OAuth 2.0 okaziciela wymagany do identyfikowania wywołań kierowanych do REST API dla Oracle Analytics Cloud. Zob. OAuth 2.0 Token Authentication.
<hostname> - Host, w którym działa Oracle Analytics Cloud.
<data source connection payload> - Informacje o połączeniu specyficzne dla używanego źródła danych. Zob. Przykładowe ładunki JSON dla źródeł danych.
<security wallet file> - Przechowuje informacje związane z protokołem SSL, takie jak uwierzytelnia identyfikujące i podpisujące, klucze prywatne, certyfikaty i zaufany certyfikat. Wymagany dla niektórych typów połączeń, takich jak połączenie z bazą danych Oracle Database z użyciem protokołu SSL lub z Oracle Autonomous Data Warehouse z użyciem protokołu mTLS.
Przykłady
Poniższe przykłady pokazują, jak utworzyć połączenie z Oracle Autonomous Data Warehouse Cloud (ADW).
cwallet.sso
(mTLS)Dodatkowe przykłady są dostępne w dokumencie REST API for Oracle Analytics Cloud. Zob. Tworzenie połączenia (wersja poglądowa), Aktualizowanie połączenia (wersja poglądowa) i Usuwanie połączenia (wersja poglądowa).
Uwaga:
Pokazane w tych przykładach ładunki JSON są właściwe dla Oracle ADW. Format ładunku JSON jest inny dla innych źródeł danych. Zob. Przykładowe ładunki JSON dla obsługiwanych źródeł danych.
Przykład 1 - Tworzenie połączenia (TLS) bez portfela z Oracle ADW
oracle_adw_walletless
. Treść żądania zawiera prosty typ JSON application/json
.
curl --header "Authorization: Bearer <token>" --header "Content-Type: application/json" --request POST https://example.com/api/20210901/catalog/connections --data "{ "version": "2.0.0", "type": "connection", "name": "oracle_adw_walletless", "description": "Sample Oracle ADW connection without a wallet created using Connections API", "content": { "connectionParams": { "connectionType": "oracle-autonomous-data-warehouse", "connectionString": "(description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1521)(host=adb.us-ashburn-1.oraclecloud.com))(connect_data=(service_name=abcdefg1hijkl2m_adwwalletless_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=yes)))", "username": "ADMIN", "password": "<<password>>", "systemConnection": false, "remoteData": false, "sslType": "ServerSideSSL" } } }"
Treść odpowiedzi
{"connectionID":"J0FkbWluJy4nb3JhY2xlX2Fkd193YWxsZXRsZXNzJw=="}
Należy zanotować wartość connectionId
z kodowaniem Base64 zawartą w treści odpowiedzi. Później będzie można używać tej wartości do zaktualizowania lub usunięcia połączenia.
Przykład 2 - Tworzenie połączenia z Oracle ADW z użyciem pliku portfela (mTLS)
oracle_adw_with_wallet
. Treść żądania zawiera wpis multipart/form-data
, co oznacza, że są wymagane zarówno plik portfela z Oracle ADW (cwallet.sso
), jak i parametry połączenia z Oracle ADW.
curl --header "Authorization: Bearer <token>" -–request POST https://<hostname>/api/20210901/catalog/connections --form "cert=@"/Users/scott/Downloads/Wallet_adw/cwallet.sso"" --form "connectionParams= "{ "version": "2.0.0", "type": "connection", "name": "oracle_adw_with_wallet", "description": "Sample Oracle ADW connection with a wallet created using Connections API", "content": { "connectionParams": { "connectionType": "oracle-autonomous-data-warehouse", "connectionString": "(description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps) (port=1522)(host=adb.us-ashburn-1.oraclecloud.com))(connect_data=(service_name=abcdefg1hijkl2m_walletadw_high.adwc.oraclecloud.com/))(security=(ssl_server_dn_match=yes)))", "username": "ADMIN", "password": "<<password>>", "remoteData": "false", "systemConnection": false, "sslType": "ClientSideSSL" } } }"
Treść odpowiedzi
{"connectionID":"J2FkbWluJy4nb3JhY2xlX2Fkd193aXRoX3dhbGxldCc="}
Należy zanotować wartość connectionId
z kodowaniem Base64 zawartą w treści odpowiedzi. Później będzie można używać tej wartości do zaktualizowania lub usunięcia połączenia.
Aby połączyć się ze źródłem danych, należy podać parametry połączenia. Używając REST API dla połączeń, należy określić parametry połączenia w formacie ładunku JSON. Poniższa tabela pomaga ustalić ładunek JSON dla źródła danych, z którym ma zostać nawiązane połączenie.
Źródło danych | Typ żądania | Ładunek wejściowy |
---|---|---|
Oracle Database (Nie-SSL) |
application/json |
Podstawowy typ połączenia { "version": "2.0.0", "type": "connection", "name": "oracle_db_non_ssl_basic", "description": "Sample non-SSL Oracle Database connection created using Connections API", "content": { "connectionParams": { "connectionType": "oracle-database", "host": "example.com", "port": "1521", "serviceName": "orcl", "username": "admin", "password": "<password>", "remoteData": false, "systemConnection": false } } } Zaawansowany typ połączenia { "version": "2.0.0", "type": "connection", "name": "oracle_db_non_ssl_advanced ", "description": " Sample non-SSL Oracle Database connection created with the advanced connection string format using Connections API", "content": { "connectionParams": { "connectionString": "(DESCRIPTION= (ADDRESS_LIST= (LOAD_BALANCE=on)(FAILOVER=ON) (ADDRESS=(PROTOCOL=tcp)(HOST=example.com)(PORT=1521))) (CONNECT_DATA=(SERVICE_NAME=ORCLPDB1)))", "username": "admin", "password": "<password>", "connectionType": "oracle-database", "remoteData": false, "systemConnection": false } } } |
Oracle Database z SSL |
multi-part/form-data |
cwallet.sso (client credentials file) Podstawowy typ połączenia cert: <cwallet.sso file location> connectionParams: { "version": "2.0.0", "type": "connection", "name": "oracle_db_ssl", "description": "Sample Oracle Database connection with SSL created using Connections API", "content": { "connectionParams": { "connectionType": "oracle-database", "host": "example.com", "port": "2484", "serviceName": "ORCLPDB1", "username": "admin", "password": "<password>", "systemConnection": false, "remoteData": false } } } |
Oracle Autonomous Data Warehouse - bez portfela (TLS) |
application/json |
Podstawowy typ połączenia { "version": "2.0.0", "type": "connection", "name": "oracle_adw_walletless_basic", "description": "Sample Oracle ADW connection without a wallet created using Connections API", "content": { "connectionParams": { "connectionType": "oracle-autonomous-data-warehouse", "connectionString": "(description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1521) (host=example.com)) (connect_data=(service_name=example.com)) (security=(ssl_server_dn_match=yes)))", "username": "admin", "password": "<password>", "systemConnection": false, "remoteData": false, "sslType": "ServerSideSSL" } } } |
Oracle Autonomous Data Warehouse - z portfelem (mTLS) |
multipart/form-data |
cwallet.sso (client credentials file) Podstawowy typ połączenia cert: <cwallet.sso file location> connectionParams: { "version": "2.0.0", "type": "connection", "name": "oracle_adw_with_wallet", "description": "Sample Oracle ADW connection with wallet created using Connections API", "content": { "connectionParams": { "connectionType": "oracle-autonomous-data-warehouse", "connectionString": "(description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps) (port=1522)(host=example.com)) (connect_data=(service_name=example.com)) (security=(ssl_server_dn_match=yes)))", "username": "admin", "password": "<password>", "remoteData": "false", "systemConnection": false, "sslType": "ClientSideSSL" } } } |
PostgreSQL (Nie-SSL) |
application/json |
Podstawowy typ połączenia { "version":"2.0.0", "type": "connection", "name": "postgres_non_SSL", "description": "Sample PostgreSQL connection created using Connections API", "content": { "connectionParams": { "connectionType": "postgresql-database", "host": "example.com", "port": "5432", "serviceName": "postgres", "username": "admin", "password": "<password>", "remoteData": false, "systemConnection": false } } } |
PostgreSQL z SSL |
application/json |
Podstawowy typ połączenia { "version":"2.0.0", "type": "connection", "name": "postgres_SSL_Conn", "description": "Sample PostgreSQL connection with SSL created using Connections API", "content": { "connectionParams": { "connectionType": "postgresql-database", "host": "example.com", "port": "5432", "serviceName": "postgres", "username": "admin", "password": "<password>", "sslType":"ServerSideSSL", "remoteData": false, "systemConnection": false } } } |
SQL Server (Nie-SSL) |
application/json |
Podstawowy typ połączenia { "version":"2.0.0", "type": "connection", "name": "SqlServer_non_ssl", "description": "Sample non-SSL SQL Server connection created using Connections API", "content": { "connectionParams": { "connectionType": "sqlserver-database", "host": "example.com", "port": "1400", "serviceName": "sqlserver1", "username": "admin", "password": "<password>", "remoteData": false, "systemConnection": false } } } |
SQL Server z SSL | application/json |
Podstawowy typ połączenia { "version":"2.0.0", "type": "connection", "name": "SqlServer_ssl", "description": "Sample SQL Server connection with SSL created using the Connections API", "content": { "connectionParams": { "connectionType": "sqlserver-database", "host": "example.com", "port": "60190", "serviceName": "sqlserver1", "username": "admin", "password": "<password>", "sslType":"ServerSideSSL", "remoteData": false, "systemConnection": false } } } |
MySQL (Nie-SSL) |
application/json |
Podstawowy typ połączenia { "version":"2.0.0", "type": "connection", "name": "MySql_no_SSL", "description": "Sample MySQL connection created using the Connections API", "content": { "connectionParams": { "connectionType": "mysql-database", "host": "example.com", "port": "3307", "serviceName": "mysql1", "username": "admin", "password": "<password>", "remoteData": false, "systemConnection": false } } } |
MySQL z SSL | application/json |
Podstawowy typ połączenia { "version":"2.0.0", "type": "connection", "name": "MySql_ssl", "description": "Sample MySQL connection with SSL created using Connections API", "content": { "connectionParams": { "connectionType": "mysql-database", "host": "example.com", "port": "3306", "serviceName": "mysql1", "username": "admin", "password": "<password>", "sslType":"ServerSideSSL", "remoteData": false, "systemConnection": false } } } |
Oracle Essbase |
application/json |
Podstawowy typ połączenia { "version":"2.0.0", "type": "connection", "name": "Oracle_Essbase", "description": "Sample Oracle Essbase connection created using Connections API", "content": { "connectionParams": { "connectionType": "oracle-essbase", "dsn":"example.com", "username":"admin", "password":"<password>", "remoteData": false, "systemConnection": false, "authentication":"current"/"private"/"sso" } } } |