Open yamuzer opened 2 years ago
dbfs 관련된 내용은 아래 참고하심 됩니다. dbfs 유틸리티 함수에 폴더 변경, 삭제, 이동 등 명령어 쓰셔도 되고 pandas나 spark dataframe 사용하면 write 하는건 각 라이브러리마다 다르니 참고하심 되요.
https://docs.databricks.com/data/databricks-file-system.html https://docs.databricks.com/dev-tools/databricks-utils.html
pandas(로컬)에서 해당 위치 저장 안하고 로컬(driver)에만 그냥 보관하면 s3에 저장되지 않고 => df.to_csv('/dbfs/FileStore/KartRider/2/3/2021_0930(1)_speed_matchinfo_df.csv')
dbfs 위치를 적당히 써주면 해당 위치에 데이터가 저장되요. 현재 s3 버킷이 dbfs에 mount 되어 잇다고 보심 되요. spark에서 wrtie 하거나, hive에서 write 할때만 dbfs(현재 s3 가 mount 되어 있음) 에 저장됩니다.
그래서 1번 경로 미지정하고 파일 저장이 되나요의 질문이 되었나 싶긴한데.. 노트북 저장공간은 별도로 있습니다.
spark에서 parquet / json / csv/ txt 또는 hive로 저장하는 것도 아래와 같은 형태로 하면 되요.
저장 방식
spark dataframe (parquet) 로 저장 OUTPUT_PATH = "dbfs:/mnt/dataanalysis/syleeie/test" test_df.write.save(OUTPUT_PATH, format='parquet', mode='overwrite')
spark dataframe => hive 로 저장 test_df = spark.sql(""" select category, sub_category, count(*) cnts from test_rdd_df group by category, sub_category """) test_df.write.saveAsTable("test_df3")
삭제 dbutils.fs.rm('/FileStore/tables/syleeie/test', True)