Учебники

Microsoft Azure — Таблицы

Хранение таблицы здесь не означает реляционную базу данных. Хранилище Azure может хранить только таблицу без каких-либо внешних ключей или любых других связей. Эти таблицы отлично масштабируются и идеально подходят для обработки большого количества данных. Таблицы могут храниться и запрашиваться для большого количества данных. Реляционная база данных может храниться с использованием SQL Data Services, которая является отдельной службой.

Три основные части обслуживания —

  • таблицы
  • юридические лица
  • свойства

Например, если «Книга» является сущностью, ее свойствами будут Id, Заголовок, Издатель, Автор и т. Д. Таблица будет создана для набора сущностей. Может быть 252 пользовательских свойства и 3 системных свойства. У сущности всегда будут системные свойства PartitionKey, RowKey и Timestamp. Отметка времени генерируется системой, но вам нужно будет указать PartitionKey и RowKey при вставке данных в таблицу. Пример ниже сделает это более понятным. В имени таблицы и имени свойства учитывается регистр, который всегда следует учитывать при создании таблицы.

Как управлять таблицами с помощью PowerShell

Шаг 1. Загрузите и установите Windows PowerShell, как обсуждалось ранее в руководстве.

Шаг 2 — Щелкните правой кнопкой мыши на «Windows PowerShell», выберите «Закрепить на панели задач», чтобы закрепить его на панели задач вашего компьютера.

Шаг 3 — Выберите «Запустить ISE от имени администратора».

Создание таблицы

Шаг 1 — Скопируйте следующие команды и вставьте в экран. Замените выделенный текст вашей учетной записью.

Шаг 2 — Войдите в свой аккаунт.

$StorageAccountName = "mystorageaccount" 
$StorageAccountKey = "mystoragekey" 
$Ctx = New-AzureStorageContext $StorageAccountName - StorageAccountKey 
$StorageAccountKey

Шаг 3 — Создайте новую таблицу.

$tabName = "Mytablename" 
New-AzureStorageTable Name $tabName Context $Ctx 

На следующем рисунке показана таблица, созданная под названием «книга».

Создать таблицу

Вы можете видеть, что он дал следующую конечную точку в результате.

https://tutorialspoint.table.core.windows.net/Book

Точно так же вы можете извлекать, удалять и вставлять данные в таблицу, используя предустановленные команды в PowerShell.

Получить таблицу

$tabName = "Book" 
Get-AzureStorageTable Name $tabName Context $Ctx

Удалить таблицу

$tabName = "Book"
Remove-AzureStorageTable Name $tabName Context $Ctx

Вставить строки в таблицу

function Add-Entity() { 
   [CmdletBinding()] 
	
   param( 
      $table, 
      [String]$partitionKey, 
      [String]$rowKey, 
      [String]$title, 
      [Int]$id, 
      [String]$publisher, 
      [String]$author 
   )  
   
   $entity = New-Object -TypeName Microsoft.WindowsAzure.Storage.Table.DynamicTableEntity 
      -ArgumentList $partitionKey, $rowKey 
		
   $entity.Properties.Add("Title", $title) 
   $entity.Properties.Add("ID", $id) 
   $entity.Properties.Add("Publisher", $publisher) 
   $entity.Properties.Add("Author", $author) 
   
   
   $result = $table.CloudTable.Execute(
      [Microsoft.WindowsAzure.Storage.Table.TableOperation]
      ::Insert($entity)) 
}
  
$StorageAccountName = "tutorialspoint" 
$StorageAccountKey = Get-AzureStorageKey -StorageAccountName $StorageAccountName 
$Ctx = New-AzureStorageContext $StorageAccountName - StorageAccountKey 
   $StorageAccountKey.Primary  

$TableName = "Book"
  
$table = Get-AzureStorageTable Name $TableName -Context $Ctx -ErrorAction Ignore 
 
#Add multiple entities to a table. 
Add-Entity -Table $table -PartitionKey Partition1 -RowKey Row1 -Title .Net -Id 1
   -Publisher abc -Author abc 
Add-Entity -Table $table -PartitionKey Partition2 -RowKey Row2 -Title JAVA -Id 2 
   -Publisher abc -Author abc 
Add-Entity -Table $table -PartitionKey Partition3 -RowKey Row3 -Title PHP -Id 3
   -Publisher xyz -Author xyz 
Add-Entity -Table $table -PartitionKey Partition4 -RowKey Row4 -Title SQL -Id 4 
   -Publisher xyz -Author xyz

Получить данные таблицы

$StorageAccountName = "tutorialspoint" 
$StorageAccountKey = Get-AzureStorageKey - StorageAccountName $StorageAccountName 
$Ctx = New-AzureStorageContext  StorageAccountName $StorageAccountName -
   StorageAccountKey $StorageAccountKey.Primary; 

$TableName = "Book"
  
#Get a reference to a table. 
$table = Get-AzureStorageTable Name $TableName -Context $Ctx  

#Create a table query. 
$query = New-Object Microsoft.WindowsAzure.Storage.Table.TableQuery

#Define columns to select. 
$list = New-Object System.Collections.Generic.List[string] 
$list.Add("RowKey") 
$list.Add("ID") 
$list.Add("Title") 
$list.Add("Publisher") 
$list.Add("Author")
  
#Set query details. 
$query.FilterString = "ID gt 0" 
$query.SelectColumns = $list 
$query.TakeCount = 20
 
#Execute the query. 
$entities = $table.CloudTable.ExecuteQuery($query)

#Display entity properties with the table format. 

$entities  | Format-Table PartitionKey, RowKey, @{ Label = "Title"; 
Expression={$_.Properties["Title"].StringValue}}, @{ Label = "ID"; 
Expression={$_.Properties[“ID”].Int32Value}}, @{ Label = "Publisher"; 
Expression={$_.Properties[“Publisher”].StringValue}}, @{ Label = "Author"; 
Expression={$_.Properties[“Author”].StringValue}} -AutoSize 

Вывод будет таким, как показано на следующем рисунке.

Получить таблицу

Удалить строки из таблицы

$StorageAccountName = "tutorialspoint" 
 
$StorageAccountKey = Get-AzureStorageKey - StorageAccountName $StorageAccountName 
$Ctx = New-AzureStorageContext  StorageAccountName $StorageAccountName - 
   StorageAccountKey $StorageAccountKey.Primary  

#Retrieve the table. 
$TableName = "Book" 
$table = Get-AzureStorageTable -Name $TableName -Context $Ctx -ErrorAction 
Ignore 

#If the table exists, start deleting its entities. 
if ($table -ne $null) { 
   #Together the PartitionKey and RowKey uniquely identify every   
   #entity within a table.
	
   $tableResult = $table.CloudTable.Execute(
      [Microsoft.WindowsAzure.Storage.Table.TableOperation] 
      ::Retrieve(“Partition1”, "Row1")) 
		
   $entity = $tableResult.Result;
	
   if ($entity -ne $null) {
      $table.CloudTable.Execute(
         [Microsoft.WindowsAzure.Storage.Table.TableOperation] 
         ::Delete($entity)) 
   } 
}

Приведенный выше скрипт удалит первую строку из таблицы, как вы можете видеть, что мы указали Partition1 и Row1 в скрипте. После завершения удаления строки вы можете проверить результат, запустив скрипт для получения строк. Там вы увидите, что первый ряд удален.

Во время выполнения этих команд убедитесь, что вы заменили имя учетной записи на имя учетной записи, а ключ учетной записи — на ключ своей учетной записи.

Как управлять таблицей с помощью Azure Storage Explorer

Шаг 1. Войдите в свою учетную запись Azure и перейдите в свою учетную запись хранения.

Шаг 2 — Нажмите на ссылку «Storage Explorer», как показано фиолетовым кружком на следующем изображении.

Storage Explorer

Шаг 3. Выберите «Azure Storage Explorer для Windows» из списка. Это бесплатный инструмент, который вы можете скачать и установить на свой компьютер.

Шаг 4 — Запустите эту программу на своем компьютере и нажмите кнопку «Добавить учетную запись» вверху.

Шаг 5 — Введите «Имя учетной записи хранения» и «Ключ учетной записи хранения» и нажмите «Проверить доступ». Кнопки заключены в следующем изображении.

Имя учетной записи хранения

Шаг 6 — Если у вас уже есть какие-либо таблицы в хранилище, вы увидите на левой панели под «Таблицы». Вы можете увидеть строки, нажав на них.

Создать таблицу

Шаг 1 — Нажмите «Создать» и введите имя таблицы, как показано на следующем рисунке.

Создать новую таблицу

Вставить строку в таблицу

Шаг 1 — Нажмите «Новый».

Шаг 2 — Введите имя поля.

Шаг 3 — Выберите тип данных из выпадающего списка и введите значение поля.

Выберите данные из выпадающего

Шаг 4 — Чтобы увидеть созданные строки, нажмите на название таблицы на левой панели.

Azure Storage Explorer — это очень простой и удобный интерфейс для управления таблицами. С помощью этого интерфейса вы можете легко создавать, удалять, загружать и загружать таблицы. Это делает задачи очень простыми для разработчиков по сравнению с написанием длинных скриптов в Windows PowerShell.