草庐IT

test_hive

全部标签

hadoop - HBase 和 Hive 需要放在同一台机器上吗?

我们目前正在构建一个新的hbase集群。架构如下:现在我想添加一个新的Hive集群。但是不知道要不要和hbase在同一个hadoop集群上搭建hive。还是应该为hive构建一个新的hadoop集群?如果我为hive新建一个hadoop集群,执行sql聚合hbase的数据时,hive和hbase之间的流量会不会太大(AFAIK,hive需要将hbase上的数据导入到自己的hdfs存储中)? 最佳答案 让我们首先定义HBase和Hive之间的流量是多少。在每个Hive查询中,您将:使用Hive直接查询HBase使用Hive执行Ware

hadoop - 如何使用 hive/spark-sql 生成大数据集?

例如生成序号在1到1G之间的1G记录。 最佳答案 创建分区种子表createtableseed(iint)partitionedby(pint)用序列号在0到999之间的1K记录填充种子表。每条记录都被插入到不同的分区中,因此位于不同的HDFS目录中,更重要的是-在不同的文件中。附言需要以下集合sethive.exec.dynamic.partition.mode=nonstrict;sethive.exec.max.dynamic.partitions.pernode=1000;sethive.hadoop.supports.sp

apache - 大数据 hive 查询

我有以下数据Policy_NameIssueYearExpiryYearA20012003B20032006我需要如下输出:Policy_NameActiveYearA2001A2002A2003B2003B2004B2005B2006 最佳答案 selectt.Policy_Name,t.IssueYear+pe.iasActiveYearfrommytabletlateralviewposexplode(split(space(ExpiryYear-IssueYear),''))peasi,x;+---------------+

hadoop - HDFS 数据大小和 Hive 数据大小的差异

我在Hive中有一张表。当我运行命令showtblpropertiesmyTableName时,它给出了以下结果:numFiles12numRows1688092rawDataSize934923162totalSize936611254这意味着rawDataSize为934.92MB,totalSize为936.61MB当我运行命令来计算同一表在HDFS表位置上的数据大小时。[user@server1~]$hdfsdfs-du-h-s/apps/hive/warehouse/test.db/myTableName893.2M/apps/hive/warehouse/test.db/m

hadoop - 我如何避免 Hive 表的第一个 "NULL"中的 "Field Name"

首先,我使用以下命令在Hive中创建了表“emp”:createtableemp(idINT,nameSTRING,addressSTRING)ROWFORMATDELIMITEDFIELDSTERMINATEDBY'\t';然后通过以下命令将数据加载到这个“emp”表中:LOADDATALOCALINPATH'\home\cloudera\Desktop\emp.txt'覆盖到表emp;当我从“emp”表中选择数据时:它显示了表Null的第一个字段像这样: 最佳答案 您的文件中有一个标题行,第一个值id无法转换为INT,因此被替换

hadoop - 从 Hive 的列表中查找最大值

我需要从HIVE的列表中找到最大值。例如:如果我有值(value)观[5,4,3]在列表中我需要得到5。max(list_name)无效。有没有解决方法。 最佳答案 你可以看到这个doc在你的情况下,如果你有一个表名example|id|arr||1|[1,2]||2|[3,4]|如果你想得到的结果|id|max_arr||1|2||2|4|试试这个SQLSELECTid,max(arr_val)asmax_arrFROMexampleLATERALVIEWexplode(arr)arrtableASarr_valgroupbyid

hadoop - NiFi 或 Streamsets 从 HBase 读取,加入平面文件中的内容并写入 Hive

试图弄清楚是否可以使用apacheNiFi或Streamsets实现连接。这样我就可以定期从HBase读取数据,与其他表连接并将少量字段写入Hive表。或者有没有其他工作流管理器工具支持这个操作? 最佳答案 我不熟悉Streamsets,但我会尽力帮助NiFi。您的平面文件是静态的吗?如果是这样,您是否希望直接替换值?您应该能够使用ReplaceTextWithMapping处理器。如果不是直接替换,您可以预填充DistributedMapCache使用平面文件中的值,然后使用FetchDistributedMapCache对HBa

hadoop - Hive 表列日期格式

我正在尝试创建一个字段类型为date的表。我只存储年份字段。所以我试图将其格式化为YYYY。但是hive没有接受格式命令。我的陈述如下...CREATETABLEIFNOTEXISTSla1(vendorvarchar(20),countryvarchar(25),name1varchar(256),cityvarchar(40),districtvarchar(40),poboxvarchar(40),poboxpostelcodevarchar(20),createdondateformat'YYYY')timestamp字段类型也不起作用关于如何实现这个有什么建议吗?谢谢

hadoop - Hive:如何转换毫秒时间戳?

我正在尝试使用HIVEUDF(https://cwiki.apache.org/confluence/display/Hive/LanguageManual+UDF#LanguageManualUDF-DateFunctions)从Sparklyr中正确读入一些时间戳。不幸的是,我无法正确解析以下时间戳:unix_timestamp('2011-03-01T00:00:04.226Z','yyyy-MM-ddThh:mm:ss.SSS')返回NA..有什么想法吗?这里的正确模式是什么?谢谢! 最佳答案 你需要引用T和Zhive>se

sql - Hive:需要指定分区列,因为目标表已分区

我想知道在Hive中是否可以将未分区的表插入到已已分区的表中。第一张表如下:hive>describeextendeduser_ratings;OKuseridintmovieidintratingintunixtimeintDetailedTableInformationTable(tableName:user_ratings,dbName:ml,owner:cloudera,createTime:1500142667,lastAccessTime:0,retention:0,sd:StorageDescriptor(cols:[FieldSchema(name:userid,typ