Azure Databricks feature store support for Azure MySQL server

Ajay 1 Reputation point
2021-07-15T13:29:57.22+00:00

As per the documentation of Azure databricks feature-store, it has online feature store support for Azure MySQL database. I have a offline feature store named
recommendation.features
and trying to publish it to Azure MySQL db. In MySQL server I have created a database with name
recommendation
by following the documentation. When I was trying to publish with the below code, I was expected to create a table named
features
and write the data to that table. But I was getting the below error. I have enabled the firewall as well.

   from databricks.feature_store.online_store_spec import AzureMySqlSpec  
   hostname = <Host Name>.mysql.database.azure.com  
   port = 3306  
   user = '<Admin User Name>'  
   password = '<Password>'  
   data_base ='<Azure MySQL DB>'  
   table_name = "recommendation.features"  
     
   online_store = AzureMySqlSpec(hostname, port, user, password, data_base, table_name)  
     
   fs.publish_table(  
     name="recommendation.features",  
     online_store=online_store,  
   mode = "overwrite"  
   )  

Error:

   java.sql.SQLInvalidAuthorizationSpecException: Could not connect: Access denied for user &#39;<User ID>&#39;@&#39;<IP Address>&#39; (using password: YES)  

But the same online publishing of feature store works for Azure SQL server database. With the below code.

   from databricks.feature_store.online_store_spec \  
   import AzureSqlServerSpec  
     
   hostname = '<Azure SQL Server>.database.windows.net'  
   port = 1433  
   user = '<Master User>'  
   password = '<Password>'  
   database_name = '<Azure SQL DB>'  
   # Name of table in online store i.e. in Azure SQL DB  
   table_name = 'recommendation.features'  
   online_store = AzureSqlServerSpec(\  
                                     hostname = hostname, \  
                                     port = port, \  
                                     user = user, \  
                                     password = password, \  
                                     database_name = database_name, \  
                                     table_name = table_name)  
   # Publish features into the online store  
   fs.publish_table(  
     name='recommendation.features',  
     online_store=online_store,  
     mode='overwrite'  
   )  

So, does Azure Databricks feature store supports MySQL database for online feature store or it supports only Azure SQL database?

Azure SQL Database
Azure Databricks
Azure Databricks
An Apache Spark-based analytics platform optimized for Azure.
1,948 questions
Azure Database for MySQL
Azure Database for MySQL
An Azure managed MySQL database service for app development and deployment.
721 questions
{count} votes