Oracle Autonomous Data Warehouse on Cloud

Chiffrement du trafic réseau

Il est recommandé de chiffrer le trafic réseau entre l'application Looker et votre base de données. Envisagez l'une des options décrites sur la page de documentation Activer l'accès sécurisé à la base de données.

Configurer l'hôte Looker pour les connexions

Toutes les connexions Oracle ADWC nécessitent une authentification SSL et par certificat. Pour que Looker se connecte à votre instance Oracle ADWC, vous devez télécharger vos fichiers de portefeuille Oracle et les installer sur le serveur Looker. Si vous utilisez Looker hébergé par un client, vous aurez besoin d'un administrateur système ayant accès au serveur Looker pour effectuer cette opération. Si vous êtes un utilisateur hébergé sur Looker, contactez l'assistance Looker.

Pour installer votre portefeuille Oracle sur le serveur Looker:

  1. Téléchargez votre portefeuille Oracle sur votre ordinateur local. Vous obtiendrez un fichier ZIP nommé Wallet_databasename.zip.

  2. Sur le serveur Looker, créez un répertoire pour stocker le fichier ZIP du portefeuille:

    mkdir /home/looker/looker/credentials
    
  3. Copiez le fichier ZIP du portefeuille depuis votre ordinateur local sur le serveur Looker. Cet exemple utilise scp et place le fichier dans /home/looker/looker/credentials:

    scp Wallet_databasename.zip username@remotehost:/home/looker/looker/credentials
    
  4. Décompressez le fichier ZIP du portefeuille. Cet exemple utilise la commande unzip:

    cd /home/looker/looker/credentials
    unzip Wallet_databasename.zip
    
  5. Vérifiez le contenu du portefeuille à l'aide de la commande ls. Voici les fichiers que vous devez avoir:

     ls
    
     cwallet.sso  keystore.jks      sqlnet.ora    truststore.jks
     ewallet.p12  ojdbc.properties  tnsnames.ora
    

    Looker se connecte à Oracle ADWC à l'aide de portefeuilles Oracle avec le pilote JDBC Thin Driver 18.3. Pour ce faire, vous avez besoin de l'alias TNS (Transparent Network Substrate) du niveau de service Oracle ADWC de votre base de données et du chemin d'accès à vos fichiers de portefeuille Oracle.

  6. Pour obtenir l'alias TNS de votre base de données, exécutez cette commande:

    cat tnsnames.ora
    

    Vous aurez le choix entre trois alias TNS: dbname_high, dbname_medium et dbname_low. Ces alias correspondent à différents niveaux de service. Ce fichier contient le protocole, l'hôte, le port, le nom du service et les informations SSL. Pour cet exemple, nous utiliserons dbname_medium.

Créer un utilisateur Looker

Commencez par créer un utilisateur Looker désigné:

  -- connect / as sysdba;
  CREATE USER LOOKER IDENTIFIED BY <password>
  DEFAULT TABLESPACE USERS
  TEMPORARY TABLESPACE TEMP;

Donnez ensuite au nouvel utilisateur Looker la possibilité de créer des sessions:

  GRANT CREATE SESSION TO LOOKER;

Enfin, attribuez à l'utilisateur Looker les autorisations SELECT appropriées pour les tables de données auxquelles vous prévoyez d'accéder depuis Looker. Si, par la suite, vous souhaitez accéder à d'autres tables, vous devrez également accorder l'autorisation SELECT sur ces nouvelles tables.

  GRANT SELECT ON -- <all tables that will be used by looker>;

S'assurer que Looker peut voir toutes les tables

Looker risque de ne pas pouvoir identifier les tables (en particulier les tables vides) sans avoir collecté au préalable des statistiques dans Oracle. Si vous n'avez pas besoin de faire apparaître les tables dans le code LookML ou l'exécuteur SQL généré, exécutez la commande suivante:

  EXEC DBMS_STATS.GATHER_DATABASE_STATS;

Pour connaître les autres méthodes, consultez la documentation Oracle.

Configurer les objets de la base de données principale

Votre nom commercial Oracle doit configurer les objets et autorisations suivants sur Oracle. Les commandes suivantes créent LOOKER_SESSION et LOOKER_SQL comme synonymes de V$SESSION et V$SQL.

Exécutez les commandes suivantes en tant qu'utilisateur racine pour terminer la configuration. Ces exemples supposent que le nom de l'utilisateur Looker est LOOKER.

CREATE OR REPLACE VIEW LOOKER_SQL
AS
  SELECT
    sql.SQL_ID,
    sql.SQL_TEXT
  FROM
    V$SQL sql,
    v$session sess
  WHERE
    sess.SQL_ADDRESS = sql.ADDRESS AND
    sess.username=&apos;LOOKER&apos;;

CREATE OR REPLACE SYNONYM LOOKER.LOOKER_SQL FOR LOOKER_SQL;

GRANT SELECT ON LOOKER.LOOKER_SQL TO LOOKER;

-- Pay special attention to the comments below:
-- the following view will be different for clustered Oracle deployments
CREATE OR REPLACE VIEW LOOKER_SESSION
AS
  SELECT
    SID,
    USERNAME,
    TYPE,
    STATUS,
    SQL_ID,
    -- If using a single node Oracle ADWC deployment
    "SERIAL#",
    -- If using a clustered Oracle ADWC deployment
    (SERIAL# || ',' || INST_ID) AS "SERIAL#",
    AUDSID
  -- If using a single node Oracle ADWC deployment
  FROM V$SESSION
  -- If using a clustered Oracle ADWC deployment
  FROM GV$SESSION
  WHERE
    USERNAME=&apos;LOOKER&apos;;

CREATE OR REPLACE SYNONYM LOOKER.LOOKER_SESSION FOR LOOKER_SESSION;

GRANT SELECT ON LOOKER.LOOKER_SESSION TO LOOKER;

Configurer des agrégations symétriques

Votre nom commercial Oracle doit configurer la fonction LOOKER_HASH pour activer les agrégations symétriques. La fonction LOOKER_HASH est un synonyme de la fonction Oracle dbms_crypto.hash. Le nom commercial doit également créer les synonymes et les droits associés. L'exemple suivant suppose que le nom de l'utilisateur Looker est LOOKER:

CREATE OR REPLACE FUNCTION LOOKER_HASH(bytes raw, prec number)
  RETURN raw AS
    BEGIN
  return(dbms_crypto.HASH(bytes, prec));
END;

CREATE OR REPLACE SYNONYM LOOKER.LOOKER_HASH FOR LOOKER_HASH;

GRANT EXECUTE ON LOOKER.LOOKER_HASH TO LOOKER;

GRANT EXECUTE ON SYS.LOOKER_HASH TO LOOKER;

Selon la configuration de votre base de données Oracle, le préfixe SYS peut être SYSDBA ou ADMIN, ou être inutile.

Configurer des tables dérivées persistantes

Pour activer les tables dérivées persistantes, accordez à l'utilisateur Looker les autorisations UNLIMITED TABLESPACE et CREATE TABLE. Les commandes suivantes supposent que le nom de l'utilisateur Looker est LOOKER:

GRANT UNLIMITED TABLESPACE TO LOOKER;
GRANT CREATE TABLE TO LOOKER;

Configurer la fermeture de requêtes

Pour configurer l'arrêt de requêtes, le DBA Oracle doit créer la procédure LOOKER_KILL_QUERY en tant que synonyme de ALTER SYSTEM KILL SESSION. Pour ce faire, exécutez la commande suivante:

CREATE OR REPLACE PROCEDURE LOOKER_KILL_QUERY(p_sid in varchar2,
                                              p_serial# in varchar2)
IS
  cursor_name pls_integer default dbms_sql.open_cursor;
  ignore pls_integer;

BEGIN
  SELECT
    COUNT(*) INTO IGNORE
  -- If using a single node Oracle ADWC deployment
  FROM V$SESSION
  -- If using a clustered Oracle ADWC deployment
  FROM GV$SESSION
  WHERE
    username = USER
    AND sid = p_sid
    -- If using a single node Oracle ADWC deployment
    AND serial# = p_serial#;
    -- If using a clustered Oracle ADWC deployment
    AND (SERIAL# || ',' || INST_ID) = p_serial#;

  IF (ignore = 1)
  THEN
    dbms_sql.parse(cursor_name,
                   &apos;ALTER SYSTEM KILL SESSION &apos;&apos;&apos;
                   || p_sid || &apos;,&apos; || p_serial# || &apos;&apos;&apos;&apos;,
                   dbms_sql.native);
    ignore := dbms_sql.execute(cursor_name);
  ELSE
    raise_application_error(-20001,
                            &apos;You do not own session &apos;&apos;&apos; ||
                            p_sid || &apos;,&apos; || p_serial# ||
                            &apos;&apos;&apos;&apos;);
  END IF;
END;

Le DBA doit également exécuter les commandes associées suivantes:

CREATE OR REPLACE SYNONYM LOOKER.LOOKER_KILL_QUERY FOR SYS.LOOKER_KILL_QUERY;
GRANT EXECUTE ON SYS.LOOKER_KILL_QUERY TO LOOKER;

Selon la configuration de votre base de données Oracle, le préfixe SYS peut être SYSDBA ou ADMIN, ou être inutile.

Créer la connexion Looker à votre base de données

Pour créer la connexion entre Looker et votre base de données, procédez comme suit:

  1. Dans la section Admin de Looker, sélectionnez Connexions, puis cliquez sur Ajouter une connexion.
  2. Saisissez les informations de connexion. La majorité des paramètres sont communs à la plupart des dialectes de base de données. Pour en savoir plus, consultez la page de documentation Connecter Looker à votre base de données. Les paramètres suivants sont spécifiques à Oracle ADWC:

    • Dialecte: Oracle ADWC.
    • Use TNS (Utiliser le TNS) : activez les connexions TNS (Transparent Network Substrate).
    • Host (Hôte) : nom d'hôte ou alias TNS. Dans cet exemple, il s'agit de dbname_medium.
    • Port: conservez le paramètre par défaut. Looker trouvera le port à partir du fichier tnsnames.ora.
    • Service Name (Nom du service) : laissez ce champ vide. Looker recherchera le nom du service dans le fichier tnsnames.ora.
    • Nom d'utilisateur: nom d'utilisateur de la base de données ou base de données temporaire si les tables PDT sont activées.
    • Password (Mot de passe) : mot de passe de l'utilisateur de la base de données.
    • Activer les tables dérivées persistantes: utilisez ce bouton pour activer les tables dérivées persistantes. Lorsque les PDT sont activées, la fenêtre Connection (Connexion) affiche des paramètres de PDT supplémentaires et la section PDT Overrides (Remplacements des tables dérivées persistantes).
    • Base de données temporaire: dans Oracle, un utilisateur est un schéma. Vous devez donc spécifier ce nom comme nom d'utilisateur de la base de données. Pour cet exemple, vous devez utiliser la valeur de schéma temporaire LOOKER.
    • Paramètres JDBC supplémentaires: le PATH vers votre portefeuille Oracle sur le serveur Looker. Dans cet exemple, il s'agit de /home/looker/looker/credentials.
    • Dans un ancien déploiement hébergé sur Looker, cette valeur sera /home/lookerops/looker/credentials.
    • Pour un déploiement hébergé sur Looker dans le cadre d'un hébergement nouvelle génération, cette valeur sera /app/credentials.
    • SSL et Verify SSL: vous pouvez ignorer ces champs. Looker utilisera toujours SSL avec Oracle ADWC.
  3. Pour vérifier que la connexion est établie, cliquez sur Tester. Consultez la page de documentation Tester la connectivité de la base de données pour obtenir des informations de dépannage. Lorsque vous cliquez sur Tester, Looker crée une chaîne JDBC semblable à celle-ci:

    jdbc:oracle:thin:@dbname_medium?TNS_ADMIN=/home/looker/looker/credentials

  4. Pour enregistrer ces paramètres, cliquez sur Connecter.

Prise en charge de fonctionnalités

Pour que Looker prenne en charge certaines fonctionnalités, votre dialecte de base de données doit également les prendre en charge.

Oracle ADWC prend en charge les fonctionnalités suivantes à partir de Looker 24.8:

Sélection Compatible ?
Niveau d'assistance
Intégration
Looker (Google Cloud Core)
Non
Agrégations symétriques
Oui
Tables dérivées
Oui
Tables dérivées SQL persistantes
Oui
Tables dérivées natives persistantes
Oui
Vues stables
Non
Arrêt de la requête
Oui
Tableaux croisés dynamiques basés sur SQL
Oui
Fuseaux horaires
Oui
SSL
Oui
Sous-totaux
Oui
Paramètres JDBC supplémentaires
Non
Sensible à la casse
Oui
Type d'emplacement
Oui
Type de liste
Oui
Centile
Oui
Centile distinct
Non
Processus d'affichage de l'exécuteur SQL
Oui
Table de description de l'exécuteur SQL
Oui
Afficher les index de l'exécuteur SQL
Non
SQL Runner Select 10
Oui
Nombre d'exécuteurs SQL
Oui
SQL Explain
Non
Identifiants OAuth
Non
Commentaires sur le contexte
Oui
Pooling de connexions
Non
Croquis HLL
Non
Reconnaissance d'agrégats.
Oui
Augmentation de tables PDT
Non
Millisecondes
Oui
Microsecondes
Oui
Vues matérialisées
Non
Nombre approximatif distinct
Non