Microsoft Azure - ตาราง
การจัดเก็บตารางไม่ได้หมายถึงฐานข้อมูลเชิงสัมพันธ์ที่นี่ Azure Storage สามารถจัดเก็บเฉพาะตารางโดยไม่มีคีย์แปลกปลอมหรือความสัมพันธ์ประเภทอื่น ๆ ตารางเหล่านี้สามารถปรับขนาดได้สูงและเหมาะสำหรับการจัดการข้อมูลจำนวนมาก ตารางสามารถจัดเก็บและสืบค้นข้อมูลจำนวนมากได้ ฐานข้อมูลเชิงสัมพันธ์สามารถจัดเก็บโดยใช้ SQL Data Services ซึ่งเป็นบริการแยกต่างหาก
บริการหลักสามส่วน ได้แก่ -
- Tables
- Entities
- Properties
ตัวอย่างเช่นถ้า "หนังสือ" เป็นเอนทิตีคุณสมบัติของหนังสือจะเป็น Id, Title, Publisher, Author เป็นต้นตารางจะถูกสร้างขึ้นสำหรับชุดของเอนทิตี สามารถมีคุณสมบัติแบบกำหนดเอง 252 คุณสมบัติและคุณสมบัติของระบบ 3 รายการ เอนทิตีจะมีคุณสมบัติของระบบเสมอซึ่ง ได้แก่ PartitionKey, RowKey และ Timestamp Timestamp เป็นระบบที่สร้างขึ้น แต่คุณจะต้องระบุ PartitionKey และ RowKey ในขณะที่แทรกข้อมูลลงในตาราง ตัวอย่างด้านล่างจะทำให้ชัดเจนขึ้น ชื่อตารางและชื่อคุณสมบัติเป็นกรณีที่คำนึงถึงตัวพิมพ์เล็กและใหญ่ซึ่งควรพิจารณาเสมอในขณะที่สร้างตาราง
วิธีจัดการตารางโดยใช้ PowerShell
Step 1 - ดาวน์โหลดและติดตั้ง Windows PowerShell ตามที่กล่าวไว้ก่อนหน้านี้ในบทช่วยสอน
Step 2 - คลิกขวาที่ 'Windows PowerShell' เลือก 'Pin to Taskbar' เพื่อปักหมุดบนทาสก์บาร์ของคอมพิวเตอร์ของคุณ
Step 3 - เลือก 'เรียกใช้ ISE ในฐานะผู้ดูแลระบบ'
การสร้างตาราง
Step 1- คัดลอกคำสั่งต่อไปนี้และวางลงในหน้าจอ แทนที่ข้อความที่ไฮไลต์ด้วยบัญชีของคุณ
Step 2 - เข้าสู่ระบบบัญชีของคุณ
$StorageAccountName = "mystorageaccount"
$StorageAccountKey = "mystoragekey"
$Ctx = New-AzureStorageContext $StorageAccountName - StorageAccountKey
$StorageAccountKey
Step 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
Step 1 - เข้าสู่ระบบบัญชี Azure ของคุณและไปที่บัญชีที่เก็บข้อมูลของคุณ
Step 2 - คลิกที่ลิงค์ 'Storage explorer' ตามที่แสดงในวงกลมสีม่วงในภาพต่อไปนี้
Step 3- เลือก 'Azure Storage Explorer สำหรับ Windows' จากรายการ เป็นเครื่องมือฟรีที่คุณสามารถดาวน์โหลดและติดตั้งบนคอมพิวเตอร์ของคุณ
Step 4 - เรียกใช้โปรแกรมนี้บนคอมพิวเตอร์ของคุณและคลิกปุ่ม 'เพิ่มบัญชี' ที่ด้านบน
Step 5- ป้อน 'ชื่อบัญชีที่เก็บข้อมูล' และ 'คีย์บัญชีที่เก็บข้อมูล' แล้วคลิก 'ทดสอบการเข้าถึง ปุ่มล้อมรอบในภาพต่อไปนี้
Step 6- หากคุณมีตารางในพื้นที่จัดเก็บอยู่แล้วคุณจะเห็นในแผงด้านซ้ายใต้ "ตาราง" คุณสามารถดูแถวได้โดยคลิกที่แถว
สร้างตาราง
Step 1 - คลิกที่ 'New' และป้อนชื่อตารางตามที่แสดงในภาพต่อไปนี้
แทรกแถวลงในตาราง
Step 1 - คลิกที่ 'ใหม่'
Step 2 - ป้อนชื่อฟิลด์
Step 3 - เลือกประเภทข้อมูลจากดรอปดาวน์และป้อนค่าฟิลด์
Step 4 - หากต้องการดูแถวที่สร้างขึ้นให้คลิกที่ชื่อตารางในแผงด้านซ้าย
Azure Storage Explorer เป็นอินเทอร์เฟซพื้นฐานและใช้งานง่ายในการจัดการตาราง คุณสามารถสร้างลบอัปโหลดและดาวน์โหลดตารางได้อย่างง่ายดายโดยใช้อินเทอร์เฟซนี้ สิ่งนี้ทำให้งานง่ายมากสำหรับนักพัฒนาเมื่อเทียบกับการเขียนสคริปต์ที่มีความยาวใน Windows PowerShell