2017-10-29 95 views
6

Kıvılcımdan veya endekslenmeyi etkinleştirmek için seçenek nedir?Spark ORC dizinlerini nasıl kullanırım?

  df 
      .write() 
      .option("mode", "DROPMALFORMED") 
      .option("compression", "snappy") 
      .mode("overwrite") 
      .format("orc") 
      .option("index", "user_id") 
      .save(...); 

ben orc gelen endeks sütun "user_id" orada koymak ne olurdu, yukarı .option("index", uid) yapıyorum.

cevap

2

Denediniz mi: .partitionBy("user_id")?

df 
     .write() 
     .option("mode", "DROPMALFORMED") 
     .option("compression", "snappy") 
     .mode("overwrite") 
     .format("orc") 
     .partitionBy("user_id") 
     .save(...) 
+0

Sanırım, bölüm dizin oluşturmak yerine kullanıcı başına yeni bir dosya oluşturacaktır. Ama sen sadece bir cevap verdin, ben de sana lütfunu verdim. – ForeverConfused

+0

@ForeverConfused bunun üzerinde araştırma yapıyorum. Yakında haber vereceğim. – Achyuth

+0

@Achyuth, ORC dosyasında dizin oluşturmaya yönelik herhangi bir yaklaşım buldunuz mu? Bugüne kadar hiçbir şey bulamadım. Bana öyle geliyor ki, ORC dosyasındaki dizini kullanmanın tek yolu Hive kullanıyor. Lütfen yanlışsa beni düzeltin. Teşekkürler! –