Как преобразовать таблицу SQL 500GB в паркет Apache?

возможно, это хорошо документировано, но я очень запутался, как это сделать (есть много инструментов Apache).

когда я создаю таблицу SQL, я создаю таблицу, используя следующие команды:

CREATE TABLE table_name(
   column1 datatype,
   column2 datatype,
   column3 datatype,
   .....
   columnN datatype,
   PRIMARY KEY( one or more columns )
);

Как преобразовать эту таблицу exist в паркет? Этот файл записывается на диск? Если исходные данные составляют несколько ГБ, сколько времени нужно ждать?

может я формат исходных данных на паркет вместо формата?

2 ответов


для этого можно использовать Apache Spark:

1.load your table from mysql via jdbc
2.save it as a parquet file

пример:

from pyspark.sql import SparkSession
spark = SparkSession.builder.getOrCreate()
df = spark.read.jdbc("YOUR_MYSQL_JDBC_CONN_STRING",  "YOUR_TABLE",properties={"user": "YOUR_USER", "password": "YOUR_PASSWORD"})
df.write.parquet("YOUR_HDFS_FILE")

использовать Sqoop (что означает Sql к HadОП). Короткий отрывок из документация:

вы можете использовать Sqoop для импорта данных из реляционной базы данных система управления (СУБД), такая как MySQL или Oracle или мейнфрейм в распределенная файловая система Hadoop (HDFS).