2013-05-19 4 views
1

Я новичок в HBase, что лучший способ получить результаты из таблицы по строкам? Я хотел бы прочитать все данные в таблице. Моя таблица имеет два семейства столбцов: col1 и col2.Чтение данных из HBase

+0

Там должны быть средства, которые позволят вам управлять своей базой данных, чтобы сделать это. Что вы пробовали? –

+0

В любом случае вы будете получать данные по строкам ..... Сколько строк и какие столбцы зависят от вашего запроса. – Thihara

+0

Я использовал сканирование! Но я хотел бы расширить это, поскольку другая карта сокращает работу. (У меня есть работа по сокращению карты, которая будет считываться из файла и вставлять данные в HBase). На этапе Map (next) я хотел бы читать строки за строкой и обрабатывать данные. Любой образец кода будет очень полезен –

ответ

0

От Hbase оболочки, вы можете использовать сканирования команду в список данных в таблице, или получить, чтобы получить запись. Ссылочная here

0

Я думаю, вот что вам нужно: как через оболочку HBase и Java API: http://cook.coredump.me/post/19672191046/hbase-client-example

Однако вы должны понимать Hbase оболочку «сканировать» очень медленно (не кэшируется). Но он предназначен только для целей отладки.

Еще одна полезная информация для вас: http://hbase.apache.org/book/perf.reading.html Эта глава права на чтение из HBase, но ее несколько сложнее понять, поскольку она предполагает некоторый уровень знакомости и содержит более продвинутые советы. Я бы посоветовал вам этот гид, начиная с самого начала.

0

Я искал что-то вроде этого! Файл

функция Карта

public void map(ImmutableBytesWritable row, Result value, Context context) throws InterruptedException, IOException { 

      String x1 = new String(value.getValue(Bytes.toBytes("ColumnFamily"), Bytes.toBytes("X1"))); 
      String x2 = new String(value.getValue(Bytes.toBytes("ColumnFamily"), Bytes.toBytes("X2"))); 


} 

Driver:

Configuration config2 = new Configuration(); 
      Job job2 = new Job(config1, "kmeans2"); 
      //Configuration for job2 

      job2.setJarByClass(Converge.class); 
      job2.setMapperClass(Converge.Map.class); 
      job2.setReducerClass(Converge.Reduce.class); 
      job2.setInputFormatClass(TableInputFormat.class); 
      job2.setOutputFormatClass(NullOutputFormat.class); 
      job2.setOutputKeyClass(Text.class); 
      job2.setOutputValueClass(Text.class); 
      job2.getConfiguration().set(TableInputFormat.INPUT_TABLE, "tablename");     
Смежные вопросы