如何使用 Spark ORC 索引?

How do I use Spark ORC indexes?

从 spark 启用 orc 索引的选项是什么?

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

我正在编 .option("index", uid),我必须将什么内容放在那里以索引来自 orc 的列 "user_id"。

您尝试过吗:.partitionBy("user_id")

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

根据关于将 ORC 支持引入 Apache Spark 的原始博文,有一个配置旋钮可以在您的 Spark 上下文中打开以启用 ORC 索引。

# enable filters in ORC
sqlContext.setConf("spark.sql.orc.filterPushdown", "true")

参考:https://databricks.com/blog/2015/07/16/joint-blog-post-bringing-orc-support-into-apache-spark.html