草庐IT

Spark-Hive

全部标签

scala - 使用 SqlContext 连接 Hive 表

我的问题对你们大多数人来说可能听起来很愚蠢,但我需要使用spark-scala在我的配置单元表中执行一些操作,为此我想知道我是否可以使用SqlContext来读取hive表。我知道HiveContext但我想使用SqlContext。 最佳答案 正如评论中提到的@BinaryNerd:HiveContextextendsSQLContext所以当你使用类型安全的语言(Java)时,你可以这样声明你的SQLContext:SQLContextsqlContext=newHiveContext(sc)

hadoop - Hive外部表能否智能识别分区?

每当我需要挂载分区时,我都需要运行它。有没有一种方法可以自动检测外部配置单元表中的分区,而不是我手动执行它ALTERTABLETableNameADDIFNOTEXISTSPARTITION()location'locationpath'; 最佳答案 恢复分区(MSCK修复表)https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL#LanguageManualDDL-RecoverPartitions(MSCKREPAIRTABLE)MSCKREPAIR

scala - Spark - 另一个转换中的 Rdd 转换

我试图在另一个转换中转换RDD。因为,RDD转换和操作只能由驱动程序调用,我收集了第二个RDD并尝试在其他转换中对其应用转换,如下所示valname_match=first_names.map(y=>(y,first_names_collection.value.filter(z=>soundex.difference(z,y)==4)))上面的代码抛出了下面的异常org.apache.hadoop.ipc.RemoteException(org.apache.hadoop.yarn.exceptions.ApplicationAttemptNotFoundException):App

hadoop - 在 spark 中使用 hadoop 配置连接到 Hbase

我正在尝试在spark的MapPartitionFunction中创建hbase连接。Causedby:java.io.NotSerializableException:org.apache.hadoop.conf.Configuration我试过下面的代码SparkConfconf=newSparkConf().setAppName("EnterPriseRiskScore").setMaster("local");conf.set("spark.serializer","org.apache.spark.serializer.KryoSerializer");conf.set("s

hadoop - hive 字符串中的右字符

在hive中没有获取字符串左右部分的命令。对于Left,不难找到解决方法:SELECTSUBSTR('abcdefgh',1,2);ab提取字符串右侧两个字符的最优雅方法是什么? 最佳答案 显然可以在SUBSTR中使用负数,这样你就可以得到相关的子字符串,如下所示:SELECTSUBSTR('abcdefgh',-2,2);gh 关于hadoop-hive字符串中的右字符,我们在StackOverflow上找到一个类似的问题: https://stackove

oracle - 在 Hive SQL 中为每个 ID 查找 3 分钟组

我有这样的数据,IDtime19/6/201600:01:0019/6/201600:01:3019/6/201600:02:0019/6/201600:04:3019/6/201600:05:3019/6/201601:05:3019/6/201605:05:3019/6/201605:06:3029/6/201601:55:0029/6/201601:56:2929/6/201601:57:3129/6/201603:55:0029/6/201604:13:0029/6/201604:15:21对于每个ID,我想将一个名为flag的新变量设置为1并检查时间的第一个值。从第一个时间值

amazon-web-services - 中等 Hadoop/Spark 集群管理

如果这个问题更适合不同的channel,请告诉我,但我想知道推荐的工具是什么,可以在大量远程服务器上安装、配置和部署hadoop/spark。我已经熟悉如何设置所有软件,但我正在尝试确定我应该开始使用什么,这将使我能够轻松地跨大量服务器进行部署。我已经开始研究配置管理工具(即chef、puppet、ansible),但想知道最好的和最用户友好的选项是什么。我也不想使用spark-ec2。我应该创建自己开发的脚本来遍历包含IP的主机文件吗?我应该使用pssh吗?PSCP?等。我希望能够根据需要与尽可能多的服务器进行ssh连接并安装所有软件。 最佳答案

hadoop - 如何使用 Spark 编写 avro 文件?

我有一个Array[Byte]代表一个avro模式。我正在尝试将它作为带有spark的avro文件写入Hdfs。这是代码:valvalues=messages.map(row=>(null,AvroUtils.decode(row._2,topic))).saveAsHadoopFile(outputPath,classOf[org.apache.hadoop.io.NullWritable],classOf[CrashPacket],classOf[AvroOutputFormat[SpecificRecordBase]])row._2是Array[Byte]我收到此错误:org.a

java - hive 计数 * 内存不足

hive>selectcount(*)fromipaddresswherecountry='China';WARNING:Hive-on-MRisdeprecatedinHive2andmaynotbeavailableinthefutureversions.Considerusingadifferentexecutionengine(i.e.tez,spark)orusingHive1.Xreleases.QueryID=pruthviraj_20160922163728_79a0f8d6-5ea6-4cb5-8dd2-d3bb63f8baafTotaljobs=1Launching

hadoop - 无法通过 Hive 1.2 中的 alter table 恢复分区

我无法在配置单元1.2上运行ALTERTABLEMY_EXTERNAL_TABLERECOVERPARTITIONS;,但是当我运行替代方案时MSCKREPAIRTABLEMY_EXTERNAL_TABLE它只是列出了分区'在HiveMetaStore中并且没有添加它。根据hive-exec的源代码,我可以在org/apache/hadoop/hive/ql/parse/HiveParser.g:1001:1下看到语法中没有用于RECOVER的标记匹配分区。如果有办法在Hive1.2上创建外部表后恢复所有分区,请告诉我。ALTERTABLEMY_EXTERNAL_TABLERECOVE