2012-06-11 58 views
19

我有一個數據庫,我正在遷移到SQL Azure。這個數據庫中有幾個存儲過程依賴於ContainsTable。據我瞭解,SQL Azure不支持這一點。正因爲如此,我希望能有一種方法來模仿C#代碼中的這個功能。在SQL Azure上的全文搜索

有誰知道如何可以:1)利用CONTAINSTABLE在SQL Azure中或b)模擬在C#代碼?

+0

這本書對建立索引代碼示例。顯然不是廣泛的Lucene,但如果你只是在尋找Contains類型的功能,它可能就足夠了。 http://www.amazon.com/Programming-Windows-Azure-Microsoft-Cloud/dp/0596801971/ref=sr_1_4?ie=UTF8&qid=1339447497&sr=8-4&keywords=azure – Paparazzi

+0

它可能會使用新的虛擬機,上週剛剛宣佈,並在其上安裝完整的SQL Server實例。我相信這將支持全文索引,但是您會放棄使用SQL Azure獲得的大部分自動管理。 –

+0

全文搜索現在處於SQL Azure的公開預覽中。您可能想在此查看最近的公告:http://blogs.technet.com/b/dataplatforminsider/archive/2015/04/29/microsoft-announces-azure-sql-database-elastic-database-azure-sql-數據倉庫Azure的數據lake.aspx –

回答

20

是的,你是正確的,包含不支持SQL Azure Table中所描述的here

根據你的問題)是不可能的。然而b)是可能的使用Lucene.NET。

如果您希望使用代碼在SQL Azure中進行全文搜索,您需要在Web或Worker角色中使用Lucene.net將SQL Azure數據索引到Windows Azure Blob存儲,然後訪問索引數據以搜索。該過程描述如下:

  1. 配置您的Windows Azure Blob存儲
  2. 通過Web或輔助角色來訪問你的SQL Azure中,然後創建索引上的Windows Azure Blob存儲
  3. 使用存儲在索引數據在的Windows Azure Blob存儲

這裏是開始工作的文章:How to Use Lucene.NET with SQL Azure (en-US)

+0

SQL Azure的V12具有完全預覽中的文本搜索。 –