คำถามติดแท็ก bigdata

1
การเขียนมากกว่า 50 ล้านจาก Pyspark df ไปยัง PostgresSQL ซึ่งเป็นวิธีการที่มีประสิทธิภาพที่สุด
อะไรจะเป็นวิธีที่มีประสิทธิภาพมากที่สุดในการแทรกเรคคอร์ดนับล้านบันทึกว่า 50 ล้านจาก Spark dataframe ไปยัง Postgres Tables ฉันได้ทำสิ่งนี้ตั้งแต่ประกายไปจนถึง MSSQL ในอดีตโดยใช้ประโยชน์จากการคัดลอกจำนวนมากและตัวเลือกขนาดแบทช์ซึ่งก็ประสบความสำเร็จเช่นกัน มีบางอย่างที่คล้ายกันที่สามารถอยู่ที่นี่สำหรับ Postgres ได้หรือไม่ เพิ่มรหัสฉันได้ลองและเวลาที่ใช้ในการเรียกใช้กระบวนการ: def inserter(): start = timer() sql_res.write.format("jdbc").option("numPartitions","5").option("batchsize","200000")\ .option("url", "jdbc:postgresql://xyz.com:5435/abc_db") \ .option("dbtable", "public.full_load").option("user", "root").option("password", "password").save() end = timer() print(timedelta(seconds=end-start)) inserter() ดังนั้นผมจึงไม่ได้วิธีการดังกล่าวข้างต้น 10 ล้านแผ่นและมี 5 เชื่อมต่อแบบขนานตามที่ระบุในnumPartitionsและยังพยายามขนาดชุดของ 200k เวลาทั้งหมดที่ใช้ในกระบวนการคือ0: 14: 05.760926 (สิบสี่นาทีและห้าวินาที) มีวิธีอื่นที่มีประสิทธิภาพซึ่งจะลดเวลาหรือไม่? ขนาดแบทช์ที่มีประสิทธิภาพหรือเหมาะสมที่สุดที่ฉันสามารถใช้ได้คืออะไร การเพิ่มขนาดชุดของฉันจะทำงานเร็วขึ้นหรือไม่ หรือเปิดการเชื่อมต่อที่หลากหลายเช่น> 5 ช่วยให้กระบวนการเร็วขึ้นหรือไม่ บนเฉลี่ย …

4
ใช้ R เพื่อแก้ปัญหาเกม Lucky 26
ฉันพยายามแสดงให้ลูกชายเห็นว่าการเขียนโค้ดสามารถใช้ในการแก้ปัญหาที่เกิดจากเกมได้อย่างไรรวมถึงการเห็นว่า R จัดการกับข้อมูลขนาดใหญ่ได้อย่างไร เกมดังกล่าวมีชื่อว่า "Lucky 26" ในเกมนี้หมายเลข (1-12 โดยไม่มีการซ้ำซ้อน) ถูกวางตำแหน่งที่ 12 คะแนนบนดาวของดาวิด (6 จุดยอด, 6 ทางแยก) และ 6 บรรทัดของ 4 หมายเลขทั้งหมดต้องเพิ่มเป็น 26 จากความเป็นไปได้ประมาณ 479 ล้าน (12P12 ) เห็นได้ชัดว่ามี 144 โซลูชั่น ฉันพยายามที่จะรหัสนี้ใน R ดังนี้ แต่หน่วยความจำเป็นปัญหาดูเหมือนว่า ฉันขอขอบคุณคำแนะนำใด ๆ ที่จะตอบคำถามหากสมาชิกมีเวลา ขอบคุณสมาชิกล่วงหน้า library(gtools) x=c() elements <- 12 for (i in 1:elements) { x[i]<-i } …
15 r  bigdata  permutation 

1
Apache Spark: ผลกระทบของการแบ่งพาร์ติชันใหม่การเรียงลำดับและการแคชกับการเข้าร่วม
ฉันกำลังสำรวจพฤติกรรมของ Spark เมื่อเข้าร่วมโต๊ะกับตัวเอง ฉันกำลังใช้ Databricks สถานการณ์จำลองของฉันคือ: อ่านตารางภายนอกเป็น dataframe A (ไฟล์อ้างอิงอยู่ในรูปแบบของเดลต้า) กำหนด dataframe B เป็น dataframe A โดยเลือกคอลัมน์บางคอลัมน์เท่านั้น เข้าร่วม dataframes A และ B ในคอลัมน์ 1 และคอลัมน์ 2 (ใช่มันไม่สมเหตุสมผลมากนักฉันแค่ทดลองทำความเข้าใจกลไกพื้นฐานของ Spark) a = spark.read.table("table") \ .select("column1", "column2", "column3", "column4") \ .withColumn("columnA", lower((concat(col("column4"), lit("_"), col("column5"))))) b = a.select("column1", "column2", "columnA") c= a.join(b, how="left", on …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.