einhep 发表于 2017-9-5 15:17 恩。这个100跟10到问题不大。我刚才用java构造了一个数据 写入 ,没有问题。 for (int i = 0; i < 10; i++) { Put put = new Put("001".getBytes()); put.add("cf1".getBytes(), "colum1".getBytes(), "value1".getBytes()); HTable table = new HTable(configuration, tablename); table.put(put);} 这样插入是没有问题的。put 一条一条来。 |
remarkzhao 发表于 2017-9-5 13:53 列簇的,不过应该不需要转换二进制,直接字符串即可,另外setMaxVersions这个100个,也有点多啊。可以设置为10 tableDesc.addFamily(new HColumnDescriptor(family.getBytes()).setMaxVersions(100)) |
yuwenge 发表于 2017-9-5 13:19 http://blog.csdn.net/lifuxiangcaohui/article/details/39997205 这个就是列族啊。 不过你给了我一个提醒。。版本是对什么而言,对列还是列族? |
remarkzhao 发表于 2017-9-5 08:37 def createHTable(tablename: String,family: String,jobConf: JobConf): Unit={ val conn = ConnectionFactory.createConnection(jobConf) try { val admin = conn.getAdmin val tableName = TableName.valueOf(tablename) if (!admin.tableExists(tableName)) { print("Table Not Exists! Create Table") val tableDesc = new HTableDescriptor(tableName) val hColumnDescriptor = new HColumnDescriptor(family.getBytes()) hColumnDescriptor.setMaxVersions(100) tableDesc.addFamily(hColumnDescriptor) admin.createTable(tableDesc) print("New Table Created Successfully!") } else { print("Table Exists! Drop the Table and Create!") val tableDesc = new HTableDescriptor(tableName) admin.disableTable(tableName) admin.deleteTable(tableName) tableDesc.addFamily(new HColumnDescriptor(family.getBytes()).setMaxVersions(100)) admin.createTable(tableDesc) print("New Table Created!") } }finally { conn.close() } } family.getBytes()).setMaxVersions(100) 这个应该是列 |
yuwenge 发表于 2017-9-4 22:35 多谢了。昨儿睡的早。。还有大神有自己的看法嘛?? |
今天有点晚了,明天再帮你看下。 |
懊恼ing |
yuwenge 发表于 2017-9-4 18:14 忘了说了 我hbase版本是1.1.11 hadoop是2.6.1 |
def createHTable(tablename: String,family: String,jobConf: JobConf): Unit={ val conn = ConnectionFactory.createConnection(jobConf) try { val admin = conn.getAdmin val tableName = TableName.valueOf(tablename) if (!admin.tableExists(tableName)) { print("Table Not Exists! Create Table") val tableDesc = new HTableDescriptor(tableName) val hColumnDescriptor = new HColumnDescriptor(family.getBytes()) hColumnDescriptor.setMaxVersions(100) tableDesc.addFamily(hColumnDescriptor) admin.createTable(tableDesc) print("New Table Created Successfully!") } else { print("Table Exists! Drop the Table and Create!") val tableDesc = new HTableDescriptor(tableName) admin.disableTable(tableName) admin.deleteTable(tableName) tableDesc.addFamily(new HColumnDescriptor(family.getBytes()).setMaxVersions(100)) admin.createTable(tableDesc) print("New Table Created!") } }finally { conn.close() } } 这个是建表。 |