หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
ไลบรารีมีโค้ดที่นํากลับมาใช้ใหม่ได้ซึ่งคุณอาจต้องการรวมไว้ในโปรแกรมหรือโครงการของคุณสําหรับ Microsoft Fabric Spark
Microsoft Fabric รองรับรันไทม์ R พร้อมแพ็คเกจ R โอเพ่นซอร์สยอดนิยมมากมาย รวมถึง TidyVerse ที่ติดตั้งไว้ล่วงหน้า เมื่อเริ่มมีอินสแตนซ์ Spark ไลบรารีเหล่านี้จะรวมโดยอัตโนมัติและพร้อมใช้งานในสมุดบันทึกหรือข้อกําหนดงาน Spark ทันที
คุณอาจจําเป็นต้องอัปเดตไลบรารี R ของคุณด้วยเหตุผลหลายประการ ตัวอย่างเช่น หนึ่งในการขึ้นต่อกันหลักของคุณที่มีการเผยแพร่เวอร์ชันใหม่ หรือทีมของคุณได้สร้างแพคเกจแบบกําหนดเองที่คุณต้องการพร้อมใช้งานในคลัสเตอร์ Spark ของคุณ
ไลบรารีสองชนิดอาจเหมาะกับสถานการณ์ของคุณ:
ไลบรารีฟีด หมายถึงไลบรารีที่อยู่ในแหล่งข้อมูลสาธารณะหรือที่เก็บ เช่น CRAN หรือ GitHub
ไลบรารีแบบกําหนดเอง เป็นโค้ดที่คุณหรือองค์กรของคุณสร้างขึ้น .tar.gz สามารถจัดการได้ผ่านพอร์ทัลการจัดการไลบรารี
มีแพคเกจสองระดับที่ติดตั้งบน Microsoft Fabric:
สภาพแวดล้อม : จัดการไลบรารีผ่านสภาพแวดล้อม เพื่อใช้ไลบรารีชุดเดียวกันในสมุดบันทึกหรืองานหลายรายการซ้ํา
เซสชัน : การติดตั้งระดับเซสชันจะสร้างสภาพแวดล้อมสําหรับเซสชันสมุดบันทึกเฉพาะ การเปลี่ยนแปลงไลบรารีระดับเซสชันจะไม่ยังคงอยู่ระหว่างเซสชัน
โหมดการเผยแพร่สภาพแวดล้อม (ด่วน vs เต็ม)
เมื่อคุณติดตั้งไลบรารีในสภาพแวดล้อม Fabric คุณเลือกโหมดการเผยแพร่:
- โหมดด่วน จะเผยแพร่ในเวลาประมาณ 5 วินาที ไลบรารีจะติดตั้งเมื่อเซสชันสมุดบันทึกเริ่มต้นขึ้น โหมดด่วนเหมาะที่สุดสําหรับการทําซ้ําอย่างรวดเร็วระหว่างการพัฒนา
- โหมดเต็ม จะสร้างสแนปช็อตไลบรารีที่เสถียรและทําซ้ําได้ โดยทั่วไปการเผยแพร่จะใช้เวลา 3 ถึง 6 นาที และการเริ่มต้นเซสชันจะเพิ่ม 1 ถึง 3 นาทีสําหรับการปรับใช้การขึ้นต่อกัน
โหมดเหล่านี้ใช้กับไลบรารี R ระดับสภาพแวดล้อม ไลบรารี R ระดับเซสชันที่คุณติดตั้งผ่านคําสั่งแบบอินไลน์ (เช่น install.packages()) หรือจากโฟลเดอร์ ทรัพยากร เป็นไลบรารีต่อเซสชันและต่อสมุดบันทึก โดยจะไม่ได้รับผลกระทบจากโหมดการประกาศสภาพแวดล้อม สําหรับรายละเอียด โปรดดู จัดการไลบรารีในสภาพแวดล้อม Fabric
ตารางต่อไปนี้สรุปลักษณะการจัดการไลบรารี R ที่พร้อมใช้งานในปัจจุบัน:
| ชนิดไลบรารี | การติดตั้งสภาพแวดล้อม | การติดตั้งระดับเซสชัน |
|---|---|---|
| ฟีด R (CRAN) | ไม่ได้รับการสนับสนุน | สนับสนุน |
| R แบบกําหนดเอง | สนับสนุน | สนับสนุน |
ข้อกําหนดเบื้องต้น
รับการสมัครใช้งาน Microsoft Fabric หรือลงทะเบียนเพื่อทดลองใช้ Microsoft Fabric ฟรี
ลงชื่อเข้าใช้ Microsoft Fabric
สลับไปยัง Fabric โดยใช้ตัวสลับประสบการณ์ที่ด้านซ้ายล่างของโฮมเพจของคุณ
ไลบรารี R ระดับเซสชัน
เมื่อคุณทําการวิเคราะห์ข้อมูลแบบโต้ตอบหรือ machine learning คุณอาจลองใช้แพ็คเกจที่ใหม่กว่าหรือต้องการแพ็คเกจที่ไม่พร้อมใช้งานในพื้นที่ทํางานของคุณในขณะนี้ แทนที่จะอัปเดตการตั้งค่าพื้นที่ทํางาน ให้ใช้แพคเกจที่มีขอบเขตเซสชันเพื่อเพิ่ม จัดการ และอัปเดตการขึ้นต่อกันของเซสชัน
- เมื่อคุณติดตั้งไลบรารีที่มีขอบเขตเซสชัน เฉพาะสมุดบันทึกปัจจุบันเท่านั้นที่มีสิทธิ์ access ไปยังไลบรารีที่ระบุ
- ไลบรารีเหล่านี้ไม่ส่งผลกระทบต่อเซสชันหรืองานอื่นๆ ที่ใช้พูล Spark เดียวกัน
- ไลบรารีเหล่านี้ติดตั้งที่ด้านบนของไลบรารีรันไทม์พื้นฐานและไลบรารีระดับพูล
- ไลบรารีสมุดบันทึกมีความสําคัญสูงสุด ลําดับความสําคัญคือ: ไลบรารีที่มีขอบเขตสมุดบันทึก/เซสชันไลบรารี > ที่ใช้สภาพแวดล้อม > ไลบรารีรันไทม์พื้นฐาน
- ไลบรารี R ที่มีขอบเขตเซสชันจะไม่ยังคงอยู่ตลอดเซสชัน ไลบรารีเหล่านี้จะติดตั้งเมื่อเริ่มต้นแต่ละเซสชันเมื่อมีการดําเนินการคําสั่งการติดตั้งที่เกี่ยวข้อง
- ไลบรารี R ที่มีขอบเขตเซสชันจะติดตั้งโดยอัตโนมัติทั้งโหนดไดรเวอร์และโหนดผู้ปฏิบัติงาน
โน้ต
คําสั่งสําหรับการจัดการไลบรารี R ถูกปิดใช้งานเมื่อรันงานไปป์ไลน์ ถ้าคุณต้องการติดตั้งแพคเกจภายในไปป์ไลน์ คุณต้องใช้ความสามารถในการจัดการไลบรารีในระดับพื้นที่ทํางาน
ติดตั้งแพคเกจ R จาก CRAN
คุณสามารถติดตั้งไลบรารี R ได้อย่างง่ายดายจาก CRAN
# install a package from CRAN
install.packages(c("nycflights13", "Lahman"))
คุณยังสามารถใช้สแนปช็อต CRAN เป็นที่เก็บเพื่อให้แน่ใจว่าได้ดาวน์โหลดเวอร์ชันแพคเกจเดียวกันในแต่ละครั้ง
# install a package from CRAN snapsho
install.packages("highcharter", repos = "https://cran.microsoft.com/snapshot/2021-07-16/")
ติดตั้งแพคเกจ R โดยใช้ devtools
ไลบรารี devtools ช่วยลดความซับซ้อนของการพัฒนาแพคเกจเพื่อเร่งงานทั่วไป ไลบรารีนี้ได้รับการติดตั้งภายในรันไทม์ Microsoft Fabric เริ่มต้น
ใช้เพื่อ devtools ระบุเวอร์ชันเฉพาะของไลบรารีที่จะติดตั้ง คลัสเตอร์จะติดตั้งไลบรารีเหล่านี้ในทุกโหนด
# Install a specific version.
install_version("caesar", version = "1.0.0")
ในทํานองเดียวกัน คุณสามารถติดตั้งไลบรารีได้โดยตรงจาก GitHub
# Install a GitHub library.
install_github("jtilly/matchingR")
ปัจจุบัน ฟังก์ชัน devtools ต่อไปนี้ได้รับการสนับสนุนภายใน Microsoft Fabric:
| สั่ง | คำอธิบาย |
|---|---|
| install_github() | ติดตั้งแพคเกจ R จาก GitHub |
| install_gitlab() | ติดตั้งแพคเกจ R จาก GitLab |
| install_bitbucket() | ติดตั้งแพคเกจ R จาก BitBucket |
| install_url() | ติดตั้งแพคเกจ R จาก URL แบบอําเภอใจ |
| install_git() | ติดตั้งจากที่เก็บ git แบบกําหนด |
| install_local() | ติดตั้งจากไฟล์ภายในเครื่องบนดิสก์ |
| install_version() | ติดตั้งจากเวอร์ชันเฉพาะบน CRAN |
ติดตั้งไลบรารี R แบบกําหนดเอง
หากต้องการใช้ไลบรารีที่กําหนดเองระดับเซสชัน ให้อัปโหลดไปยัง Lakehouse ที่แนบมาก่อน
เปิดสมุดบันทึกที่คุณต้องการใช้ไลบรารีแบบกําหนดเอง
เลือกเมนูแบบเลื่อนลงถัดจากเลคเฮาส์ที่คุณเพิ่งเพิ่ม จากนั้นคลิกขวาหรือเลือก "..." ถัดจาก ไฟล์ เพื่ออัปโหลดไฟล์ .tar.gz ของคุณ
หลังจากอัปโหลดไฟล์แล้ว ให้ go back ไปยังสมุดบันทึกของคุณ ใช้คําสั่งต่อไปนี้เพื่อติดตั้งไลบรารีแบบกําหนดเองลงในเซสชันของคุณ:
install.packages("filepath/filename.tar.gz", repos = NULL, type = "source")
โน้ต
การติดตั้งแบบอินไลน์และวิธีการโฟลเดอร์ทรัพยากรสําหรับไลบรารี R เป็นแบบต่อเซสชันและต่อสมุดบันทึก พวกเขาไม่ได้รับผลกระทบจากโหมดการเผยแพร่สภาพแวดล้อม
ดูไลบรารีที่ติดตั้งไว้
คิวรีไลบรารีทั้งหมดที่ติดตั้งภายในเซสชันของคุณโดยใช้คําสั่ง library
# query all the libraries installed in current session
library()
ใช้ฟังก์ชัน packageVersion เพื่อตรวจสอบเวอร์ชันของไลบรารี:
# check the package version
packageVersion("caesar")
ลบแพคเกจ R ออกจากเซสชัน
ใช้ฟังก์ชันเพื่อ detach เอาไลบรารีออกจากเนมสเปซ ไลบรารีเหล่านี้จะยังคงอยู่บนดิสก์จนกว่าคุณจะโหลดอีกครั้ง
# detach a library
detach("package: caesar")
เมื่อต้องการเอาแพคเกจที่มีขอบเขตเซสชันออกจากสมุดบันทึก ให้ใช้คําสั่ง remove.packages() การเปลี่ยนแปลงไลบรารีนี้ไม่มีผลกระทบต่อเซสชันอื่น ๆ บนคลัสเตอร์เดียวกัน ผู้ใช้ไม่สามารถถอนการติดตั้งหรือลบไลบรารีที่มีอยู่แล้วภายในของรันไทม์ Microsoft Fabric เริ่มต้นได้
โน้ต
คุณไม่สามารถลบแพคเกจหลัก เช่น SparkR, SparklyR หรือ R ได้
remove.packages("caesar")
ไลบรารี R ที่มีขอบเขตเซสชันและ SparkR
ไลบรารีแบบกําหนดขอบเขตสมุดบันทึกพร้อมใช้งานบนผู้ปฏิบัติงาน SparkR
install.packages("stringr")
library(SparkR)
str_length_function <- function(x) {
library(stringr)
str_length(x)
}
docs <- c("Wow, I really like the new light sabers!",
"That book was excellent.",
"R is a fantastic language.",
"The service in this restaurant was miserable.",
"This is neither positive or negative.")
spark.lapply(docs, str_length_function)
ไลบรารี R ที่มีขอบเขตเซสชันและ sparklyr
เมื่อใช้ spark_apply() ใน sparklyr คุณสามารถใช้แพ็คเกจ R ใดก็ได้ภายใน Spark โดยค่าเริ่มต้น ใน sparklyr::spark_apply()อาร์กิวเมนต์ถูกpackagesตั้งค่าเป็นFALSE การตั้งค่านี้จะคัดลอกไลบรารีในปัจจุบัน libPaths ไปยังผู้ปฏิบัติงาน เพื่อให้คุณสามารถนําเข้าและใช้ไลบรารีเหล่านั้นกับผู้ปฏิบัติงานได้ ตัวอย่างเช่น คุณสามารถเรียกใช้คําสั่งต่อไปนี้เพื่อสร้างข้อความที่เข้ารหัสซีซาร์โดยใช้ sparklyr::spark_apply():
install.packages("caesar", repos = "https://cran.microsoft.com/snapshot/2021-07-16/")
spark_version <- sparkR.version()
config <- spark_config()
sc <- spark_connect(master = "yarn", version = spark_version, spark_home = "/opt/spark", config = config)
apply_cases <- function(x) {
library(caesar)
caesar("hello world")
}
sdf_len(sc, 5) %>%
spark_apply(apply_cases, packages=FALSE)
เนื้อหาที่เกี่ยวข้อง
- สร้าง กําหนดค่า และใช้สภาพแวดล้อมใน Microsoft Fabric
- จัดการไลบรารีในสภาพแวดล้อม Fabric (โหมดด่วนและโหมดเต็ม)
เรียนรู้เพิ่มเติมเกี่ยวกับฟังก์ชันการทํางานของ R: