Karşılaştırma çerçevesiyle NoSQL için Azure Cosmos DB performansını ölçme
Veri iş yükünüzle kullanılacak veritabanı türüne göre artık her zamankinden daha fazla seçenek vardır. Veritabanı seçmenin önemli faktörlerinden biri, veritabanının veya hizmetin performansıdır, ancak karşılaştırma performansı hantal ve hataya yatkın olabilir. Azure Veritabanları için kıyaslama çerçevesi, yaygın en iyi yöntemleri uygulayan düşük sürtünmeli tariflere sahip popüler açık kaynak karşılaştırma araçlarıyla performansı ölçme sürecini basitleştirir. NoSQL için Azure Cosmos DB'de çerçeve, Java SDK'sı için en iyi yöntemleri uygular ve açık kaynak YCSB aracını kullanır. Bu kılavuzda, bu karşılaştırma çerçevesini kullanarak çerçeveyi tanıyacak bir okuma iş yükü uygulayacaksınız.
Önkoşullar
- Etkin aboneliği olan bir Azure hesabı. Ücretsiz bir hesap oluşturun.
- NoSQL için Azure Cosmos DB hesabı.
NoSQL hesabı için bir API oluşturun.
- Hesap için uç nokta URI'sini ve birincil anahtarı not edin. NoSQL birincil anahtarları için API.
- Azure Depolama hesabı.
Azure Depolama hesabı oluşturun.
- Depolama hesabının bağlantı dizesini not edin. Vies Azure Depolama bağlantı dizesi.
- İkinci boş kaynak grubu. Bir kaynak grubu oluşturun.
- Azure Command-Line Arabirimi (CLI).
Azure Cosmos DB hesap kaynakları oluşturma
İlk olarak, NoSQL hesabı için mevcut API'de bir veritabanı ve kapsayıcı oluşturursunuz.
Azure portal NoSQL için mevcut API'nize gidin.
Kaynak menüsünde Veri Gezgini'ı seçin.
Veri Gezgini sayfasında, komut çubuğundaKi Yeni Kapsayıcı seçeneğini belirleyin.
Yeni Kapsayıcı iletişim kutusunda aşağıdaki ayarlarla yeni bir kapsayıcı oluşturun:
Ayar Değer Veritabanı kimliği ycsb
Veritabanı aktarım hızı türü El ile Veritabanı aktarım hızı miktarı 400
Kapsayıcı kimliği usertable
Bölüm anahtarı /id
Karşılaştırma çerçevesini Azure'a dağıtma
Şimdi bir Azure Resource Manager şablonu kullanarak karşılaştırma çerçevesini varsayılan okuma tarifiyle Azure'a dağıtacaksınız.
Bu bağlantıda bulunan bir Azure Resource Manager şablonu kullanarak karşılaştırma çerçevesini dağıtın.
Özel Dağıtım sayfasında aşağıdaki parametreler
Şablonu dağıtmak için Gözden Geçir + oluştur'u ve ardından Oluştur'u seçin.
Dağıtımın tamamlanmasını bekleyin.
İpucu
Dağıtımın tamamlanması 5-10 dakika sürebilir.
Karşılaştırma sonuçlarını görüntüleme
Artık karşılaştırma işinin durumunu denetlemek ve toplanan sonuçları görüntülemek için mevcut Azure Depolama hesabını kullanabilirsiniz. Durum bir depolama tablosu kullanılarak depolanır ve sonuçlar CSV biçimi kullanılarak bir depolama blobu halinde toplanır.
Azure portal mevcut Azure Depolama hesabınıza gidin.
ycsbbenchmarkingmetadata adlı bir depolama tablosuna gidin ve bölüm anahtarına
ycsb_sql
sahip varlığı bulun.JobStatus
Tablo varlığının alanını gözlemleyin. Başlangıçta işin durumudurStarted
ve özelliğindeJobStartTime
bir zaman damgası içerir ancak özelliği içermezJobFinishTime
.İşin durumu
Finished
ve özelliğine bir zaman damgası içereneJobFinishTime
kadar bekleyin.İpucu
İşin tamamlanması yaklaşık 20-30 dakika sürebilir.
ycsbbenchmarking-* ön ekiyle aynı hesaptaki depolama kapsayıcısına gidin. Araç için çıkış ve tanılama bloblarını gözlemleyin.
aggregation.csv blobunu açın ve içeriği gözlemleyin. Artık tüm karşılaştırma istemcilerinden toplanan sonuçları içeren bir CSV veri kümeniz olmalıdır.
Operation,Count,Throughput,Min(microsecond),Max(microsecond),Avg(microsecond),P9S(microsecond),P99(microsecond) READ,180000,299,706,448255,1079,1159,2867
Tarifler
Azure Veritabanları için kıyaslama çerçevesi, "1 tıklama" deneyimi için temel alınan karşılaştırma aracına geçirilen iş yükü tanımlarını kapsüllemek için tarifler içerir. İş yükü tanımları, Azure Cosmos DB ekibi ve karşılaştırma aracının ekibi tarafından yayımlanan en iyi yöntemlere göre tasarlanmıştır. Tarifler test edildi ve tutarlı sonuçlar için doğrulandı.
GitHub deposundaki tüm okuma ve yazma tarifleri için aşağıdaki gecikme sürelerini görmeyi bekleyebilirsiniz.
Genel sorunlar
Bu bölüm, karşılaştırma aracını çalıştırırken oluşabilecek yaygın hataları içerir. Aracın hata günlükleri genellikle Azure Depolama hesabındaki bir kapsayıcıda kullanılabilir.
Günlükler depolama hesabında kullanılamıyorsa, bu sorun genellikle yanlış veya eksik bir depolama bağlantı dizesinden kaynaklanır. Bu durumda, bu hata istemci sanal makinesinin /home/benchmarking klasöründeki agent.out dosyasında listelenir.
Error while accessing storage account, exiting from this machine in agent.out on the VM
Azure Cosmos DB uç nokta URI'sinin yanlış veya ulaşılamaz olması durumunda bu hata hem istemci VM'sinde hem de depolama hesabında agent.out dosyasında listelenir.
Caused by: java.net.UnknownHostException: rtcosmosdbsss.documents.azure.com: Name or service not known
Bu hata, Azure Cosmos DB anahtarı yanlışsa hem istemci VM'sinde hem de depolama hesabında agent.out dosyasında listelenir.
The input authorization token can't serve the request. The wrong key is being used….
Sonraki adımlar
- Başlarken kılavuzuyla karşılaştırma aracı hakkında daha fazla bilgi edinin.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin