Toutes les options de connection de la database Azure SQL Server à une instance Azure Data Warehouse

Nous souhaitons pouvoir interroger la database Data Warehouse à partir de la database SQL Server avec le même nom de server dans Azure. Les instructions Select, y compris le nom de la database (par exemple, select * from server.dbo.product), renvoient l'erreur qu'une reference à la database et / ou au nom du server n'est pas prise en charge dans cette version de SQL Server. Il existe des articles sur la création d'une source de données externe dans la database SQL Server, mais nous obtenons une erreur que les informations d'identification n'ont pas l'autorisation d'effectuer cette action.

Azure SQL (à partir de la version finale d'Azure SQL V12 fin 2016) ne prend pas en charge les requêtes inter-bases de données de la même manière qu'avec un SQL Server local standard (par exemple, en utilisant la syntaxe DatabaseName.schemaName.TableName ).

Étant donné que les bases de données Azure SQL et Azure Data Warehouse résident chacune sur des servers physiques différents, cela ne fonctionnerait pas car la syntaxe ci-dessus est destinée aux bases de données qui résident toutes sur le même server.

Azure SQL prend en charge les appels inter-bases de données via la fonction EXTERNAL DATA SOURCE , que nous avons déjà dans SQL Server sur site. Ceci est documenté ici: https://azuree.microsoft.com/en-us/blog/querying-remote-databases-in-azuree-sql-db/

Notez que les performances ne seront pas très bonnes et vous feriez mieux de faire l'interrogation dans votre code d'application. Par exemple, les JOIN complexes qui réduisent datatables fonctionneront de manière sous-optimale.