小编Ram*_*ram的帖子

hive 0.13 msck修复表仅列出不在Metastore中的分区

我正在尝试使用Hive(0.13)msck repair table命令来恢复分区,它只列出未添加到Metastore的分区,而不是将它们添加到Metastore中.

这是命令的输出

partitions not in metastore externalexample:CreatedAt=26 04%3A50%3A56 UTC 2014/profileLocation="Chicago"
Run Code Online (Sandbox Code Playgroud)

这是我如何创建外部表

CREATE EXTERNAL TABLE IF NOT EXISTS ExternalExample(
        tweetId BIGINT, username STRING,
        txt STRING, CreatedAt STRING,
        profileLocation STRING,
        favc BIGINT,retweet STRING,retcount BIGINT,followerscount BIGINT)
    COMMENT 'This is the Twitter streaming data'
    ROW FORMAT DELIMITED
    FIELDS TERMINATED BY '\t'
    STORED AS TEXTFILE
    location '/user/hue/exttable/';
Run Code Online (Sandbox Code Playgroud)

我错过了什么吗?

hive hiveql hadoop2

5
推荐指数
4
解决办法
2万
查看次数

Drools在Spark中用于流媒体文件

我们能够成功地将drools与spark集成在一起当我们尝试应用来自Drools的规则时,我们能够为批处理文件做到这一点,它存在于HDFS中,但我们尝试使用drools进行流式文件,以便我们可以立即做出决定,但我们无法弄清楚如何去做.Below是我们正在努力实现的代码片段.
案例1 : .

    SparkConf conf = new SparkConf().setAppName("sample");
    JavaSparkContext sc = new JavaSparkContext(conf);

    JavaRDD<String> javaRDD = sc.textFile("/user/root/spark/sample.dat");
    List<String> store = new ArrayList<String>();
    store = javaRDD.collect();
Run Code Online (Sandbox Code Playgroud)

案例2: 当我们使用流式上下文时

SparkConf sparkconf = new SparkConf().setAppName("sparkstreaming");
    JavaStreamingContext ssc = 
              new JavaStreamingContext(sparkconf, new Duration(1));

    JavaDStream<String> lines = ssc.socketTextStream("xx.xx.xx.xx", xxxx);
Run Code Online (Sandbox Code Playgroud)

在第一种情况下,我们可以在变量存储上应用我们的规则,但在第二种情况下,我们无法在线上应用规则dstream.

如果有人有一些想法,怎么做,将是一个很大的帮助.

java hadoop drools apache-spark spark-streaming

5
推荐指数
1
解决办法
3571
查看次数

Hive,如何检索所有数据库的表列

我想在Hive中编写这个sql请求的等价物:

select * from information_schema.columns where table_schema='database_name'
Run Code Online (Sandbox Code Playgroud)

如何访问配置单元的Metastore并检索存储在特定数据库中的所有表的所有列?我知道我们可以通过describe [table_name]通过表来完成它,但是在同一个请求中是否有数据库中所有表的所有列?

java sql hadoop hive metastore

5
推荐指数
2
解决办法
1万
查看次数

我们如何确定总数。蜂巢表的桶数

我对 hadoop 有点陌生。根据我的知识桶是固定的。hive 表中的分区数和 hive 使用 no。减速器的总数与总数相同。创建表时定义的桶数。那么谁能告诉我如何计算总数。蜂巢表中的桶数。有没有计算桶总数的公式?

hive buckets numbers formula

5
推荐指数
2
解决办法
2万
查看次数

如何在Spark中获取默认属性值

我正在使用这个版本的Spark : spark-1.4.0-bin-hadoop2.6. 我想检查几个默认属性.所以我在下面发表了以下声明spark-shell

scala> sqlContext.getConf("spark.sql.hive.metastore.version")
Run Code Online (Sandbox Code Playgroud)

我期待调用方法getConf返回0.13.1链接中描述的值.但我得到了以下例外

java.util.NoSuchElementException: spark.sql.hive.metastore.version
    at org.apache.spark.sql.SQLConf$$anonfun$getConf$1.apply(SQLConf.scala:283)
    at org.apache.spark.sql.SQLConf$$anonfun$getConf$1.apply(SQLConf.scala:283)
Run Code Online (Sandbox Code Playgroud)

我是否以正确的方式检索房产?

scala apache-spark apache-spark-sql

5
推荐指数
2
解决办法
7642
查看次数

Spark 1.6 (RPC) 的可扩展性更好:Netty 或 AKKA?

Spark 1.6 可以配置为使用 AKKA 或 Netty 进行 RPC。如果配置了 Netty,这是否意味着 Spark 运行时不使用 Actor 模型进行消息传递(例如,在工作程序和驱动程序块管理器之间),或者甚至在 Netty 配置的情况下,依赖于 Netty 使用自定义简化的 Actor 模型。

我认为 AKKA 本身依赖于 netty,而 Spark 仅使用 AKKA 的一个子集。不过,与 Netty 相比,配置 AKKA 是否更具有可扩展性(就工作人员数量而言)?对这个特定的火花配置有什么建议吗?

rpc akka netty apache-spark

5
推荐指数
1
解决办法
1142
查看次数

使用变量过滤Spark Dataframe

这在火花数据帧中是否可行(1.6/2.1)

val data="some variable"

df.filter("column1"> data)
Run Code Online (Sandbox Code Playgroud)

我可以使用静态值执行此操作,但无法弄清楚如何通过变量进行过滤.

scala dataframe apache-spark

5
推荐指数
2
解决办法
2万
查看次数

spark 从 oracle 导入数据 - java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver

在尝试使用 AWS EMR 上的 spark 从 oracle 数据库读取数据时,我收到此错误消息:

java.lang.ClassNotFoundException:oracle.jdbc.driver.OracleDriver。

有人可以让我知道是否有人遇到过这个问题以及他们是如何解决的吗?

pyspark --driver-class-path /home/hadoop/ojdbc7.jar --jars   /home/hadoop/ojdbc7.jar

from pyspark import SparkContext, HiveContext, SparkConf

from pyspark.sql import SQLContext

sqlContext = SQLContext(sc)

df = sqlContext.read.format("jdbc").options(url="jdbc:oracle:thin:user/pass@//10.200.100.142:1521/BMD", driver = "oracle.jdbc.driver.OracleDriver", 
dbtable="S_0COORDER_TEXT_D").load()
Run Code Online (Sandbox Code Playgroud)

python oracle hadoop apache-spark pyspark

5
推荐指数
1
解决办法
8203
查看次数

我们能否使用多个sparksessions访问两个不同的Hive服务器

我有一个方案来比较来自两个单独的远程配置单元服务器的两个不同表的源和目标,我们可以使用两个SparkSessions如下所示的东西吗:

 val spark = SparkSession.builder().master("local")
  .appName("spark remote")
  .config("javax.jdo.option.ConnectionURL", "jdbc:mysql://192.168.175.160:3306/metastore?useSSL=false")
  .config("javax.jdo.option.ConnectionUserName", "hiveroot")
  .config("javax.jdo.option.ConnectionPassword", "hivepassword")
  .config("hive.exec.scratchdir", "/tmp/hive/${user.name}")
  .config("hive.metastore.uris", "thrift://192.168.175.160:9083")
  .enableHiveSupport()
  .getOrCreate()

SparkSession.clearActiveSession()
SparkSession.clearDefaultSession()

val sparkdestination = SparkSession.builder()
  .config("javax.jdo.option.ConnectionURL", "jdbc:mysql://192.168.175.42:3306/metastore?useSSL=false")
  .config("javax.jdo.option.ConnectionUserName", "hiveroot")
  .config("javax.jdo.option.ConnectionPassword", "hivepassword")
  .config("hive.exec.scratchdir", "/tmp/hive/${user.name}")
  .config("hive.metastore.uris", "thrift://192.168.175.42:9083")
  .enableHiveSupport()
  .getOrCreate() 
Run Code Online (Sandbox Code Playgroud)

我试过了, SparkSession.clearActiveSession() and SparkSession.clearDefaultSession()但没有用,并抛出以下错误:

Hive: Failed to access metastore. This class should not accessed in runtime.
org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
Run Code Online (Sandbox Code Playgroud)

还有其他任何方法可以使用double SparkSessions或来访问两个hive表SparkContext

谢谢

hive scala apache-spark apache-spark-sql

5
推荐指数
1
解决办法
1888
查看次数

Spark&Scala:saveAsTextFile()异常

我是Spark&Scala的新手,在调用saveAsTextFile()之后我得到了异常.希望有人能帮忙......

这是我的input.txt:

Hello World, I'm a programmer 
Hello World, I'm a programmer 
Run Code Online (Sandbox Code Playgroud)

这是在CMD上运行"spark-shell"后的信息:

C:\Users\Nhan Tran>spark-shell
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
Spark context Web UI available at http://DLap:4040
Spark context available as 'sc' (master = local[*], app id = local-1526374303208).
Spark session available as 'spark'.
Welcome to
      ____              __
     / __/__  ___ _____/ /__
    _\ \/ _ \/ _ `/ __/  '_/
   /___/ .__/\_,_/_/ /_/\_\   version 2.3.0
      /_/

Using Scala …
Run Code Online (Sandbox Code Playgroud)

hadoop scala bigdata apache-spark apache-spark-sql

5
推荐指数
1
解决办法
946
查看次数