How managing a database project for a Synapse dedicated SQL pool in case of team working

pmscorca 1,052 Reputation points
2023-12-17T16:02:40.87+00:00

Hi,

in order to implement the version control for a database to build on a Synapse Analytics dedicated SQL pool, my developer team would use SSDT (in Visual Studio, Azure Data Studio, etc.) in order to create a database project. Now, how managing a such task in team? Is it possible that one developer could create the team_db_project on own dev machine, implement the table_1, and another one could create the same team_db_project on own dev machine, implement the table_2 (different from the table_1)? Which is the right approach to operate in team?

Thanks

Azure Synapse Analytics
Azure Synapse Analytics
An Azure analytics service that brings together data integration, enterprise data warehousing, and big data analytics. Previously known as Azure SQL Data Warehouse.
5,378 questions
{count} votes

2 answers

Sort by: Most helpful
  1. Nandan Hegde 36,151 Reputation points MVP Volunteer Moderator
    2023-12-18T03:57:34.1133333+00:00

    Hey,

    For synchronized development, the best way is to create database project locally and then sync/checkin within either Azure Devops Repo/Git hub repo in the 1st attempt.

    Post that users can clone the repos and make changes and checkin those changes for others to pull in those changes.

    Sample :

    https://azureaggregator.wordpress.com/2023/05/05/ci-cd-with-azure-synapse-dedicated-sql-pool/

    0 comments No comments

  2. Smaran Thoomu 24,260 Reputation points Microsoft External Staff Moderator
    2023-12-18T08:05:41.8433333+00:00

    Hi @pmscorca

    Welcome to Microsoft Q&A Platform. Thank you for posting your query.

    Adding to @Nandan Hegde To manage a database project for a Synapse dedicated SQL pool in a team, you can use Azure DevOps to collaborate with your team members. Azure DevOps provides a set of services for managing your project's lifecycle, including version control, continuous integration, and continuous deployment.

    Here's how you can use Azure DevOps to manage your database project:

    1. Create a new project in Azure DevOps and add your team members to the project.
    2. Create a new Git repository in the project to store your database project.
    3. Each developer can clone the repository to their local machine and create a new branch for their changes.
    4. Each developer can make their changes to the database project in their branch and commit their changes to the repository.
    5. Once the changes are complete, the developer can create a pull request to merge their changes into the main branch.
    6. Another team member can review the pull request and approve or reject the changes.
    7. Once the changes are approved, they can be merged into the main branch.
    8. You can use Azure DevOps pipelines to automate the build and deployment of your database project.

    Regarding your question about whether one developer can create the team_db_project on their own dev machine and another developer can create the same team_db_project on their own dev machine, the answer is yes. Each developer can create their own copy of the database project on their local machine and make changes to it. However, it's important to ensure that changes are merged into the main branch regularly to avoid conflicts.

    Reference:

    Hope this helps. Do let us know if you any further queries.


    If this answers your query, do click Accept Answer and Yes for was this answer helpful. And, if you have any further query do let us know.


Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.