Search code examples
azureazure-devopsazure-blob-storageazure-artifacts

Difference between Azure Artifacts and Azure blobs


We plan to migrate our Jenkins CI to Azure CI. The Jenkins CI used to produce a lot of artifacts, and we initially thought of creating Azure Artifacts for the same. However, it was informed to me that Azure Artifacts are expensive, and there is another storage called Azure Blob Storage, which is cheaper.

My questions:

  1. This Blob Storage is not a service provided by Azure DevOps services. On the Azure server we need to setup this storage by creating a subscription. Is my understanding correct?
  2. How exactly is the performance difference between the two? I would expect the Artifact to be faster compared to Blob. Is this right?

Please let me know.


Solution

  • To answer your questions,

    1. Yes, your understanding is correct.
    2. Both are actually very different things.

    As per Microsoft's documentation:

    Azure Artifacts enables developers to share their code efficiently and manage all their packages from one place. With Azure Artifacts, developers can publish packages to their feeds and share it within the same team, across organizations, and even publicly. Developers can also consume packages from different feeds and public registries such as NuGet.org or npmjs.com. Azure Artifacts supports multiple package types such as NuGet, npm, Python, Maven, and Universal Packages.

    Azure Blob Storage, on the other hand, is Microsoft's object storage solution for the cloud. Blob storage is optimized for storing massive amounts of unstructured data like text & binary data (photos, videos, etc.)

    To conclude, if your "artifacts" are something which might be used or consumed by other people in your team/organization (like a NuGet package or npm package), then go with Azure Artifacts. If that's not the case and you just want to store them somewhere, go with Azure Blob Storage.

    My opinion: you should go with Azure Blob Storage.