• Microsoft Azure Media Services 支援 RTMP 協定與即時編碼

    感謝北科大劉建昌同學翻譯微軟公司 Azure Media Services 團隊主管  Cenk Dingiloglu 於 2014 年 9 月 18 日所發表的文章 http://azure.microsoft.com/blog/2014/09/18/azure-media-services-rtmp-support-and-live-encoders/

    Mixing board 

    Microsoft Azure Media Services 直播串流服務功能日前已經進入技術預覽階段,公開接受用戶測試。而在直播串流服務中所用到的RTMP 協定是 Microsoft Azure Media Services 支援的內嵌 ( ingest protocol ) 協定之一,也是目前市場上常用的協定,用來獲取與傳送多媒體資訊。

    Microsoft Azure Media Services 提供了使用 RTMP 協定來內嵌串流資訊並且使用動態封裝 (Dynamic Packaging) 來傳送不同的媒體串流格式 (例如 : MPEG-DASH、Microsoft Smooth Streaming、Apple HLS、Adobe HDS )。RTMP 協定目前被廣泛應用在影音輸入與傳輸,支援 RTMP 協定讓 Microsoft Azure Media Services 直播串流服務能夠將獲取的影片;多重輸出串流至不同媒體格式的裝置與端點上,並且能夠保持與傳統撥放器的相容性。

    關於在 Azure Media Service 上設定一個直播通道 ( Live Channel ) 和串流端點的資訊,請參考 Microsoft Azure 中文部落格 - 如何使用 Microsoft Azure Media Services 進行現場直播 ( Live Streaming )

    本篇文章的重點將放在介紹 Azure Media Service 的 RTMP 內嵌功能,以及如何透過 Wirecast、Flash Media Live Encoder ( FMLE )、FFmpeg 等編碼器,利用 RTMP 協定將多種畫質之多重位元資訊 ( multi-bitrate ) 即時送進 Azure Media Service 的通道中 ( Channel )。

    即時串流 ( Live Streaming ) 的基本資訊與架構

    即時串流的架構最主要由三個主要的元件所組成:通道/節目 ( Channel/Program )、串流端點與串流單位 ( Streaming Endpoints )、儲存體 ( Storage )

    Live-architecture

    1. 通道/節目( Channel/Program ) :

    • 通道 ( Channel ) 用來啟用直撥服務並且支援 RTMP 和 MP4 ( Smooth Streaming ) 兩種內嵌協定。即時編碼器 ( Live Encoder ) 透過內嵌點 ( ingest point ),將串流傳送到通道中。
    • 節目 ( Program ) 為通道內的一個邏輯組件,節目會發布收到的串流資訊並且將這些資訊歸檔,轉換成 VOD ( Video On Demand ) 或是即時撥放窗口。

    2. 串流端點 ( Streaming Endpoint ) 與串流單位 ( Streaming Units ):

    • 串流端點 ( Streaming Endpoint ) 提供了一個URL,從中您可以得到您的即時串流或是 VOD ( Video On Demand ) 資產,同時,也提供了動態封裝功能以及安全的傳送串流。

    3. 儲存體 ( Storage )

    • 節目 ( Program ) 利用 Azure Storage 來儲存即時檔案。而 VOD 和編碼器服務也需要使用到儲存的服務。

     

    通道 ( Channel ) 支援 RTMP 協定

    Azure Media Services Channel 支援 RTMP 協定將串流推向通道中,它可以支援單一 ( single bitrate ) 和多重位元輸入 ( multi-bitrates ),不過我們強烈建議使用多重位元輸入 ( multi-bitrates ) ,這樣的好處是可以讓不同單位可以使用自己最適合的串流位元。在未來的 Azure Media Services 中,將會提供即時轉碼服務,這個服務能夠將單一的位元 ( single bitrate ) 輸入轉換成多重位元輸出 ( multi-bitrates )。

    要使用 RTMP 嵌入協定 ( ingest ),需要符合下列要求 :

    • 備妥支援 RTMP 輸出的編碼器 (Encoder)
    • 支援能夠輸出 H.264 標準壓縮的影片以及進階音訊編碼 ( AAC ) 的音訊編碼器
    • 圖像組 (GOP) ( Group of pictures ) 或主要畫面格 ( Key Frame ) 與能夠搭配不同影片畫質
    • 主要畫面格的間隔需達2秒 (透過特殊的設定,您可以使用最多長達 6 秒的間隔時間。請參照本文之後介紹的進階設定 )
    • 不同的串流品質名稱都是唯一的
    • 網路連接 ( 頻寬需求量為視訊與音訊位元率的總和 )
    • 建議採用 CBR ( Constant bit rate ) 編碼以優化自動適應性 ( Adaptive ) 編碼效能

    在這篇文章中,將會使用三種不同的視訊輸出品質,並且內嵌 ( ingest ) 到 Azure Media Service Channel 之中。您可以使用更多的視訊輸出品質,但是要記住的是,您的輸出品質將被您的電腦編碼能力還有網路頻寬所限制,若您的網路頻寬較小,您可能會需要調整所使用的輸出品質數量,並且使用較低的編碼位元率 (bitrate)。當您嘗試輸出較多種視訊品質時,需要注意所需的網路頻寬是所有視訊品質的位元率總合。

    注意 : 當您重新設定編碼器或是重新建立編碼器與通道之間的連線時,都要對通道進行 "Reset" 的動作。

    使用 Wirecast 時的設定

    Wirecast 是一種支援 RTMP 協定的商用編碼器軟體。它可以即時編碼直播時所獲取的即時串流。您可以到 Telestream 網站下載 Wirecast 試用版並且得到相關的資訊,目前 Wirecast 最新版本為版本 5,並且能夠用來測試 Azure Media Service。

    輸入設定

    • 選取 "+" 按鈕。

    clip_image002

    • 選擇相機的圖示,此時會顯示目前連接電腦的攝影裝置,您可以在此選擇自己需要的攝影裝置。

    clip_image004

    • 選取完可用的攝影裝置後,您可以在錄影來源上看到目前攝影機的輸出畫面。點擊輸出畫面,並且讓它顯示在使用者介面上 ”Preview” 的位址

    clip_image006

    輸出設定

    • 在上方工具列選取"Output" ->"Output Setting"

    clip_image008

    • 在"Select an Output Destination"對話框中選擇目標伺服器,在此選擇RTMP Server

    clip_image010

    此時會出現輸出設定的對話框

    clip_image012

    • 為您第一個輸出品質 ( quality ) 等級作命名。本範例中取名為 "Azure Media Services Quality1"
    • 輸入一個唯一的串流名稱 ( myStream1 )。若您有多種不同的輸出品質,每一個輸出品質都需要有一個唯一的串流名稱
    • 為您第一個輸出品質建立一個新的預設編碼。
    • 在 "Output Setting dialog box" 中,選擇"New Preset",並且輸入新的預設編碼名稱 ( MyQuality1 )。

    clip_image014

    注意 :

    1. 當您在建立自己的預設編碼時,您必須保持 “Frames per second” 和 “Key frame every” 這兩個值在不同的輸出品質之間是相同的。

    2. 不同輸出品質,必須使用相同的音訊編碼設定並且確定有設置 "Keyframe Aligned",否則串流將無法運作或是無法內嵌置通道中。

    • 上述步驟結束後,您的輸出配置應該與下圖一樣

    clip_image016

    • 增加其他的輸出品質等級。點擊"Add",並且按照上述步驟來添加新的輸出品質

    clip_image018

    注意 :

    再次提醒,在建立新的預設編碼時,"Frames per second" 和 "Key frame every" 這兩個值在不同的輸出品質也要是一樣的。除此之外,也要確認有設置 "Keyframe Aligned" 並且為每個 Stream 命名一個唯一的名稱。

    • 下圖為 Wirecast 設定三種不同的輸出品質等級

    clip_image020

    開始編碼並且將串流資料內嵌到通道中

    • 接下來,點擊“->”按鈕,將“Preview”的畫面移動到“Live”上,此時您在畫面上可以看到錄影的輸出

    clip_image022

    • 點選左上角 ”Stream” 按鈕,您將可以看到有一個紅點在按鈕中,讓您知道您目前正在進行直播。

    clip_image024

    預覽串流

    您可以透過Azure管理網站來預覽甚至是發布您的串流。

    (關於預覽與發布串流的詳細資訊,請參考Microsoft Azure中文部落格如何使用 Microsoft Azure Media Services 進行現場直播 (Live Streaming))

    做為替代方案,您也可以使用http://amsplayer.azurewebsites.net/來選擇不同的播放器來預覽您的串流視訊。

    使用 Flash Media Live Encoder 時的設定

    FMLE 為 Adobe 公司發行的一個免費軟體。您可以至 http://www.adobe.com/products/flash-media-encoder.html 下載FMLE以及了解更多相關訊息。

    在預設的情況下,FMLE 支援 MP3 格式的音訊輸出。目前 Azure Media Service 並不提供即時轉碼服務,並且要求必須使用進階音訊編碼 ( AAC ) 以動態封裝串流到多種格式中 ( MPEG-DASH、Smooth Streaming、HLS )。因此,為了要在 Azure Media Service 上使用 Adobe FMLE,您會需使用額外的 ACC 插件 ( plugin ) 。在本篇文章中,我們將會使用一個由 Main Concept 所提供的 FMLE ACC 插件。(您可以從 http://www.mainconcept.com/eu/products/plug-ins/plug-ins-for-adobe/aac-encoder-fmle.html 下載與安裝此一 ACC 插件)

    設定 FMLE

    您需要做的第一件事情是設定讓 FMLE 使用 Network Time Protocol (NTP) 做為 RTMP 協定的時間標籤,請依照下列步驟 :

    1. 關閉您的編碼器

    2. 使用文字編輯器打開 FMLE 的組態檔 (config.xml)。

    1. 若您沒有更改預設的安裝路徑,則您可以在 C:\Program Files\Adobe\Flash Media Live Encoder 3.2\ 找到FMLE的組態檔。
    2. 若 Windows 作業系統為 x64 則是在 C:\Program Files (x86)\Adobe\Flash Media Live Encoder 3.2\ 找到FMLE的組態檔。
    3. 在 MAC OS 作業系統的預設安裝路徑為 HD:Applications:Adobe:Flash Media Live Encoder 3.2

    3. 將 streamsynchronization/enable 設定true,如以下範例 :

    <streamsynchronization>

    <!– “true” to enable this feature, “false” to disable.                

    <enable>true</enable>

    4. 儲存檔案,並且再次打開您的編碼器。

    • 在目前連接的設備清單中,選擇您要的攝影裝備。
    • 在編碼清單中選擇您要的預設編碼,或是自己建立一個預設編碼。

    若您要自己建立一個預設編碼,請參考本文 "通道支援 RTMP 協定" 章節。

    在本篇範例中,將使用

    "Multi Bitrate – 3 streams (1500) Kbps – H.264"

    此選項將採用H.264標準的多位元率編碼,並且輸出三種不同的輸出串流。

    clip_image026

    • 在視訊編碼格式的進階設定中,設定 "Key Frame frequency" 為2秒。

    clip_image028

    • 設定 "Frame rate" 為 30 fps。

    clip_image030

    • 選擇您的音訊輸入裝置。
    • 設定音訊輸出格式為 AAC

    ( 注意 : 在預設的狀況下 ACC 和 HE-AAC 不能使用,因為 FMLE 只能夠輸出 MP3 格式的音訊檔,因此您需要通過外部的插件來讓 FMLE 使用 AAC 編碼 )

    • 設定所需的音訊頻寬,在本篇範例中,將使用 96Kbps 的位元率和 44100 Hz 的取樣率。

    clip_image032

    • 在 Stream 欄位中輸入 "stream%i",這項設定可以讓 FMLE 將每一個輸出品質 ( Quality ) 命名為唯一的串流名稱

    clip_image034

    下圖為上述完成的設定 

    clip_image036

    開始編碼並且將串流資料內嵌到通道中

    • 點擊 "Connect",將編碼器連接到

    clip_image038

    • 選取 "start" 開始進行編碼

    注意 : 您也可以使用 FMLE 的指令模式完成上述的操作。

    詳細資料請參考Start Flash Media Live Encoder in command-line mode”

    clip_image040

    • 下圖為直播開始的畫面

    clip_image042

    預覽串流

    您可以透過 Azure 管理網站來預覽甚至是發布您的串流。關於預覽與發布串流的詳細資訊,請參考 Microsoft Azure中文部落格如何使用 Microsoft Azure Media Services 進行現場直播 ( Live Streaming )

    做為替代方案,您也可以使用 http://amsplayer.azurewebsites.net/ 來選擇不同的播放器來預覽您的串流視訊。

    在 Azure Media Services 上使用 FFmpeg 時的設定

    FFmpeg 是知名的開放原始碼計畫,可以支援多種格式的音訊和視訊輸出。RTMP 也是 FFmpeg 上所支援的一項協定。您可以在FFmpeg 的官網下載與了解更多相關資訊。在這篇文章中,將不會特別介紹和說明 FFmpeg 的指令和其用處,而是使用先前已經撰寫好的指令來將本地端的檔案進行串流,並且模擬一個即時串流。您可以使用 FFmpeg 來截取來自多種不同設備 (包含攝影機、桌面截取等設備) 的輸入的資訊。您可以在 FFmpeg 的官網下載與了解更多相關資訊。

    範例指令

    以下為 FFmpeg 的範例指令

    • 輸出單一位元率( Single Bitrate ) :

    C:\tools\ffmpeg\bin\ffmpeg.exe -v verbose -i MysampleVideo.mp4 -strict -2 -c:a aac -b:a 128k -ar 44100 -r 30 -g 60 -keyint_min 60 -b:v 400000 -c:v libx264 -preset medium -bufsize 400k -maxrate 400k -pix_fmt yuv420p -f flv rtmp://channel001-streamingtest.channel.media.windows.net:1935/live/a9bcd589da4b424099364f7ad5bd4940/mystream1

    • 輸出多種位元率 ( Multi bitrates ) ( 500Kbps,300Kbps,150Kbps ):

    C:\tools\ffmpeg\bin\ffmpeg.exe -threads 15 -re -i MysampleVideo.mp4 -strict experimental -acodec aac -ab 128k -ac 2 -ar 44100 -vcodec libx264 -pix_fmt yuv420p -s svga -b:v 500k -minrate 500k -maxrate 500k -bufsize 500k  -r 30 -g 60 -keyint_min 60 -sc_threshold 0 -f flv rtmp://channel001-streamingtest.channel.media.windows.net:1935/live/a9bcd589da4b424099364f7ad5bd4940/Streams_500 -strict experimental -acodec aac -ab 128k -ac 2 -ar 44100 -vcodec libx264 -pix_fmt yuv420p  -s vga -b:v 300k -minrate 300k -maxrate 300k -bufsize 300k -r 30 -g 60 -keyint_min 60 -sc_threshold 0 -f flv rtmp://channel001-streamingtest.channel.media.windows.net:1935/live/a9bcd589da4b424099364f7ad5bd4940/Streams_300 -strict experimental -acodec aac -ab 128k -ac 2 -ar 44100 -vcodec libx264 -pix_fmt yuv420p -s qvga -b:v 150k -minrate 150k -maxrate 150k -bufsize 150k  -r 30 -g 60 -keyint_min 60 -sc_threshold 0 -f flv rtmp://channel001-streamingtest.channel.media.windows.net:1935/live/a9bcd589da4b424099364f7ad5bd4940/Streams_150

    在輸出多種位元率的指令碼中,建立了三種不同的視訊輸出品質 ( 500Kbps, 300Kbps, 150Kbps ),主要畫面間隔為兩秒。並且在將串流輸出到 Azure Media Service 通道 ( Channel ) 中。請參考 Microsoft Azure中文部落格如何使用 Microsoft Azure Media Services 進行現場直播 ( Live Streaming ),裡面有關於通道內嵌URL的詳細介紹。

    • 若要使用電腦的 WebCam 以單一位元率( Single Bitrate ) 來進行直播,可以先鍵入

    C:\tools\ffmpeg\bin\ffmpeg.exe -list_devices true -f dshow -i dummy

    得知麥克風與攝影設備的名稱,以此範例,攝影設備名稱為 Integrated Camera 而麥克風設備名稱為 Microphone (High Definition Audio Device),以下是將電腦 WebCam 透過 ffmpeg 編碼為 H.264 送往 Azure Media Services Live Streaming Channel 的範例:

    C:\tools\ffmpeg\bin\ffmpeg.exe -v verbose -f dshow -i video="Integrated Camera":audio="Microphone (High Definition Audio Device)" -strict -2 -c:a aac -b:a 128k -ar 44100 -r 30 -g 60 -keyint_min 60 -b:v 400000 -c:v libx264 -preset medium -bufsize 400k -maxrate 400k -pix_fmt yuv420p -s 640x360 -f flv rtmp://channel001-streamingtest.channel.media.windows.net:1935/live/a9bcd589da4b424099364f7ad5bd4940/mystream1

     

    預覽串流

    您可以透過 Azure 管理網站來預覽甚至是發布您的串流。關於預覽與發布串流的詳細資訊,請參考Microsoft Azure中文部落格如何使用 Microsoft Azure Media Services 進行現場直播 ( Live Streaming )

    做為替代��案,您也可以使用 http://amsplayer.azurewebsites.net/ 來選擇不同的播放器來預覽您的串流視訊。

    進階設定

    在預設的情況下,Azure Media Service 通道被設定為每兩秒內嵌主畫面資料,並且使用 HLS 輸出 3 對 1 的對映設定 ( 3 to 1 mapping ),這代表著若您每兩秒內嵌一次主畫面資料,則您的 HLS 輸出片段則為六秒 ( 3 * 2 = 6 second )。

    若您想要調整這個內嵌的時間間隔,您必須使用 SDK。因為這種進階設定無法透過 Azure 入口網站做設定。您可以透過 Creating a Live Streaming Application with the Media Services SDK for .NET 來了解更多使用SDK來進行進階設定的資訊

    關於設定的參數,請參閱 :

    ChannelInput/KeyFrameInterval

    ChannelOutput/Hls/FragmentsPerSegment

    總結與未來發展

    本篇文章介紹了如何在 Azure Media Service 使用支援 RTMP 協定的多種編碼器,以及介紹了詳細的設定細節 。

    除了上述的功能之外,您還可以使用 Azure Media Service 完成更多的功能,更多的資訊您可以參考官網 Azure Media Services”,也可以透過 SDK 來完成建立即時串流 Working with Azure Media Services Live Streaming”

    希望您透過上述的文章可以了解如何在 Azure Media Service 上使用 RTMP 協定的編碼器,若是有任何的問題,可以透過官網讓我們知道。

  • 如何將 MySQL 資料庫轉移到 Microsoft SQL Server 與 Azure SQL Database

    代發北科大劉建昌同學所撰寫之技術文件

    MySQL 是相當常用之資料庫伺服器,而微軟雲端服務 Microsoft Azure 上 Azure SQL Database 是一個功能強大且經濟實惠的選擇,透過本篇文章,使用 SQL Server Migration Assistant ( 以下簡稱 : SSMA ) 利用幾個簡單的步驟,可將您的 MySQL 資料庫移轉到  Microsoft SQL Server 或是 Azure SQL Database 上。

    SQL Server 移轉小幫手

    SSMA 支援多種架構的資料庫 (Sybase、Oracle、MySQL) 快速移轉到 Azure SQL Database 或 Microsoft SQL Server。它將移轉資料庫的主要步驟;例如 : 結構 (Schema) 轉換、SQL 陳述式轉換、資料表格移轉等加以自動化,來減少從不同架構的資料庫移轉至 Azure SQL Database 或 Microsoft SQL Server 的時間和風險。SSMA 目前提供以下多種版本:

    • 支援 Oracle 之 Microsoft SQL Server 移轉小幫手 (Version 6.0)

    Microsoft SQL Server Migration Assistant v6.0 for Oracle

    • 支援 MySQL 之 Microsoft SQL Server 移轉小幫手 (Version 6.0)

    Microsoft SQL Server Migration Assistant v6.0 for MySQL

    • 支援 Sybase 之 Microsoft SQL Server 移轉小幫手 (Version 6.0)

    Microsoft SQL Server Migration Assistant v6.0 for Sybase

    • 支援 Access 之 Microsoft SQL Server移轉小幫手 (Version 6.0)

    Microsoft SQL Server Migration Assistant v6.0 for Access

    關於安裝步驟,詳情請參考 : SQL Server Migration Assistant Team's Blog

    將 MySQL 資料庫移轉到 Microsoft SQL Server 步驟

    1. 下載並且安裝 Microsoft SQL Server Migration Assistant for MySQL

    2. 開啟 Microsoft SQL Server Migration Assistant for MySQL

    接著點選 File 來新增一個新的資料庫物件(object)。

    clip_image002

    在新增物件的對話方塊中,會要求輸入物件名稱以及要將 MySQL 資料庫移轉到哪個版本的 Microsoft SQL Server 或是 Azure SQL Database ( 舊名 SQL Azure )。本範例中我們選擇將 MySQL 資料庫移轉到 Microsoft SQL Server 2008 Express 版。

    clip_image004

    選取 "OK",則新的資料庫物件就建立好了。

    注意 : 若是您目前的 SQL Server 版本是舊版本 (例如 : SQL Server 2008),則您資料庫物件轉移選項不能夠高於此版本。

    3. 建立 MySQL 資料庫連線

    選取左上角的 "Connect to MySql"

    clip_image006

    輸入 MySQL 的伺服器名稱、連結的通訊端口、使用者名稱與密碼

    clip_image008

    注意 :

    • 要連結 MySQL 的話,還需要安裝 MySQL-Connector-odbc (版本5.1以上),若先前沒有下載的話,在上圖頁面中會被提醒要下載 MySQL ODBC,您可至 http://dev.mysql.com/downloads/connector/odbc/ 下載安裝
    • MySQL-Connector-odbc 無法連接 MySQL 4.0 與更舊版本的 MySQL

    輸入完畢之後,點選 "Connect" 按鈕,接著如下圖所示。在左上邊的 MySQL Metadata Explorer 會顯示出我們想要轉移的 MySQL 資料庫 (world),而在最下方輸出列中會顯示 SQL Server Migration Assistant 已經成功的連接到 MySQL。

    clip_image010

    上圖右方則是可以讓我們設定對映的 Type、Schema 等移轉的選項。

    4. 連接 Microsoft SQL Server

    選取左上角"Connect to SQL Server"

    clip_image012

    接著輸入 SQL Server 的伺服器名稱、目標資料庫名稱以及使用者帳密。

    clip_image014

    輸入完畢之後,會看到以下的警告訊息。

    會出現以下原因為 SQL Server 2008 Express R2 不提供SQL Agent,但是這並不影響移轉的結果,這邊選擇繼續。

    clip_image016

    若您輸入的資料庫在 SQL Server 中不存在的話,會有提示告訴您要建立一個。

    clip_image018

    如同步驟三一樣,在最下方工具列上,可以看到 SQL Server Migration Assistant 已經成功的連到了目標 SQL Server

    clip_image020

    5. 轉換結構描述(Convert Schema)

    目前 SQL Server Migration Assistant 已經連接上了 MySQL 和 SQL Server,接著我們要來轉換結構描述,將 MySQL 資料庫中的欄位、欄位類型、主鍵 (primary key)、外鍵 (foreign key) 等結構轉換適用到 SQL Server。

    點選要轉換的MySQL資料庫,選取上方工具列的"Convert Schema"。

    clip_image022

    完成轉換後,我們可以看到 SQL Server 裡面已經有與 MySQL 資料庫中相同的 Schema。

    clip_image024

    6. 同步 (Synchronize)

    上述步驟已經將 MySQL 的表單和 Schema 轉換到 SQL Server 上。下一個步驟,我們要使用 SSMA 將 SQL Server 與資料庫物件做同步。

    在SQL Server資料庫中,點擊滑鼠右鍵,選取 "Synchronize with database "

    clip_image026

    clip_image028

    在最下方的輸出列中可以看到同步已經完成了。

    clip_image030

    7. MySQL 的資料轉移到 SQL Server

    最後一個步驟就是將 MySQL 資料庫內的所有資料全部轉移到 SQL Server 之中。

    選取工具列上的 "Migrate Data"

    clip_image032

    資料轉移結束之後,可以從資料轉移報告上看到資料移轉的情況

    clip_image034

    從下圖可以看到資料成功的從 MySQL 資料庫移轉到 SQL Sever上

    clip_image036

    將 MySQL 資料庫移轉到 Azure SQL Database

    將 MySQL 資料庫移轉到Azure SQL Database 的步驟其實與上面所述相當接近,只有在建立資料庫物件與建立連線上有些許的差別。

    1. 點選 File來新增一個新的資料庫物件 (object)。

    clip_image037

    與上述有差別的地方就是,在建立物件的對話框中,我們要選取移轉的資料庫為 ”SQL Azure” ( Azure SQL Database 舊名)

    clip_image039

    當資料庫物件建立完成,並且與 MySQL 資料庫連接 (上述步驟3),此時我們要來建立與目標 Azure SQL Database 的連結。

    2. 首先要先在 Microsoft Azure 上建立一個 Azure SQL Database。

    詳細的方式請參閱這裡

    3. 建立好了 Azure SQL Database 之後,我們進入 Azure 管理頁面,並且選擇 ”SQL 資料庫”

    clip_image041

    4. 在這項服務中,可以看到訂閱帳戶中的所有Azure SQL Database。

    點選移轉目標的資料庫後,在儀表板的右下角可以看到 Azure SQL Database 的伺服器名稱,這個名稱就是在下個步驟中,要建立SSMA 與 Azure SQL Database 連線時,所要輸入的伺服器名稱。

    clip_image043

    5. 由於在步驟1已經告知 SSMA 要移轉的目標為Azure SQL Database,也因此在工具列選項也與上述不同。

    選取”Connect to SQL Azure”

    clip_image045

    在這裡需要輸入步驟4的伺服器名稱、伺服器帳號密碼、目標資料庫名稱

    clip_image047

    建立完成之後,在左手邊的 "SQL Azure Metadata Explorer" 視窗可以看到,SSMA 已經與您的 Azure SQL Database 完成連線。

    clip_image049

    6. 建立完SSMA與Azure SQL Database 的連線之後,剩餘的動作包括:轉換結構描述、同步、移轉資料等步驟都與上述相同。

    下圖顯示資料已經成功的移轉到Azure SQL Database

    clip_image051

    7. 完成最後一項步驟之後,透過 Microsoft Azure 的管理網站,我們可以直接使用SQL Database Management Portal 來管理資料庫,在此之前我們需要先取得存取資料庫權限。

    進入到Azure SQL Database 的管理頁面,在最下方工具列選取管理。

    clip_image053

    此時會跳出對話框,詢問您是否要將您目前的 IP 位址加至防火牆規則中,選取"是",這樣 Azure 就會自動將您的 IP 加至規則中,如此才能夠進入 Azure SQL Database 的管理頁面。

    clip_image055

    您也可以透過伺服器管理頁面,將您所在的 IP 位址加至允許存取伺服器的 IP 範圍中

    clip_image057

    8. 取得管理權限之後,就可以使用SQL Database Management Portal 進入到資料庫內部進行管理。

    輸入伺服器使用者名稱與密碼 (先前在新增步驟時所建立的)

    clip_image059

    透過 Azure SQL Database 的管理介面可以看到,MySQL 資料庫的 Schema 和資料已經成功的移轉到Azure SQL Database上。

    clip_image061

  • 如何使用 Microsoft Azure Media Services 進行現場直播 (Live Streaming)

    感謝北科大劉建昌同學翻譯 微軟公司 Azure Media Services 團隊主管  Jason Suess 於 2014 年 9 月 10 日所發表的文章 http://azure.microsoft.com/blog/2014/09/10/getting-started-with-live-streaming-using-the-azure-management-portal/

    louis_bebe_barron_greenwich_village_studio

    不久之前,微軟公司宣布了 Microsoft Azure Media Services 即時直播服務 ( Live ) 開始進入技術預覽階段,公開接受用戶測試。而這些即時直播服務其實早已被 NBC 運動頻道用於多項重大運動賽事直播,包括英超聯賽、NHL、週日橄欖球之夜 ( Sunday Night Football ) 以及 2014 年索契冬季奧運會。在最近剛結束的 2014 世界盃足球賽期間,Azure Media Services 即時媒體服務同樣的也被10 家世界性的電視傳播公司用來轉播比賽。也因此,我們對於這項服務的穩定性、可擴充性以及性能都深具信心,也很高興可以讓所有使用者都可嘗試提供即時直播服務給他們的用戶。

    自本周起 Azure Media Services 團隊將撰寫多篇文章,內容涵蓋了 Microsoft Azure 即時串流服務的功能以及如何使用它們。首先,我們會介紹一些基本的即時串流所需要的一些要件,並且將其應用到一個特定的場景 (網路直播桌面)。而我們只需要透過 Azure 的管理入口網站,無需任何的程式碼即可達到所需要的設定。但是在未來的幾天,將會有另外一篇文章說明如何使用 Microsoft Azure SDK 以程式控制的方式來達到相同的設定。

    即時串流的基本組件 :

    以下將開始介紹在進行即時串流時所需要用到的組成,並且在文章的最後,將這些組件做結合。

    • Azure 的訂閱帳戶

    如果您還沒有微軟的 Azure 帳戶,您需要先到http://azure.com上建立一個新的Azure帳戶,並且在購買前,會有一段免費期可供試用。

    • Azure Media Services 媒體服務帳戶

    如果您還沒有創建 Azure 媒體服務帳戶,這裡有一些相關文件,說明如何建立一個 Azure 媒體服務帳戶http://azure.microsoft.com/en-us/documentation/articles/media-services-create-account/

    • 視訊攝影機

    在本篇文章中,將使用筆記型電腦上的網路攝影機,如果您要使用其它的攝影機,而您的攝影機有提供數位輸出,可直接透過 USB 將攝影機連接到 PC,並且透過軟體進行編碼。倘若您的攝影機沒有支援數位輸出,那您則需要一個視訊擷取卡 ( video capture card ) 將攝影訊號傳入至 PC。

    • 即時編碼器 (Live Encoder)

    目前 Azure Media Services 媒體服務支援兩種即時內嵌 ( live ingest ) 協定 :

    fragmented MP4/Smooth Streaming 和 RTMP (Real Time Message Protocol)。

    目前支援 RTMP 這項協定的編碼器軟體已經變得相當普遍,包括 :

    1. 免費的編碼器軟體 ( Flash Media Encoder 和 FFMPEG )

    2. 平價之商用編碼器軟體 ( Telestream 的 Wirecast )

    3. 生產高價值產品 ( NewTek 的 Tricaster )

    4. 專業級的編碼器 ( Cisco, Elemental, Image 等 )

    在本文範例中,會使用 Telestream 的 Wirecast 做為示範用的編碼器,如果您沒有此一編碼器軟體,可以從Telestream的網站去下載 Wirecast 試用版,它提供了一段免費試用期。需要注意的是,視訊編碼需要耗用相當大的 CPU 資源,因此當以下範例在做視訊編碼時,會限制只有三個編碼品質等級 ( quality level ),並且產生相對的降低位元速率 (bit rates),若您所使用的筆記型電腦或是 PC 其 CPU 運算能力較低,您需要去監視 CPU 的使用率,若一直高於 70% 的話,您需要考慮刪除一個品質等級或是降低位元率和降低影片解析度。

    • 高速的網路連接

    要提供視訊直播的服務,您需要連接一個高速的網路,而這個網路需要有相當穩定的傳出速度 ( 至少要為傳送視訊的位元速率的 1.5倍 )。考慮到編碼器輸出的位元速率會有波動,因此在本例中,我們建立了三種品質等級的串流 (400、600、900 Kbps),合計總位元速率為 1900 Kbps,因此最少需要 2850 Kbps (2.85 Mbps) 的網路傳出速率。

    • Azure Media Services Channel 媒體服務通道

    通道 ( Channel ) 是在 Azure 媒體服務中的功能,用來實現即時串流。通道在 Azure 媒體服務範圍內提供編碼器輸出一個內嵌點 ( ingest point )。

    • Azure Media Services Asset 媒體服務資產

    在媒體服務中資產 ( Asset ) 如同一個容器 (Container),用來儲存所有與您的串流有關連的音訊、視訊、中繼資料等。

    • Azure Media Services Program 媒體服務節目

    Azure Media Service Program 媒體服務節目是 Azure 媒體服務的運作實體,其運作的流程為,建立一個通道,並且開始將串流透過通道寫入資產 ( Assest ) 中。

    • Azure Media Services Streaming Locator 媒體服務串流定位器

    當您想要讓資產 ( Asset )可以開始存取流時,您需要在資產中建立一個定位器。

    • Azure Media Services Streaming Endpoint and Streaming Units 媒體服務串流端點與串流單位

    1. 串流端點 (Streaming Endpoint) 提供了一個URL,從中您可以得到您的即時串流或是 VOD (Video On Demand) 資產,同時,也提供了動態封裝功能以及安全的傳送串流。

    2. 串流單位 (Streaming Units) 保證了一定的最大輸出量提供給串流端點,每個串流單位提供了 200 Mbps 的串流流出產量,並且根據使用上的需求,可以增加更多的容量到您的串流端點。

    • Azure CDN

    在不久的將來,我們將直接整合 Azure CDN 和 Azure 媒體服務。完成之後,串流端點將可以有一個新的設定。那就是允許直接配置一個 Azure CDN 端點連接至您的串流端點。在尚未完成整合的此時,您可不使用 CDN 直接由串流端點作串流播放的動作,或是聯絡 Azure support 部門,商請微軟公司為您的串流端點設置 Azure CDN。

    • 視訊撥放器

    Azure 媒體服務的串流端點提供了動態封裝的功能,因此可用來針對多種不同用戶端所使用的通訊協定,提供不同的媒體串流格式 ,例如 : iOS 使用到 HTTP 即時資料流版本3格式 ( HLS version 3 ) 。在以下範例中,我們將使用一個遵循 動態與適應性媒體串流標準 (MPEG-DASH) 的 HTML/DASH.js 撥放器來支援多個平台的影片撥放 (電腦瀏覽器、Android、Windows Phone)。

    有關更多動態封裝的資訊,可以去 Channel9觀看 Nicks 的影片或是到 MSDN網站 查詢。

    實際範例 : 網路直播

    現在,讓我們來解釋一下本篇案例將可以達到何種效果。

    在以下的步驟中,我們將建立一個網路直播,用來撥放電腦視訊鏡頭所拍攝的事件。在直播串流的專有名詞中,我們可以把這項直播想像成一個”事件”(event)並且擁有一個開始的時間和結束的時間。這個觀念和我們平常在電視上看到的直播節目(線性串流Linear streaming)為一個對比,在之後的介紹文章中,我們也會介紹如何使用Azure媒體服務來達到線性串流。

    事前設定(Pre-Event Setup)

    在要進行直播的事件前,我們需要透過以下的步驟來做事前設定。

    注意 : 這些步驟可以在任何時間點進行,而不需要趕在開始直播前做設定。

    建立一個 Azure Media Services channel 媒體服務通道和串流端點

    在第一組設定步驟中,我們將使用Azure管理入口網站配置一些基礎建設,這些基礎建設將要用來接收來自編碼器(encoder)的直播串流還有來自客戶端的撥放設備所傳送的封包(packet)。

    1. 點擊連結到http://azure.com,然後在最上方的選單中點選”入口網站”(Portal),登入您的Azure訂閱帳戶,您將會進入到Azure的管理網站。

    clip_image002

    2. 在最左側的垂直選單中,選取”媒體服務” (MEDIA SERVICES),您將可以看到在 Azure 訂閱帳戶中的所有媒體服務。

    clip_image004

    3. 選取你要在哪個媒體服務中建立這項範例。

    在這篇文章中,將使用先前建立好的名為 barttest 的媒體服務。

    您可以在媒體服務裡面看到頂端的選單,這裡可以用來建立和控制所有媒體服務的細部設定。

    若您已經使用 Azure 媒體服務一段時間的話,您將會注意到,現在新增”通道”這項新功能,在這裡可以管理和控制 Azure 媒體服務的即時通道 ( Live Channel )。

    4. 選取最上方選單的”通道”選項,將會列出您在這個媒體服務中所建立的通道清單(如果您有建立的話)

    5. 若您還沒有建立任何的通道,則在下方會顯示”您沒有任何通道”,選取”新增通道”,將會打開一個對話寬,在這個對話框中設定您的通道屬性。

    clip_image006

    6. 在”建立新的即時通道”對話框中,輸入您的通道名稱。

    接下來要指定通道所使用的採集內嵌協定 (ingest protocol)。在本範例中,我所使用編碼器為 Wirecast,其輸出嵌入協定為RTMP。

    最底下有三個選項 :

    A. 立即啟動新通道” : 選取這個選項,之後您就不需要再做額外的動作去啟動這個通道。

    B. 加入一個資料流單位” : 這個選項在您的串流端點上沒有任何串流單位時,將會自動預設為選取。選取這個選項,Azure 將會自動提供一個串流單位給您,這樣您就不需要再去花時間做設定。

    C. 將影片內嵌限制為我電腦的目前IP位址” : 若選取這個選項的話,它會為您的通道申請一個 IP 存取控制清單 (IP access control list , ACL ),ACL 將會鎖定這個通道只能夠在您的電腦上作輸入的動作。在本範例中我們將此選項取消。

    clip_image008

    7. 點擊對話框右下角的確認按鈕,則Azure媒體服務就會開始建立一個新的通道,並且將一個新的串流單位加到您預設的串流端點中。

    您可以在螢幕的底部看到建立新通道的進度列,新增一個新的通道大概需要花上幾分鐘的時間。

    clip_image010

    配置和啟動編碼器 (Encoder)

    透過上面的事前設定,我們現在擁有了進行媒體服務時所需要的基礎建設。

    下一個步驟則是設置 Wirecast,並且在我們的 Azure 服務通道上啟動它。

    為了加快設定的步驟,我們使用先前已經建立好的 Wirecast 配置文件,在這裡面已經設定好了即時轉播所需要的設定。但是在本文中將不會介紹這個文件的細節,在未來的幾個禮拜,另外一位作者 Cenk Dingiloglu  將會介紹更多關於編碼器的細節。

    1. 下載 Wirecast 配置文件 http://jasonsueblog.blob.core.windows.net/wirecastdocument/WirecastDocument.wcst

    2. 打開 Wirecast 和剛剛下載的配置文件。您很可能得到和下面圖示一樣的錯誤,那就是 Wirecast 找不到文件中所描述的媒體裝置。會顯示這項錯誤的原因是因為您並沒有使用與本文中相同的錄影設備。在這裡我們先點擊取消,在下一個步驟中我們將會解決這個問題。

    clip_image012

    3. 在 Wirecast 的用戶介面中,我們可以新增新的影像來源。

    在用戶端的底部有三排來源,點取”+”,並且選擇相機的圖示,此時會顯示目前連接電腦的錄影裝置,選取您要的錄影裝置之後,您就可以在錄影來源上看到目前攝影機的輸出畫面。

    clip_image014

    clip_image016

    clip_image018

    clip_image020

    4. 選取 Wirecast 的 ”Output” 清單,並且選擇 ”Output Setting”。

    您可以在對話框上看到,目前有三種串流編碼的品質等級 (400Kbp、600Kbp、900Kbps)。

    400Kbp 品質等級是使用 H.264 視訊編解碼標準中的 Baseline profile 編碼格式(H.264 Baseline profile),用來支援舊的 Andorid 播放設備,而 600Kbp 和 900Kbps 品質等級則是 Main profile編碼格式,用來提供高品質的視訊水準。

    在對話框中唯一缺少的則是目標串流位址(Address),我們在稍後會填寫上去。

    clip_image022

    clip_image024

    5. 回到Azure管理入口網站並且找到您的通道清單。

    在通道清單上選取內嵌 URL (INGEST URL),並且複製這段URL。

    clip_image026

    6. 再次回到 Wirecast 並且選取 ”Output Setting” 對話框,將剛才複製的內嵌 URL 貼到 ”Address” 框中,在這裡要確保三種品質等級的串流編碼都有進行此項動作。

    clip_image028

    7. 點擊”OK”按鈕。

    8. 點擊您在步驟三時所建立的錄影來源,並且讓它顯示在使用者介面上 ”Preview” 的位址

    clip_image030

    9. 接下來,點擊“—>”按鈕,將“Preview”的畫面移動到“Live”上,此時您在畫面上可以看到錄影的輸出

    clip_image032

    10. 完成以上的步驟,您已經完成了所有 Wirecast 的設定,剩下唯一的步驟就是要將您的串流”推”’到您的 Azure 媒體服務通道上。

    點選左上角 ”Stream” 按鈕,若一切順利的話,您將可以看到有一個紅點在按鈕中,讓您知道您目前正在進行直播。

    clip_image034

    11. 現在您可以檢查串流是否正確地從預覽的發送點傳送到通道中。

    回到Azure管理帳戶中,在底部的工具列選取”播放”按鈕。此時會有對話框出現,選擇”播放預覽URL”,這個動作將會打開一個視訊撥放器,並且將其連接到您通道上的預覽URL。

    clip_image036

    NOTE : 注意,若您有任何理由需要停止編碼器並且重新啟動的話,您首先需要在Azure管理帳戶上選取”重設通道”來重新調整您的通道設定。

    開啟事件 (Event) 和播放串流

    現在已經將視訊串流移動到通道之中,現在我們可以透過建立媒體服務資產(Asset)、媒體服務節目(Program)還有媒體服務串流定位器來開始我們的事件(Event),並且讓觀看者可以透過串流端點來觀看我們的直播。

    我們將使用一個快速的方法來達到以上的所有目標。

    建立和開啟節目

    1. 回到 Azure 管理帳戶,並且進入到通道的設定頁面裡,點擊頁面最下方工具列的”啟動資料流”,一旦完成這項步驟之後,通道列表上的”發行URL”將會被填入,您可以從上方的串流端點上拉進您的串流。

    clip_image038

    clip_image040

    播放直播串流

    現在,直播串流已經被存入資產中,資產是可以從串流端點中拉出的,並且可以動態的打包目前我們所支援的協定 ( MPEG-DASH,、HLS version 3、 HLS version 4、HDS、Smooth Streaming ),我們將充分利用這項功能讓直播串流可以在桌上電腦、iOS  和Android設備上播放

    1. 在 Azure 管理入口網站中,在通道列表的頁面,選取複製”發行URL”。

    2. 將"發行URL"將它貼到任何一個文字編輯器上

    它看起來像是

    “http://<您的帳號名稱>.origin.mediaservices.windows.net/<locator_guid>/<stream_guid>.ism/manifest”

    在這段URL上添加 (format=mpd-time-csf),這將告訴串流端點要把串流打包為 MPEG-DASH。若增加的是 (format=m3u8-aapl-v3)則是告訴串流端點將串流打包為 HLS (version3)。

    3. 在 Windows PC 或 MAC 上,(您需要一個瀏覽器可以支援擴充軟體資源,像是最新版本的 Internet Explorer 或 Chrome ),您可以透過http://aka.ms/dashplayer,用來測試您的串流。

    在頁面頂端貼上 DASH URL 並且選取 ”Load”。您可以在Android裝置或是Windows Phone重覆這項動作。

    NOTE : DASH 撥放器也可以用來把 DASH URL 當成查詢的參數,換句話說,您可以建構一個如以下範例的URL,並且分配到不同的裝置上

    http://dashplayer.azurewebsites.net/?URL=http://<您的帳號名稱>.origin.mediaservices.windows.net/../…ism/manifest(format=mpd-time-csf)

    4. 在 iOS 設備上,打開 Safari 瀏覽器,並且輸入 HLS ( version3 ) 的URL,就可以直接獲取本機播放器的串流,您也可以建立一個帶有視頻標籤的 HTML5 頁面,並且給予它一個 HLS 的 URL 作為其視訊的來源,來達到同樣的效果。

    停止事件

    當要結束一個事件時,您需要停止將串流傳入到資產中,這可以透過一個簡單的步驟來達成。

    回到 Azure 管理頁面,並且選擇您所使用的通道,在最底下的工具列中,選取"停止資料串流"。這個動作將會阻止節目在您的通道中運作並且會將其刪除。

    clip_image042

    我們的即時服務所擁有的功能之一,就是我們的資產在即時或是VOD狀態是無縫接軌的,如果您現在去連接先前的URL,您還是可以發現原先的串流還是存在,但是是VOD而不是即時的。

    清除通道

    若您想要在通道內運行其它的節目,您當然可以清除掉先前的串流。

    1. 第一,透過選取 Wirecast 上方的"Steam"按鈕,停止傳送串流,之後就可以關閉編碼器。

    2. 第二,回到Azure管理頁面,選取"通道",並且選取最下方工具列的"停止通道"。當通道狀態變為"已停止",則表示該通道並不會消耗任何的資源,當然這樣也不會有任何的費用產生。

    clip_image044

    clip_image046

    下次您要再次使用該通道時,您可以選取"啟動通道",此時該通道會再次的啟動,並且擁有相同的內嵌URL ( ingest URL ),這樣您就不需要重新設定您的編碼器了。

    3. 最後,關於串流端點,若您想要繼續提供 VOD 的紀錄,則您需要讓串流端點保持運作。但是若您不需要,則可以進入到"資料流端點"頁面中,在最底下選取"停止",則您的串流端點就不會再繼續運作。

    clip_image048

    結論以及下一步發展

    在上面的文章內容中,我們已經透過 Azure 的管理頁面來進行設定、執行、移除一個即時的串流。在未來的幾天,我們將會發表更多文章,內容涵蓋了如何對使用 RTMP 的編碼器進行設定、如何使用我們的 SDK 來執行現場活動 ( live event )、如何保護影片內容的安全性以及如何進行線性串流 ( linear streams )。

  • Azure虛擬機器組件庫釋出針對交易和資料倉儲的資料負載全新優化的虛擬機器映像檔

    我們很高興宣布Microsoft Azure 虛擬機器組件庫釋出全新優化的SQL Server 映像檔。這些預先配置好的映像檔對於交易及資料倉儲的資料負載進行優化,並分別使SQL運行於Azure VMs上擁有最佳的實務表現

    有哪些預先配置的虛擬機器映像檔可以使用?

    在Azure VM組件庫中有下列四個新的預先配置的虛擬機器映像檔可以使用:

    • SQL Server 2014 Enterprise Optimized for Transactional Workloads on Windows Server 2012 R2
    • SQL Server 2014 Enterprise Optimized for Data Warehousing on Windows Server 2012 R2
    • SQL Server 2012 SP2 Enterprise Optimized for Transactional Workloads on Windows Server 2012
    • SQL Server 2012 SP2 Enterprise Optimized for Data Warehousing on Windows Server 2012

    目前在虛擬機器實體上的映像檔允許附加16個data disks,用以提供最高的流量(或總頻寬)。這些實體是Standard Tier A4, A7, A8 和A9,及Basic tier A4。欲了解更多大小和選項的細節,請參考Azure虛擬機器和雲端服務大小

     

    如何開始從組件庫使用新的交易/資料倉儲映像檔?

    透過Azure 入口網站開始使用優化的交易或資料倉儲虛擬機器映像檔

    1. 登入Azure 入口網站
    2. 點選左下角的新增,然後點選計算,再點選虛擬機器,然後點選從組件庫
    3. 在虛擬機器映像檔選擇頁面,選擇其中一個交易或資料倉儲的SQL Server映像檔


       4. 在虛擬機器組態頁面中的大小選項,選擇一個可支援的大小


     

    請注意,只有Standard tier A4, A7, A8 and A9 and Basic Tier A4可支援,若企圖選擇未支援的虛擬機器大小將會使得虛擬機器建置失敗


     

       5. 等待虛擬機器建置完成,在這期間你可以在虛擬機器的頁面查看準備狀態。

    除此之外,你可以使用PowerShell Commandlet New-AzureQuickVM來建置虛擬機器。您將會需要輸入您的雲端服務名稱、虛擬機器名稱、映像檔名稱、管理者使用名稱和密碼等作為參數。取得映像檔名稱的簡易方法是使用Get-AzureVMImage列出所有可用的虛擬機器名稱。

     

     在交易/資料倉儲映像檔中有哪些特定的組態?

    這些優化的映像檔是以Performance Best Practices for SQL Server in Azure Virtual Machines為基礎,包括以下:

     

     

    交易

    資料倉儲

    硬碟組態

    附加的硬碟數

    15

    15

    儲存空間

     

    兩個儲存池:

    -  一個資料池有12個data disk;固定大小為12TB; 欄位=12

    -  一個紀錄池有3個data disks;固定大小為3TB; 欄位=3

    剩下的一個data disk(第16個)由使用者自行附加以及使用。

    Stripe size = 64 KB

    Stripe size = 256 KB

    硬碟大小、快取、配置大小

    1 TB each, HostCache=None, NTFS Allocation Unit Size = 64KB

    SQL組態

     

    啟動參數

    -T1117當資料庫需要自動增長時,幫助維持資料檔案擁有相同大小

    -T1118協助TEMPDB的可擴充性(瞭解更多)

    復原模式

    No change

    Set to “SIMPLE” for MODEL database using ALTER DATABASE

    設定預設位置

    移動SQL Server 錯誤日誌和追蹤文件目錄至data disks

    資料庫預設位置

    系統資料庫移至Data Disks

    使用者資料庫建立位置改變至data disks

    即時文件初始化

    Enabled

    Locked pages

    Enabled (瞭解更多)

     

    FAQ

    1.優化和非優化的映像檔價錢有無任何差別?                                                                       

      沒有。全新優化的映像檔的定價模式與非優化映像檔完全相同(瞭解更多),不需額外的成本。注意,虛擬機器實體的大小越大,成本越高。

    2.有無任何其他效能修正我必須考慮的?                                                                              

      有,考慮以下與SQL Server相關的效能修正

    3.我要如何能夠找到更多儲存空間的資訊?     

      請參考儲存空間FAQ

    4.全新資料倉儲映像檔與先前舊有的有甚麼差別?

      先前的資料倉儲映像檔需要顧客去執行額外的步驟,像是建立VM後需自行附加data disks,但是新的資料倉儲映像檔在建立完成後便準備完成,更加精簡,也更不容易出錯。

    5.如果我想要使用舊有的資料倉儲版本,是否有辦法可以使用?                                             

      舊有的VM映像檔還可以使用,只是不能直接從組件庫存取,但您可以使用Powershell commandlets來建立。舉例來說,你可以使用Get-AzureVMImage列出所有映像檔,一但你找出舊有的

    資料倉儲映像檔的描述及發佈日期,您可以使用New-AzureVM來使用相對應的映像檔。

     

    參觀我們的Azure portal並且試用新的SQL VM映像檔,告訴我們您的感受,給予我們回饋。

    透過您喜愛的社群網路頻道讓您的同事知道新的VM映像檔已經可以使用,並且別忘了在Twitter上追蹤@SQLServer,以及在Facebook上找到SQL Server專頁

     

  • Azure 網站服務整合虛擬網路功能

    原文發表於 Azure Websites Virtual Network Integration

    Azure 網站服務現在已經整合了 Azure VNET(virtual network 虛擬網路)的連接,透過 Azure 虛擬網路,您的網站就能夠存取由虛擬網路連接的其它資源,像是僅透過虛擬網路連接的虛擬機器或資料庫等,如果你既有機房透過 Site-to-Site VPN 連接到這個虛擬網路後,那這個放在 Azure 網站服務上的 Web 便能存取既有機房內的各種資源。

    Azure 網站服務的虛擬網路整合需要有一個動態路由閘道以及開啟 Point-to-Site 的功能,同時這項功能目前還在預覽階段,所以僅支援使用標準價格方案的網站服務,目前標準價格方案支援 5 個網路連線,而一個網站只能連接到一個虛擬網路,多個網站連接到同一個虛擬網路是沒問題的。

    要使用這個功能必須要到預覽中新的 Azure 管理介面進行設定以及瞭解連線狀況。

    透過這個介面,你可以將網站連接到既有或是直接建立一個新的 Azure VNET,這個動作可以在任何時間進行建立、連接、修改或刪除虛擬網路的連線,而要注意的是選擇了正確的價格方案。

    虛擬網路目前支援 TCP 及 UDP 通訊協定,同時也可以使用 VNET 中的 DNS 服務。由於混合網路連線(hybrid connection)與虛擬網路相容,而且這兩個服務在不同的應用情境上也有不同的好處,所以您可以視情況混合使用。

    混合網路連線讓你可能存取遠端的應用程式,混合網路連線的代理程式可以部署在任何網路環境中然後順利地連回 Azure 的網路,這樣的功能讓你可以在不同的網路環境中存取應用程式,而不必逐一設定虛擬網路。而虛擬網路服務則是設定完成後便能自由地存取虛擬網路中的各項資源,而不必安裝代理程式,而且 Azure 提供的 Site-to-Site VPN 服務能讓企業使用既有的工具。現在 Azure 網站服務可以使用這兩種網路功能後,將會更適合在遠端連線存取的應用情境之中。