Aracılığıyla paylaş


Azure Databricks üzerinde RStudio

Azure Databricks çalışma alanlarındaki Azure Databricks işlem kaynaklarına bağlanmak için R için popüler bir tümleşik geliştirme ortamı (IDE) olan RStudio'yu kullanabilirsiniz. RStudio Desktop'ı kullanarak yerel geliştirme makinenizden bir Azure Databricks kümesine veya SQL ambarı'na bağlanın. Ayrıca web tarayıcınızı kullanarak Azure Databricks çalışma alanınızda oturum açabilir ve ardından bu çalışma alanında RStudio Server'ın yüklü olduğu bir Azure Databricks kümesine bağlanabilirsiniz.

RStudio Desktop kullanarak bağlanma

Yerel geliştirme makinenizden uzak bir Azure Databricks kümesine veya SQL ambarı'na bağlanmak için RStudio Desktop'ı kullanın. Bu senaryoda bağlanmak için bir ODBC bağlantısı kullanın ve bu bölümde açıklanan R için ODBC paket işlevlerini çağırın.

Not

Databricks Connect'i de kullanmadığınız sürece bu RStudio Desktop senaryosunda SparkR veya sparklyr gibi paketleri kullanamazsınız. RStudio Desktop'ı kullanmaya alternatif olarak, web tarayıcınızı kullanarak Azure Databricks çalışma alanınızda oturum açabilir ve ardından bu çalışma alanında RStudio Server'ın yüklü olduğu bir Azure Databricks kümesine bağlanabilirsiniz.

Yerel geliştirme makinenizde RStudio Desktop'ı ayarlamak için:

  1. R 3.3.0 veya üzerini indirip yükleyin.
  2. RStudio Desktop'ı indirin ve yükleyin.
  3. RStudio Desktop'ı başlatın.

(İsteğe bağlı) RStudio projesi oluşturmak için:

  1. RStudio Desktop'ı başlatın.
  2. Yeni Proje Dosyala'ya > tıklayın.
  3. Yeni Dizin >Yeni Proje öğesini seçin.
  4. Proje için yeni bir dizin seçin ve proje oluştur'a tıklayın.

R betiği oluşturmak için:

  1. Proje açıkken Dosya > Yeni Dosya > R Betiği'ne tıklayın.
  2. Dosya > Farklı Kaydet'e tıklayın.
  3. Dosyayı adlandırın ve Kaydet'e tıklayın.

R için ODBC aracılığıyla uzak Azure Databricks kümesine veya SQL ambarı'na bağlanmak için:

  1. Alın, uzak kümenizin veya SQL ambarıiçin Sunucu ana bilgisayar adı, Bağlantı Noktasıve HTTP yolu değerlerini. Bir küme için, bu değerlergelişmiş seçenekler JDBC/ODBC sekmesinde bulunur. SQL ambarı için bu değerler Bağlantı ayrıntıları sekmesindedir.

  2. bir Azure Databricks kişisel erişim belirteci alın.

    Not

    En iyi güvenlik uygulaması olarak otomatik araçlar, sistemler, betikler ve uygulamalarla kimlik doğrulaması yaptığınızda Databricks, çalışma alanı kullanıcıları yerine hizmet sorumlularına ait kişisel erişim belirteçlerini kullanmanızı önerir. Hizmet sorumlularına yönelik belirteçler oluşturmak için bkz . Hizmet sorumlusu için belirteçleri yönetme.

  3. Yerel makinenizin işletim sistemine bağlı olarak Windows, macOS veya Linux için Databricks ODBC sürücüsünü yükleyin ve yapılandırın.

  4. Yerel makinenizin işletim sistemini temel alarak uzak kümenize veya Windows, macOS veya Linux için SQL ambarınıza ODBC Veri Kaynağı Adı (DSN) ayarlayın.

  5. RStudio konsolundan (> Taşımayı Görüntüle) CRAN'dan odbc ve DBI paketlerini yükleyin:

    require(devtools)
    
    install_version(
      package = "odbc",
      repos   = "http://cran.us.r-project.org"
    )
    
    install_version(
      package = "DBI",
      repos   = "http://cran.us.r-project.org"
    )
    
  6. R betiğinize geri dönün (> Taşı seçeneğini görüntüleyin), yüklü odbc ve DBI paketleri yükleyin:

    library(odbc)
    library(DBI)
    
  7. Paketteki dbConnect işlevinin

    conn = dbConnect(
      drv = odbc(),
      dsn = "Databricks"
    )
    
  8. ODBC DSN aracılığıyla bir işlemi çağırın; örneğin, SELECT paketindeki dbGetQuery işlevi aracılığıyla bir DBI deyimi çağırın ve bağlantı değişkeninin adını ve SELECT deyiminin kendisini belirtin; örneğin, diamondsadlı şemada (veritabanında) default adlı tablodan:

    print(dbGetQuery(conn, "SELECT * FROM default.diamonds LIMIT 2"))
    

R betiğinin tamamı aşağıdaki gibidir:

library(odbc)
library(DBI)

conn = dbConnect(
  drv = odbc(),
  dsn = "Databricks"
)

print(dbGetQuery(conn, "SELECT * FROM default.diamonds LIMIT 2"))

Betiği çalıştırmak için kaynak görünümünde Kaynak'a tıklayın. Yukarıdaki R betiğinin sonuçları aşağıdaki gibidir:

  _c0 carat     cut color clarity depth table price    x    y    z
1   1  0.23   Ideal     E     SI2  61.5    55   326 3.95 3.98 2.43
2   2  0.21 Premium     E     SI1  59.8    61   326 3.89 3.84 2.31

Databricks tarafından barındırılan RStudio Sunucusuna bağlanma

Önemli

Databricks tarafından barındırılan RStudio Sunucusu kullanım dışıdır ve yalnızca Databricks Runtime 15.4 ve altındaki sürümlerde kullanılabilir. Daha fazla bilgi için bkz. Barındırılan RStudio Sunucusunu kullanımdan kaldırma.

Web tarayıcınızı kullanarak Azure Databricks çalışma alanınızda oturum açın ve ardından bu çalışma alanında RStudio Server'ın yüklü olduğu bir Azure Databricks işlemlerine bağlanın.

Daha fazla bilgi için bkz . Databricks tarafından barındırılan RStudio Sunucusuna bağlanma

RStudio tümleştirme mimarisi

Azure Databricks'te RStudio Sunucusu kullandığınızda, RStudio Server Daemon bir Azure Databricks kümesinin sürücü düğümünde çalışır. RStudio web kullanıcı arabirimi Azure Databricks web uygulaması aracılığıyla kullanıma açıktır. Bu, küme ağ yapılandırmanızda herhangi bir değişiklik yapmanız gerekmediği anlamına gelir. Bu diyagramda RStudio tümleştirme bileşeni mimarisi gösterilmektedir.

Databricks üzerinde RStudio mimarisi

Uyarı

Azure Databricks, RStudio web hizmetini kümenin Spark sürücüsündeki 8787 numaralı bağlantı noktasından proxy'ler. Bu web proxy'si yalnızca RStudio ile kullanılmak üzere tasarlanmıştır. Bağlantı noktası 8787'de diğer web hizmetlerini başlatırsanız, kullanıcılarınızı olası güvenlik açıklarına maruz bırakabilirsiniz. Bir kümeye desteklenmeyen yazılımların yüklenmesinden kaynaklanan sorunlardan ne Databricks ne de Microsoft sorumludur.

Gereksinimler

  • Küme, çok amaçlı bir küme olmalıdır.
  • Bu küme için CAN ATTACH TO iznine sahip olmanız gerekir. Küme yöneticisi size bu izni verebilir. Bkz. İşlem izinleri.
  • Küme ,otomatik sonlandırmatablo erişim denetimine veya kimlik bilgisi geçişi sahip olmamalıdır.
  • KümeNin Standarterişim modunukullanmaması gerekir.
  • Küme .
  • Pro sürümünü kullanmak için RStudio Server kayan Pro lisansına sahip olmanız gerekir.

Not

Küme Unity Kataloğu'nu destekleyen bir erişim modu kullanasa da, Unity Kataloğu'ndaki verilere erişmek için bu kümedeki RStudio Server'ı kullanamazsınız.

Başlangıç: RStudio Server OS Sürümü

RStudio Server Açık Kaynak Sürümü, Machine Learning için Databricks Runtime (Databricks Runtime ML) kullanan Azure Databricks kümelerine önceden yüklenmiştir.

RStudio Server OS Edition'ı bir kümede açmak için aşağıdakileri yapın:

  1. Kümenin ayrıntılar sayfasını açın.

  2. Kümeyi başlatın ve ardından Uygulamalar sekmesine tıklayın:

    Küme Uygulamaları sekmesi

  3. Uygulamalar sekmesinde RStudio'yu Ayarla düğmesine tıklayın. Bu, sizin için tek seferlik bir parola oluşturur. Göstermek için göster bağlantısına tıklayın ve parolayı kopyalayın.

  4. Kullanıcı arabirimini yeni bir sekmede açmak için RStudio'yu Aç bağlantısına tıklayın. Oturum açma formuna kullanıcı adınızı ve parolanızı girin ve oturum açın.

  5. RStudio kullanıcı arabiriminden, SparkR paketini içeri aktarabilir ve kümenizde Spark işlerini başlatmak için bir SparkR oturumu ayarlayabilirsiniz.

    library(SparkR)
    
    sparkR.session()
    
    # Query the first two rows of a table named "diamonds" in a
    # schema (database) named "default" and display the query result.
    df <- SparkR::sql("SELECT * FROM default.diamonds LIMIT 2")
    showDF(df)
    

    RStudio Açık Kaynak Sürümü oturumu

  6. Ayrıca sparklyr paketini ekleyebilir ve bir Spark bağlantısı ayarlayabilirsiniz.

    library(sparklyr)
    
    sc <- spark_connect(method = "databricks")
    
    # Query a table named "diamonds" and display the first two rows.
    df <- spark_read_table(sc = sc, name = "diamonds")
    print(x = df, n = 2)
    

    RStudio Açık Kaynak Sürümü sparklyr bağlantısı

Başlayın: RStudio Workbench

Bu bölümde, Azure Databricks kümesinde RStudio Workbench'i (eski adıyla RStudio Server Pro) nasıl ayarlayıp kullanmaya başlayacağınız gösterilmektedir. Lisansınıza bağlı olarak RStudio Workbench, RStudio Server Pro'yu içerebilir.

RStudio lisans sunucusunu ayarlama

RStudio Workbench'i Azure Databricks'te kullanmak için Pro Lisansınızı kayan lisansa dönüştürmeniz gerekir. Yardım için adresine başvurun help@rstudio.com. Lisansınız dönüştürüldüğünde RStudio Workbench için bir lisans sunucusu ayarlamanız gerekir.

Lisans sunucusu ayarlamak için:

  1. Bulut sağlayıcısı ağınızda küçük bir örnek başlatın; lisans sunucusu daemon çok hafiftir.
  2. Örneğinize karşılık gelen RStudio Lisans Sunucusu sürümünü indirip yükleyin ve hizmeti başlatın. Ayrıntılı yönergeler için bkz . RStudio Workbench Yönetici Kılavuzu.
  3. Lisans sunucusu bağlantı noktasının Azure Databricks örneklerine açık olduğundan emin olun.

RStudio Workbench'i yükleme

Azure Databricks kümesinde RStudio Workbench'i ayarlamak için, RStudio Workbench ikili paketini yüklemek için bir init betiği oluşturmanız ve lisans kiralama için lisans sunucunuzu kullanacak şekilde yapılandırmanız gerekir.

Not

RStudio Workbench'i zaten RStudio Server Open Source Edition paketini içeren bir Databricks Runtime sürümüne yüklemeyi planlıyorsanız, yüklemenin başarılı olması için önce bu paketi kaldırmanız gerekir.

Aşağıda, giriş dizininizde çalışma alanı dosyası, Unity Kataloğu birimi veya nesne depolama gibi bir konumda init betiği olarak depolayabileceğiniz örnek bir .sh dosyası verilmiştir. Daha fazla bilgi için bkz . Küme kapsamlı başlatma betikleri. Betik, Azure Databricks ile tümleştirmeyi kolaylaştıran ek kimlik doğrulama yapılandırmaları da gerçekleştirir.

Uyarı

DBFS'deki küme kapsamlı başlatma betikleri kullanım süresi sonu olur. Eski iş yüklerini desteklemek için bazı çalışma alanlarında init betiklerinin DBFS'de depolanması önerilmez. DBFS'de depolanan tüm başlatma betikleri geçirilmelidir. Geçiş yönergeleri için bkz . DBFS'den başlatma betiklerini geçirme.

#!/bin/bash

set -euxo pipefail

if [[ $DB_IS_DRIVER = "TRUE" ]]; then
  sudo apt-get update
  sudo dpkg --purge rstudio-server # in case open source version is installed.
  sudo apt-get install -y gdebi-core alien

  ## Installing RStudio Workbench
  cd /tmp

  # You can find new releases at https://rstudio.com/products/rstudio/download-commercial/debian-ubuntu/.
  wget https://download2.rstudio.org/server/bionic/amd64/rstudio-workbench-2022.02.1-461.pro1-amd64.deb -O rstudio-workbench.deb
  sudo gdebi -n rstudio-workbench.deb

  ## Configuring authentication
  sudo echo 'auth-proxy=1' >> /etc/rstudio/rserver.conf
  sudo echo 'auth-proxy-user-header-rewrite=^(.*)$ $1' >> /etc/rstudio/rserver.conf
  sudo echo 'auth-proxy-sign-in-url=<domain>/login.html' >> /etc/rstudio/rserver.conf
  sudo echo 'admin-enabled=1' >> /etc/rstudio/rserver.conf
  sudo echo 'export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin' >> /etc/rstudio/rsession-profile

  # Enabling floating license
  sudo echo 'server-license-type=remote' >> /etc/rstudio/rserver.conf

  # Session configurations
  sudo echo 'session-rprofile-on-resume-default=1' >> /etc/rstudio/rsession.conf
  sudo echo 'allow-terminal-websockets=0' >> /etc/rstudio/rsession.conf

  sudo rstudio-server license-manager license-server <license-server-url>
  sudo rstudio-server restart || true
fi
  1. değerini Azure Databricks URL'nizle ve <domain> kayan lisans sunucunuzun URL'si ile değiştirin<license-server-url>.
  2. Bu .sh dosyasını giriş dizininizde çalışma alanı dosyası, Unity Kataloğu birimi veya nesne depolama alanı gibi bir konumda başlatma betiği olarak depolayın. Daha fazla bilgi için bkz . Küme kapsamlı başlatma betikleri.
  3. Kümeyi başlatmadan önce, bu .sh dosyayı ilişkili konumdan bir başlatma betiği olarak ekleyin. Yönergeler için bkz . Küme kapsamlı başlatma betikleri.
  4. Kümeyi başlatın.

RStudio Server Pro kullanma

  1. Kümenin ayrıntılar sayfasını açın.

  2. Kümeyi başlatın ve Uygulamalar sekmesine tıklayın:

    Küme Uygulamaları sekmesi

  3. Uygulamalar sekmesinde RStudio'yu Ayarla düğmesine tıklayın.

  4. Tek seferlik parolaya ihtiyacınız yoktur. RStudio Kullanıcı Arabirimini Aç bağlantısına tıkladığınızda sizin için kimliği doğrulanmış bir RStudio Pro oturumu açılır.

  5. RStudio kullanıcı arabiriminden SparkR paketini ekleyebilir ve kümenizde Spark işlerini başlatmak için bir SparkR oturumu ayarlayabilirsiniz.

    library(SparkR)
    
    sparkR.session()
    
    # Query the first two rows of a table named "diamonds" in a
    # schema (database) named "default" and display the query result.
    df <- SparkR::sql("SELECT * FROM default.diamonds LIMIT 2")
    showDF(df)
    

    RStudio Pro oturumu

  6. Ayrıca sparklyr paketini ekleyebilir ve bir Spark bağlantısı ayarlayabilirsiniz.

    library(sparklyr)
    
    sc <- spark_connect(method = "databricks")
    
    # Query a table named "diamonds" and display the first two rows.
    df <- spark_read_table(sc = sc, name = "diamonds")
    print(x = df, n = 2)
    

    RStudio Pro sparklyr bağlantısı

RStudio Sunucusu hakkında SSS

RStudio Server Açık Kaynak Sürümü ile RStudio Workbench arasındaki fark nedir?

RStudio Workbench, Açık Kaynak Sürümünde bulunmayan çok çeşitli kurumsal özellikleri destekler. RStudio'nun web sitesinde özellik karşılaştırmasını görebilirsiniz.

Ayrıca RStudio Server Açık Kaynak Sürümü GNU Affero Genel Kamu Lisansı (AGPL) kapsamında dağıtılırken Pro sürümü AGPL yazılımını kullanamayacak kuruluşlar için ticari bir lisansla birlikte gelir.

Son olarak RStudio Workbench, RStudio, PBC'den profesyonel ve kurumsal destekle birlikte gelirken, RStudio Server Open Source Edition desteği yoktur.

Azure Databricks'te RStudio Workbench / RStudio Server Pro lisansımı kullanabilir miyim?

Evet, RStudio Server için zaten bir Pro veya Enterprise lisansınız varsa bu lisansı Azure Databricks'te kullanabilirsiniz. Azure Databricks'te RStudio Workbench'i ayarlamayı öğrenmek için bkz. Başlarken: RStudio Workbench.

RStudio Server nerede çalışır? Ek hizmetleri/sunucuları yönetmem gerekiyor mu?

RStudio tümleştirme mimarisindeki diyagramda görebileceğiniz gibi, RStudio Server daemon'ı Azure Databricks kümenizin sürücü (ana) düğümünde çalışır. RStudio Server Açık Kaynak Sürümü ile ek sunucu/hizmet çalıştırmanız gerekmez. Ancak, RStudio Workbench için RStudio Lisans Sunucusu çalıştıran ayrı bir örneği yönetmeniz gerekir.

RStudio Server’ı standart bir kümede kullanabilir miyim?

Not

Bu makalede eski kümeler kullanıcı arabirimi açıklanmaktadır. Küme erişim modları için terminoloji değişiklikleri de dahil olmak üzere yeni küme kullanıcı arabirimi (önizlemede) hakkında bilgi için bkz . İşlem yapılandırması başvurusu. Yeni ve eski küme türlerinin karşılaştırması için bkz . Kümeler kullanıcı arabirimi değişiklikleri ve küme erişim modları.

Evet, sürdürebilirsiniz.

RStudio Sunucusu'nu otomatik sonlandırma ile bir kümede kullanabilir miyim?

Hayır, otomatik sonlandırma etkinleştirildiğinde RStudio'yu kullanamazsınız. Otomatik sonlandırma, bir RStudio oturumu içindeki kaydedilmemiş kullanıcı betiklerini ve verilerini temizleyebilir. Kullanıcıları bu istenmeyen veri kaybı senaryosuna karşı korumak için RStudio, bu tür kümelerde varsayılan olarak devre dışı bırakılır.

Kullanılmadığında küme kaynaklarının temizlenmesini gerektiren müşteriler için Databricks, RStudio kümelerini bir zamanlamaya göre temizlemek için küme API'lerini kullanmanızı önerir.

RStudio’da çalışmamı nasıl kalıcı hale getiririm?

RStudio'dan bir sürüm denetim sistemi kullanarak çalışmanızı devam ettirin. RStudio, çeşitli sürüm denetim sistemleri için harika bir desteğe sahiptir ve projelerinizi iade edip yönetmenizi sağlar. Kodunuzu aşağıdaki yöntemlerden biriyle kalıcı yapmazsanız, çalışma alanı yöneticisi kümeyi yeniden başlatır veya sonlandırırsa çalışmanızı kaybetme riskiyle karşı karşıya kalırsınız.

Yöntemlerden biri, dosyalarınızı (kod veya veri) DBFS nedir? Örneğin, dosyalar altındaki /dbfs/ bir dosyayı kaydederseniz kümeniz sonlandırıldığında veya yeniden başlatıldığında silinmez.

Bir diğer yöntem de R not defterini olarak Rmarkdowndışarı aktarıp daha sonra dosyayı RStudio örneğine aktararak yerel dosya sisteminize kaydetmektir. RMarkdown kullanarak R Not Defterlerini Paylaşma blogu, adımları daha ayrıntılı olarak açıklar.

Oturum Nasıl yaparım? başlatılamıyorSparkR?

SparkR Databricks Runtime'da bulunur, ancak RStudio'ya yüklemeniz gerekir. Oturumu başlatmak SparkR için RStudio içinde aşağıdaki kodu çalıştırın.

library(SparkR)

sparkR.session()

Paketi içeri aktarırken SparkR bir hata varsa komutunu çalıştırın .libPaths() ve sonucun içerdiğini /home/ubuntu/databricks/spark/R/lib doğrulayın.

Dahil değilse içeriğini /usr/lib/R/etc/Rprofile.sitedenetleyin. /home/ubuntu/databricks/spark/R/lib/SparkR paketinin yüklü olduğunu doğrulamak için sürücüdeki SparkR listeleyin.

Oturum Nasıl yaparım? başlatılamıyorsparklyr?

Paket sparklyr kümeye yüklenmelidir. Paketi yüklemek sparklyr için aşağıdaki yöntemlerden birini kullanın:

  • Azure Databricks kitaplığı olarak
  • install.packages() komut
  • RStudio paket yönetimi kullanıcı arabirimi
library(sparklyr)

sc <- spark_connect(method = “databricks”)

RStudio, Azure Databricks R not defterleriyle nasıl tümleşir?

Çalışmanızı sürüm denetimi aracılığıyla not defterleri ve RStudio arasında taşıyabilirsiniz.

Çalışma dizini nedir?

RStudio'da bir proje başlattığınızda bir çalışma dizini seçersiniz. Varsayılan olarak bu, RStudio Server'ın çalıştığı sürücü (ana) kapsayıcısının giriş dizinidir. İsterseniz bu dizini değiştirebilirsiniz.

Azure Databricks üzerinde çalışan RStudio'dan Shiny Apps'i başlatabilir miyim?

Evet, Databricks'te RStudio Server'da Parlak uygulamalar geliştirebilir ve görüntüleyebilirsiniz.

Azure Databricks'te RStudio içinde terminal veya git kullanamıyorum. Bunu nasıl düzeltebilirim?

Websockets'i devre dışı bırakmış olduğunuzdan emin olun. RStudio Server Açık Kaynak Sürümü'nde bunu kullanıcı arabiriminden yapabilirsiniz.

RStudio Oturumu

RStudio Server Pro'da, websockets'i tüm kullanıcılar için devre dışı bırakmak için öğesine ekleyebilirsiniz allow-terminal-websockets=0/etc/rstudio/rsession.conf .

Küme ayrıntıları altında Uygulamalar sekmesini görmüyorum.

Bu özellik tüm müşteriler tarafından kullanılamaz. Premium planda olmanız gerekir.