Hızlı Başlangıç: Node.js API hesabıyla Azure Cosmos DB SQL sorgulamak için SQL kullanma

UYGULANDıĞı YER: SQL API

Bu hızlı başlangıçta, Azure portal'den bir Azure Cosmos DB SQL API hesabı ve Node.js'den kopyalanan bir GitHub. Azure Cosmos DB, genel dağıtım ve yatay ölçeklendirme özellikleriyle belge, tablo, anahtar-değer ve graf veritabanlarını hızlı bir şekilde oluşturmanızı ve sorgulamanızı sağlayan çok modelli bir veritabanı hizmetidir.

Adım adım kılavuz videosu

Bu makaledeki içeriğin eksiksiz bir izlenecek yolu için bu videoyu izleyin.

Önkoşullar

Azure Cosmos hesabı oluşturma

Bu hızlı başlangıç amacı doğrultusunda, Azure Cosmos DB'i ücretsiz deneyin seçeneğini kullanarak bir Azure Cosmos oluşturabilirsiniz.

  1. Ücretsiz Azure Veritabanı'Cosmos deneyin sayfasına gidin.

  2. Api hesabını SQL oluştur'a seçin. Kullanıcılarınızı kullanarak oturum Microsoft hesabı.

  3. Oturum açma başarılı olduktan sonra Azure Cosmos hesabınız hazır olması gerekir. Yeni oluşturulan hesabı açmak Azure portal hesapta Aç'ı seçin.

"Azure Cosmos DB'nizi ücretsiz deneyin" seçeneği azure aboneliği gerektirmez ve size 30 günlük sınırlı bir süre için bir Azure Cosmos hesabı sunar. Azure Cosmos hesabını daha uzun bir süre kullanmak için azure aboneliğinizin içinde oluşturmanız gerekir.

Kapsayıcı ekleme

Artık veritabanı ve kapsayıcı Veri Gezgini için Azure portal aracı kullanabilirsiniz.

  1. Yeni > Veri Gezgini'ı seçin.

    Kapsayıcı Ekle alanı en sağda görüntülenir, görmek için sağa kaydırmanız gerekir.

    Azure portalındaki Veri Gezgini, Kapsayıcı Ekle bölmesi

  2. Kapsayıcı ekle sayfasında yeni kapsayıcının ayarlarını girin.

    Ayar Önerilen değer Açıklama
    Veritabanı Kimliği ToDoList Yeni veritabanınızın adı olarak Görevler girin. Veritabanı adları 1 ile 255 karakter arasında olmalı ve , veya /, \\, #, ? sonda boşluk içeremez. Aktarım hızını kapsayıcılar arasında paylaş seçeneğini işaretleyin. Bu seçenek, veritabanında sağlanan aktarım hızını veritabanındaki tüm kapsayıcılar arasında paylaşmaya olanak sağlar. Bu seçenek, maliyet tasarrufları için de yardımcı olur.
    Veritabanı aktarım hızı Otomatik Ölçeklendirme veya El ile aktarım hızı s sağlanmasını sebilirsiniz. El ile aktarım hızı RU/sn'leri kendiniz ölçeklendirmeye olanak sağlarken, otomatik ölçeklendirme aktarım hızı sistemin RU/sn'leri kullanıma göre ölçeklendirmelerine olanak sağlar. Bu örnek için El ile'yi seçin.

    Aktarım hızını saniye başına 400 istek birimi (RU/sn) olarak bırakın. Gecikme süresini azaltmak için, kapasite hesaplayıcısı ile gerekli RU/sn'leri tahmin ederek aktarım hızının ölçeğini artırabilirsiniz.

    Not: Bu ayar, sunucusuz bir hesapta yeni bir kapsayıcı oluşturulurken kullanılamaz.
    Kapsayıcı Kimliği Öğeler Yeni kapsayıcınız için öğe adını girin. Kapsayıcı kimliklerinin karakter gereksinimleri, veritabanı adlarına ilişkin karakter gereksinimleri ile aynıdır.
    Bölüm anahtarı /kategori Bu makalede açıklanan örnekte bölüm anahtarı olarak /category kullanılır.

    Bu örnek için Benzersiz anahtarlar ekleme veya Analiz depolarını açma. Benzersiz anahtarlar, bölüm anahtarı başına bir veya daha fazla değerin benzersiz olmasını sağlayarak veritabanına bir veri bütünlüğü katmanı eklemenize izin verir. Daha fazla bilgi için bkz. Azure Cosmos DB. Analiz deposu, işlemsel iş yüklerinizi etkilemeden operasyonel verilere karşı büyük ölçekli analizler sağlamak için kullanılır.

    Tamam’ı seçin. Veri Gezgini, yeni veritabanını ve kapsayıcıyı görüntüler.

Örnek verileri ekleme

Artık Veri Gezgini kullanarak yeni kapsayıcınıza veri ekleyebilirsiniz.

  1. Veri Gezgini, Görevler veritabanını genişletin, öğeler kapsayıcısını genişletin. Öğeler' i ve sonra Yeni öğe' yi seçin.

    Azure portalındaki Veri Gezgini'nde yeni belge oluşturma

  2. Şimdi aşağıdaki yapıyla kapsayıcıya bir belge ekleyin.

    {
        "id": "1",
        "category": "personal",
        "name": "groceries",
        "description": "Pick up apples and strawberries.",
        "isComplete": false
    }
    
  3. JSON 'u Belgeler sekmesine ekledikten sonra Kaydet' i seçin.

    JSON verilerini kopyalayın ve Azure portal Veri Gezgini Kaydet ' i seçin

  4. id özelliği için benzersiz bir değer eklediğiniz yerde bir veya daha fazla belge oluşturun ve kaydedin ve diğer özellikleri uygun şekilde değiştirin. Azure Cosmos DB, verilerinizin bir şemaya uygun olmasını şart koşmadığı için yeni belgelerinizin yapısını istediğiniz şekilde oluşturabilirsiniz.

Verilerinizi sorgulayın

Verilerinizi almak ve filtrelemek Veri Gezgini sorgular kullanabilirsiniz.

  1. Dosyanın Öğeler sekmesinin üst kısmında Veri Gezgini sorgusunu gözden SELECT * FROM c geçirebilirsiniz. Bu sorgu, kapsayıcıdan kimlikle sıra edilen tüm belgeleri alın ve görüntüler.

    Bu dosyada varsayılan Veri Gezgini SELECT * FROM c'dir

  2. Sorguyu değiştirmek için Filtreyi Düzenle'yi seçin, varsayılan sorguyu ile değiştirin ORDER BY c._ts DESC ve ardından Filtre Uygula'ya tıklayın.

    ORDER BY c._ts DESC ekleyerek ve Filtre Uygula’ya tıklayarak varsayılan sorguyu değiştirin

    Değiştirilen sorgu, belgeleri zaman damgalarına göre azalan düzende görüntüler, bu nedenle şimdi ilk olarak ikinci belgeniz listelenir.

    SORGU, DESC'de ORDER BY c._ts filtre uygula'ya tıklamak için değiştirildi

SQL söz dizimi hakkında bilgi sahibiysiniz, sorgu önkatesi kutusuna desteklenen tüm SQL sorgularını girebilirsiniz. Sunucu tarafı iş mantığı Veri Gezgini saklı yordamlar, UFS'ler ve tetikleyiciler oluşturmak için de bu yordamları kullanabilirsiniz.

Veri Gezgini API'lerde Azure portal yerleşik programlı veri erişimi özelliklerine kolay erişim ve erişim sağlar. Ayrıca aktarım hızını ölçeklendirmek, anahtarları ve bağlantı dizelerini almak ve hesap hesabınız için ölçümleri ve SLA'Azure Cosmos DB kullanırsınız.

Örnek uygulamayı kopyalama

Şimdi Node.js uygulamasından GitHub, bağlantı dizesini ayarla ve çalıştır.

  1. Örnek depoyu kopyalamak için aşağıdaki komutu çalıştırın. Bu komut bilgisayarınızda örnek uygulamanın bir kopyasını oluşturur.

    git clone https://github.com/Azure-Samples/azure-cosmos-db-sql-api-nodejs-getting-started.git
    

Kodu gözden geçirin

Bu adım isteğe bağlıdır. Azure veritabanı kaynaklarının kodda nasıl Cosmos öğrenmek ilginizi çekiyorsa aşağıdaki kod parçacıklarını gözden geçirebilirsiniz. Aksi durumda, Bağlantı dizenizi güncelleştirme bölümüne atlayabilirsiniz.

SQL JavaScript SDK'sı sürümünü biliyorsanız koleksiyon ve belge terimlerini görmek için kullanılabilirsiniz. Azure Cosmos DB birden çok APImodeli desteklediği için, JavaScript SDK'sı sürüm 2.0+ kapsayıcının içeriğini tanımlamak için koleksiyon, grafik veya tablo ve öğe olan kapsayıcı genel terimlerini kullanır.

Veritabanı Cosmos DB JavaScript SDK'sı " @azure/cosmos " olarak adlandırılır ve npm...

npm install @azure/cosmos

Aşağıdaki kod parçacıklarının tamamı, app.js dosyasından alınmıştır.

  • npm CosmosClient paketinden @azure/cosmos içe aktarılır.

    const CosmosClient = require("@azure/cosmos").CosmosClient;
    
  • Yeni CosmosClient bir nesne başlatılır.

    const client = new CosmosClient({ endpoint, key });
    
  • "Görevler" veritabanını seçin.

    const database = client.database(databaseId);
    
  • "Öğeler" kapsayıcıyı/koleksiyonu seçin.

    const container = database.container(containerId);
    
  • "Öğeler" kapsayıcısı içinde tüm öğeleri seçin.

    // query to return all items
    const querySpec = {
      query: "SELECT * from c"
    };
    
    const { resources: items } = await container.items
      .query(querySpec)
      .fetchAll();
    
  • Yeni bir öğe oluşturun

    const { resource: createdItem } = await container.items.create(newItem);
    
  • Öğeyi güncelleştirme

    const { id, category } = createdItem;
    
    createdItem.isComplete = true;
    const { resource: updatedItem } = await container
      .item(id, category)
      .replace(createdItem);
    
  • Öğeyi silme

    const { resource: result } = await container.item(id, category).delete();
    

Not

Hem "update" hem de "delete" yöntemlerinde öğenin çağrılarak veritabanından container.item() seçilmelidir. Geçirilen iki parametre öğenin kimliği ve öğenin bölüm anahtarıdır. Bu durumda, parition anahtarı "category" alanı değeridir.

Bağlantı dizenizi güncelleştirme

Şimdi Azure Azure portal hesabınızla ilgili bağlantı dizesi ayrıntılarını almak için Cosmos gidin. Veritabanınıza bağlana bağlanması için bağlantı dizesini uygulamaya kopyalayın.

  1. Azure veritabanı Cosmos veritabanı Azure portal solgezinti bölmesinden Anahtarlar'ı ve ardından Okuma-Yazma Anahtarları'ı seçin. Ekranın sağ tarafındaki kopyalama düğmelerini kullanarak URI ve Birincil Anahtar'ı sonraki adımdaapp.js dosyasına kopyalayın.

    Azure portalında erişim anahtarı görüntüleme ve kopyalama, Anahtarlar dikey penceresi

  2. Dosya dosyasını config.js.

  3. Portaldan URI değerinizi kopyalayın (kopyalama düğmesini kullanarak) ve değerini config.js.

    endpoint: "<Your Azure Cosmos account URI>"

  4. Ardından portaldan PRIMARY KEY değerinizi kopyalayın ve değerini olarak config.keyconfig.js. __ Bu adımlarla uygulamanıza Azure Cosmos DB ile iletişim kurması için gereken tüm bilgileri eklemiş oldunuz.

    key: "<Your Azure Cosmos account key>"

Uygulamayı çalıştırma

  1. npm install" " npm paketini yüklemek için @azure/cosmos terminalde çalıştırın

  2. Node.js uygulamanızı başlatmak için bir terminalde node app.js komutunu çalıştırın.

  3. Bu hızlı başlangıçta daha önce oluşturduğunuz iki öğe listelenir. Yeni bir öğe oluşturulur. Bu öğede "isComplete" bayrağı "true" olarak güncelleştirilir ve son olarak öğe silinir.

Bu örnek uygulamayla deneme yapmaya devam etmek veya verilerinizle Veri Gezgini, değiştirmek ve çalışmak için geri dönebilirsiniz.

Azure portalında SLA'ları gözden geçirme

Bu Azure portal, Cosmos DB aktarım hızı, depolama alanı, kullanılabilirlik, gecikme süresi ve tutarlılığı izler. Bir Azure Cosmos DB Hizmet Düzeyi Sözleşmesi (SLA) ile ilişkili ölçümler, gerçek performansla karşılaştırıldığında SLA değerini gösterir. Bu ölçüm paketi, SLA'larınızı izlemenizi saydam hale gelir.

Ölçümleri ve SLA'ları gözden geçirmek için:

  1. Hesap gezinti Cosmos DB Ölçümler'i seçin.

  2. Gecikme süresi gibi bir sekme seçin ve sağdan bir zaman çerçevesi seçin. Grafiklerde Gerçek ve SLA çizgilerini karşılaştırın.

    Azure Cosmos DB ölçüm paketi

  3. Diğer sekmelerde ölçümleri gözden geçirme.

Sonraki adımlar

Bu hızlı başlangıçta Azure Cosmos DB hesabı oluşturma, Veri Gezgini kullanarak kapsayıcı oluşturma ve Node.js çalıştırmayı öğrendiniz. Şimdi Azure Cosmos DB hesabınıza ek veriler aktarabilirsiniz.

Azure Cosmos DB'ye geçiş için kapasite planlaması yapmaya mı çalışıyorsunuz? Kapasite planlaması için mevcut veritabanı kümeniz hakkında bilgi kullanabilirsiniz.

  • Mevcut veritabanı kümenizin sanal çekirdek ve sunucu sayısıyla ilgili tüm bilginiz varsa, sanal çekirdek veya vCPUS kullanarak istek birimlerini tahmin hakkında bilgi edinebilirsiniz
  • Geçerli veritabanı iş yükünüz için tipik istek oranlarını biliyorsanız Azure Cosmos DB kapasite planlayıcısı kullanarak istek birimlerini tahmin hakkında bilgi edinin