Share via


Sorgu zaman aşımı ve sayfalandırma

Tablo hizmeti aşağıdaki iki tür sorgu işlemini destekler:

  • Sorgu Tabloları işlemi, belirtilen depolama hesabı içindeki tabloların listesini döndürür. Tablo listesi, istekte belirtilen ölçütlere göre filtrelenebilir.

  • Sorgu Varlıkları işlemi, belirtilen tablodan bir varlık kümesi döndürür. Sorgu sonuçları istekte belirtilen ölçütlere göre filtrelenebilir.

Tablo hizmetine yönelik bir sorgu bir kerede en fazla 1.000 öğe döndürebilir ve en fazla beş saniye boyunca yürütülebilir. Sonuç kümesi 1.000'den fazla öğe içeriyorsa, sorgu beş saniye içinde tamamlanmadıysa veya sorgu bölüm sınırını geçerse yanıt, geliştiriciye sonuç kümesindeki bir sonraki öğede sorguyu sürdürmek için kullanılacak devamlılık belirteçleri sağlayan üst bilgiler içerir. Bir Sorgu Tabloları işlemi veya Sorgu Varlıkları işlemi için devamlılık belirteci üst bilgileri döndürülebilir.

Sorguyu zamanlama ve işleme isteğine ayrılan toplam sürenin, sorgu yürütme için beş saniye de dahil olmak üzere 30 saniye olduğunu unutmayın.

Bir sorgu sonuç döndürmeden devam üst bilgisi döndürmeye devam etmek mümkündür.

Devamlılık belirteci üst bilgileri aşağıdaki tabloda gösterilmiştir.

Devamlılık belirteci üst bilgisi Description
x-ms-continuation-NextTableName Bu üst bilgi, Sorgu Tabloları işlemi bağlamında döndürülür. Döndürülen tablo listesi tamamlanmazsa, listedeki sonraki tablonun adının karması devamlılık belirteci üst bilgisine eklenir.
x-ms-continuation-NextPartitionKey Bu üst bilgi, Sorgu Varlıkları işlemi bağlamında döndürülür. Üst bilgi, tabloya karşı sonraki sorguda döndürülecek bir sonraki bölüm anahtarının karması içerir.
x-ms-continuation-NextRowKey Bu üst bilgi, Sorgu Varlıkları işlemi bağlamında döndürülür. Üst bilgi, tabloya karşı sonraki sorguda döndürülecek bir sonraki satır anahtarının karması içerir.

Bazı durumlarda olabilir x-ms-continuation-NextRowKeynull.

Devam belirteçlerini almak ve sonraki sonuç sayfasını döndürmek üzere sonraki bir sorguyu yürütmek için, önce devam belirteçleri için yanıt üst bilgilerini inceleyin. Üst bilgi yoksa veya üst bilgi değerleri ise null, döndürülecek ek varlık yoktur.

Not

Devamlılık belirteçleri içeren sonraki istekleri yaparken, istekte özgün URI'yi geçirmeyi unutmayın. Örneğin, özgün isteğin parçası olarak bir $filter, $selectveya $top sorgu seçeneği belirttiyseniz, sonraki isteklere bu seçeneği eklemek istersiniz. Aksi takdirde, sonraki istekleriniz beklenmeyen sonuçlar döndürebilir.

Bu durumda sorgu seçeneğinin $top , tüm yanıt kümesindeki en fazla sonuç sayısını değil, sayfa başına en fazla sonuç sayısını belirttiğini unutmayın.

Daha fazla ayrıntı için bkz. Tabloları ve Varlıkları Sorgulama .

Microsoft .NET İstemci Kitaplığı'nı kullanarak devamlılık belirteçlerini el ile işlüyorsanız, önce sorgu işleminin sonucunu queryOperationResponse nesnesine yayın. Daha sonra nesnenin Headers özelliğinde devamlılık belirteci üst bilgilerine QueryOperationResponse erişebilirsiniz.

Devamlılık belirteçlerini aldıktan sonra değerlerini kullanarak bir sorgu oluşturarak bir sonraki sonuç sayfasını döndürebilirsiniz. Sorgu isteği URI'leri şu parametreleri alabilir ve bu da yanıtla birlikte döndürülen devamlılık belirteci üst bilgilerine karşılık gelir:

  • NextTableName

  • NextPartitionKey

  • NextRowKey

Not

Sorguyu zamanlama ve işleme isteğine ayrılan toplam süre 30 saniyedir ve sorgu yürütme için beş saniye de buna dahildir.

İşlem ekleme, güncelleştirme veya silme işlemiyse, istemci tarafından döndürülen bir hataya rağmen işlem sunucuda başarılı olmuş olabilir. İstemci zaman aşımı 30 saniyeden kısa bir süreye ayarlandığında bu durum oluşabilir. Bu, ekleme, güncelleştirme veya silme işlemi için en fazla zaman aşımıdır.

Örnek Yanıt Üst Bilgileri ve Sonraki İstek

Aşağıdaki kod örneği, devamlılık üst bilgileri döndüren Customers adlı bir tabloya karşı bir varlık sorgusundan alınan örnek yanıt üst bilgileri kümesini gösterir. Hem hem de x-ms-continuation-NextPartitionKeyx-ms-continuation-NextRowKey döndürülür.

Date: Mon, 27 Jun 2016 20:11:08 GMT  
Content-Type: application/json;charset=utf-8  
Server: Windows-Azure-Table/1.0 Microsoft-HTTPAPI/2.0  
Cache-Control: no-cache  
x-ms-request-id: f9b2cd09-4dec-4570-b06d-4fa30179a58e  
x-ms-version: 2015-12-11  
x-ms-continuation-NextPartitionKey: 1!8!U21pdGg-  
x-ms-continuation-NextRowKey: 1!8!QmVuOTk5  
Content-Length: 880298  

Sonraki veri sayfası için istek aşağıdaki URI gibi oluşturulabilir:

http://myaccount.table.core.windows.net/Customers?NextPartitionKey=1!8!U21pdGg-&NextRowKey=1!12!QmVuMTg5OA--  

Ayrıca Bkz.

Tablo Hizmeti Kaynaklarını Ele Alma
Tablolardaki İşlemler
Varlıklardaki İşlemler