2015-10-25 5 views
15

Was kann ich anstelle von HTable(config,tablename) verwenden?Der Typ HTable (Config, Tabellenname) ist veraltet. Was nützt es stattdessen?

Diese Methode ist veraltet. In jedem Beispiel könnte ich finden, dass sie diesen oder einen anderen Constructor verwenden, der ebenfalls veraltet ist.

+1

Meinten Sie HTable (config, name) ist veraltet, nicht wahr? – Vinkal

+0

OH !!! ja ich meinte HTable (config, tablename) .. ich werde es bearbeiten! – dino

+0

Bitte sehen Sie meine Antwort. – Vinkal

Antwort

18

Constructing HTable Objekte manuell wurde veraltet. Bitte verwenden Sie Connection, um stattdessen einen Table zu instanziieren.

Aus Verbindung, Tisch Implementierungen abgerufen mit Connection.getTable(TableName)

Beispiel:

Connection connection = ConnectionFactory.createConnection(config); 

Table table = connection.getTable(TableName.valueOf("table1")); 

try 
{ 
    // Use the table as needed, for a single operation and a single thread 
} 
finally 
{ 
    table.close(); 
    connection.close(); 
} 
+1

Wenn diese Tabelle in einem Pig verwendet wird, in dem ein Tuple an die Eval-Funktion des UDF übergeben wird, muss ich für jedes Tupel eine Verbindung erstellen und schließen, was sich wirklich auf die Performance auswirkt. – UserszrKs

+0

Sie können mehrere Operationen auf dem Tisch vor dem Schließen. Gleiches gilt für die Verbindung. – GoalBased