7

我正在尝试通过 python 访问 Azure 表存储。

在此处进行旧演练: https ://docs.microsoft.com/en-us/azure/cosmos-db/table-storage-how-to-use-python#install-the-azure-storage-sdk-for- Python

但它专门为Azure 表引用的 Python SDK ( https://github.com/Azure/azure-storage-python ) 已被移动/弃用,以支持 Azure Cosmos DB SDK。

在弃用说明中,他们说要使用此 SDK: https ://github.com/Azure/azure-cosmosdb-python

在该 SDK 的文档中,他们将您推荐给https://azure.microsoft.com/en-us/develop/python/

在该页面上的表存储和链接中,它会将您引回到第一个链接(!!)

=============

1)我想做的就是使用 Python SDK 查询传统的Azure 表存储(不是 CosmosDB)

2) 理想情况下,Python SDK 还包括 Azure 表的加密/解密功能。

我错过了什么/那个python SDK仍然存在于任何地方吗?

注意: 我看到https://github.com/Azure/azure-cosmosdb-python/tree/master/azure-cosmosdb-table 但这个 SDK 似乎需要 CosmosDB 部署——它无法连接到传统的 AzureTables。我的理解不正确吗?

谢谢你尽你所能的帮助。

4

3 回答 3

9

Azure CosmosDB 表 SDKAzure 存储表 SDK。品牌重塑是微软内部一些重组的一部分,但这是相同的代码和相同的端点,相同的一切。

Storage SDK 是一个大客户端,它被拆分为 Table/Queue/Blog/Files 包,以便将 Table 的所有权交给 CosmosDB 团队。

https://docs.microsoft.com/en-us/azure/cosmos-db/table-support

新的 Azure Cosmos DB Python SDK 是唯一支持 Python 中的 Azure 表存储的 SDK。此 SDK 与 Azure 表存储和 Azure Cosmos DB 表 API 连接。

你也可以对比一下代码,你会看到:

(我在 Azure SDK for Python 团队的 MS 工作)

于 2018-01-23T02:53:33.560 回答
3

Azure 表存储在预览版中有一个新的 Python 库,可通过 pip 安装。要安装使用以下 pip 命令

pip install azure-data-tables

此 SDK 能够以 Tables 或 Cosmos 端点为目标(尽管 Cosmos 存在已知问题)。

对于查询 Azure 表存储帐户的用例,有两种查询方法。

查询单个表:

from azure.data.tables import TableClient

table_client = TableClient.from_connection_string(conn_str, table_name="myTableName")
query_filter = "RowKey eq 'row_key_5'"
for entity in table_client.query_entities(filter=query_filter):
    print(entity)

查询表的存储帐户:

from azure.data.tables import TableServiceClient

table_service_client = TableServiceClient.from_connection_string(conn_str, table_name="myTableName")
query_filter = "TableName eq 'myTable'"
for table in table_service_client .query_entities(filter=query_filter):
    print(table.table_name)

有关该库的更多示例,请查看托管在Azure GitHub 存储库上的示例。

(仅供参考,我在 Microsoft 的 Azure SDK for Python 团队工作)

于 2021-01-04T20:02:36.713 回答
0

确实,Azure 隐藏了部分Table Storage SDK引导链接,便于推广Cosmos DB Table API。正如您在回答中提到的,Azure 存储 SDK 现在已合并到 Cosmos 菜单中。

但是,我在 repo 中找到了旧版 Azure Table Storage Python SDK

在此处输入图像描述

即使不再更新,您也可以参考上面的链接。

顺便说一句,您可以从这个链接中的 Azure 表存储迁移到 Azure Cosmos Table API 的好处。

希望它可以帮助你。

于 2018-01-22T03:03:12.667 回答