Windows Azure Blob存储模拟器文件存储位置



Windows Azure Blob存储模拟器(是的,模拟器)将上传到它的文件存储在哪里?和中一样,它在本地机器上存储Blob的实际文件夹(路径)是什么?我已经安装并运行了它,我可以成功上传Blob和检索Blob,但我想知道模拟器实际存储文件的位置。上传blob后,我得到的地址是:

http://127.0.0.1:10000/devstoreaccount1/mycontainer/picture.png 

我使用的是examplep,而这些文件似乎不在我的htdocs文件夹中。我只是好奇,仅此而已。

存储模拟器侦听您在那里看到的地址,但当请求传入时,它使用SQL存储作为后端存储。

默认情况下,存储模拟器使用SQL Server LocalDB,也可以使用DSInit.exe命令行实用工具将其指向完整的SQL Server实例。然后,所有表、队列和BLOB数据都保存在该数据库中。在BLOB的情况下,元数据存储在数据库中,但文件存储在appdata目录中。例如,我的一个是c:\users\michael\appdata\local\developmentstore\sql\blockblobroot\1\c1ba3640-ad8e-4cbb-8818-95c7d866cb71。

如果您将模拟器指向SQL Express或SQL Server实例,则可以使用SQL Management Studio连接到该实例并深入研究表。有一个名为Blob的表,它有一列DirectoryPath,它会告诉你这些文件是什么。除了使用API或存储工具之外,我不会对这个数据库的结构或文件结构做太多的改动,否则你可能会导致本地模拟器的稳定性问题。

还要注意,这不是数据在Windows Azure中存储的方式,而是本地模拟器模拟数据的方式。

自4.6 起

存储模拟器将所有类型的数据作为文件(无扩展名)存储在根文件夹下;

C: \Users\username\AppData\Local\AzureStorageEmulator

最新更新