Skip to content

[Feature] Add filesystem support for Microsoft Azure Storage#5379

Merged
JingsongLi merged 2 commits intoapache:masterfrom
qining-mj:feature-paimon-support-azure-fs
Apr 1, 2025
Merged

[Feature] Add filesystem support for Microsoft Azure Storage#5379
JingsongLi merged 2 commits intoapache:masterfrom
qining-mj:feature-paimon-support-azure-fs

Conversation

@qining-mj
Copy link
Copy Markdown
Contributor

Purpose

Adding support for Microsoft Azure Storage
Linked issue: close #xxx

Tests

API and Format

https://learn.microsoft.com/en-us/azure/storage/blobs/storage-quickstart-blobs-java?tabs=powershell%2Cmanaged-identity%2Croles-azure-portal%2Csign-in-azure-cli&pivots=blob-storage-quickstart-scratch

Documentation

This is a new feature.

A catalog is created in a similar way the S3 catalog is being created

CREATE CATALOG my_azure_catalog WITH (
'type' = 'paimon',
'fs.azure.account.key.ACCOUNT.blob.core.windows.net' = 'secret key',
'warehouse' = 'wasb://test@ACCOUNT.blob.core.windows.net/',
);

@qining-mj
Copy link
Copy Markdown
Contributor Author

azure

Copy link
Copy Markdown
Contributor

@JingsongLi JingsongLi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1

@JingsongLi
Copy link
Copy Markdown
Contributor

@qining-mj Can you also update documentation?

@qining-mj
Copy link
Copy Markdown
Contributor Author

@JingsongLi Sure, I can update the documentation as well. I'll make sure to keep it in sync with the code changes.

@qining-mj
Copy link
Copy Markdown
Contributor Author

@JingsongLi Since this PR is focused on the code changes, could you consider merging this PR first? I'll create a separate PR for the documentation updates afterward. This way, we can ensure the code is integrated promptly, and I can focus on the documentation without blocking the current changes.

@JingsongLi
Copy link
Copy Markdown
Contributor

@JingsongLi Since this PR is focused on the code changes, could you consider merging this PR first? I'll create a separate PR for the documentation updates afterward. This way, we can ensure the code is integrated promptly, and I can focus on the documentation without blocking the current changes.

You can just add documentation in this PR, if the doc is not so complex, doc can be merged into codes changing PR.

@qining-mj
Copy link
Copy Markdown
Contributor Author

Azure

Download [paimon-Azure-< version >.jar.

Flink

If you have already configured Azure access through Spark (Via Hadoop FileSystem), here you can skip the following configuration.

Put [paimon-azure-< version >.jar into lib directory of your Flink home, and create catalog:

CREATE CATALOG my_catalog WITH (
   'type' = 'paimon',
   'warehouse' = 'wasb://,<container>@<account>.blob.core.windows.net/<path>',
   'fs.azure.account.key.Account.blob.core.windows.net' = 'yyy'
);

Spark

If you have already configured Azure access through Spark (Via Hadoop FileSystem), here you can skip the following configuration.

Place paimon-azure-{{< version >}}.jar together with paimon-spark-{{< version >}}.jar under Spark's jars directory, and start like

spark-sql \ 
  --conf spark.sql.catalog.paimon=org.apache.paimon.spark.SparkCatalog \
  --conf spark.sql.catalog.paimon.warehouse=wasb://,<container>@<account>.blob.core.windows.net/<path> \
  --conf fs.azure.account.key.Account.blob.core.windows.net=yyy \

@qining-mj
Copy link
Copy Markdown
Contributor Author

@JingsongLi I have made preliminary updates to the documentation and plan to continue refining it. Thank you for your guidance。
I will continue to update and improve the document in the future.

@JingsongLi
Copy link
Copy Markdown
Contributor

You can modify filesystems.md directly.

@qining-mj
Copy link
Copy Markdown
Contributor Author

@JingsongLi Azure documentation has been added to filesystems.md,Thank you for your guidance。

@JingsongLi JingsongLi merged commit aabcd06 into apache:master Apr 1, 2025
18 of 19 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants