2017-08-07 12 views
0

TBLを取り除く:SparklyR removing a Table from Spark Contextが、異なるのため:SparklyRがスパークコンテキストからと同様に

上記の質問はここにcopy_to機能により作成され、スパークから「表」を削除する方法を要求します。代わりにspark_read_csv()関数を使用すると、クラスに違いがあるように見えます。

my_csv <- spark_read_csv("name", sc) 
db_drop_table(my_table) 

リターン:

Error in UseMethod("db_drop_table") : 
    no applicable method for 'db_drop_table' applied to an object of class "c('tbl_spark', 'tbl_sql', 'tbl_lazy', 'tbl')" 

ここで作成されたオブジェクトは、tableが、選択肢のtbl、ハドリーズデータ型ではないことをさらに示しています。

したがって、特定のtblを削除して、フルセッションを終了することなくメモリ/セッションからそのtblのみを削除するにはどうすればよいですか?

ボーナス:このプロセスを実行するのに欠けているRStudio Serverインターフェイスにボタンがありますか?私はスパーク接続タブでこれを行う明らかな方法で見ることができません。一般sparklyr

答えて

2

  • は一時的なビューを作成します - これは単なるメタストアに対応するエントリが作成されますが、デフォルトでは
  • が熱心にデータをキャッシュするすべてのリソースを占有しない(読者のためのmemoryパラメータがに設定されていますTRUE)。

あなたはdropView方法使用してメタストアからテーブルを削除することができます:あなたは、おそらく焦点を当てるべきで名前の衝突を心配している場合を除き

sc %>% spark_session() %>% invoke("catalog") %>% 
    invoke("clearCache") 

sc %>% spark_session() %>% invoke("catalog") %>% 
    invoke("dropTempView", "my_table") 

またはclearCache方法との明確なキャッシュをそれは厳密に必要でない限り、私は熱心なキャッシュを避けることをお勧めしますが、2番目のものです。

+1

2の2、ありがとうございます。それが明白でない場合、私はすべてのスパークのものから始めています、あなたは簡単な言葉で2つの違いを拡大できますか? – DaveRGP

関連する問題