please remove me from this mail list

On Fri, Oct 23, 2015 at 12:59 PM, Apache Wiki <wikidi...@apache.org> wrote:

> Dear Wiki user,
>
> You have subscribed to a wiki page or wiki category on "Hadoop Wiki" for
> change notification.
>
> The "Hbase/Plan-0.2/APIChanges" page has been changed by Misty:
>
> https://wiki.apache.org/hadoop/Hbase/Plan-0.2/APIChanges?action=diff&rev1=5&rev2=6
>
> - = Changes to HBaseAdmin and HTable between HBase 0.1.3 and 0.2 =
> + The HBase Wiki is in the process of being decommissioned. The info that
> used to be on this page has moved to
> http://hbase.apache.org/book.html#hbase.versioning. Please update your
> bookmarks.
>
> - == General Changes ==
> -
> - The APIs for both `HBaseAdmin` and `HTable` have significantly changed
> between versions 0.1.3 and 0.2.x.  0.2.x is NOT backward-compatible.  The
> following document summarizes the key differences that are most important
> for developers wishing to use these classes.  For more information, see the
> full API documentations for [[
> http://hadoop.apache.org/hbase/docs/current/api/index.html|0.1.3]] and
> [0.2].
> -
> - A general difference in both `HBaseAdmin` and `HTable` is a transition
> away from using Hadoop's `Text` class (package `org.apache.hadoop.io`)
> and toward using `byte[]` as a replacement.  All methods from 0.1.3 that
> returned either `Text` or `Text[]` now return either `byte[]` or `byte[][]`
> or the fatter `RowResult`.  HBase 0.2 has not completely abandoned the use
> of `Text`.  All methods that once accepted parameters of type `Text` are
> now overloaded to support `Text`, `String`, or `byte[]` as parameters.  The
> following API changes from `HBaseAdmin` demonstrate this overloading:
> -
> - ''0.1.3:''
> - <<BR>> {{{public void addColumn(Text, HColumnDescriptor);}}}
> - <<BR>> {{{public void deleteColumn(Text, Text);}}}
> -
> - ''0.2:''
> - <<BR>> {{{public void addColumn(Text, HColumnDescriptor);}}}
> - <<BR>> {{{public void addColumn(String, HColumnDescriptor);}}}
> - <<BR>> {{{public void addColumn(byte[], HColumnDescriptor);}}}
> - <<BR>> {{{public void deleteColumn(Text, Text);}}}
> - <<BR>> {{{public void deleteColumn(String, String);}}}
> - <<BR>> {{{public void deleteColumn(byte[], byte[]);}}}
> -
> - == HBaseAdmin ==
> -
> - Aside from the method overloading described above, `HBaseAdmin` has not
> significantly changed.  HBase 0.2 adds the following new methods to
> `HBaseAdmin`:
> -
> - ''0.2:''
> - <<BR>> {{{public boolean isTableEnabled(Text);}}}
> - <<BR>> {{{public boolean isTableEnabled(String);}}}
> - <<BR>> {{{public boolean isTableEnabled(byte[]);}}}
> - <<BR>> {{{public void modifyTableMeta(byte[] HTableDescriptor);}}}
> -
> - The only method in `HBaseAdmin` from 0.1.3 that no longer exists in
> HBase 0.2 is `checkReservedTableName(Text)`.  These changes aside, the API
> and functional capability of `HBaseAdmin` has not drastically changed
> between versions 0.1.3 and 0.2.
> -
> - == HTable ==
> -
> - `HTable` has experienced far more significant changes to its API and
> functional capability.  The biggest change is the way in which row updates
> are performed.  In HBase 0.1.3, `HTable` had its own support for atomic row
> insertions and changes.  The following methods existed in `HTable` and
> aided the row updating process:
> -
> - ''0.1.3:''
> - <<BR>> {{{public synchronized long startUpdate(Text);}}}
> - <<BR>> {{{public void put(long, Text, byte[]);}}}
> - <<BR>> {{{public void put(long, Text, Writable);}}}
> - <<BR>> {{{public void delete(long, Text);}}}
> - <<BR>> {{{public synchronized void checkUpdateInProgress();}}}
> - <<BR>> {{{public synchronized void abort(long);}}}
> - <<BR>> {{{public synchronized void commit(long, long);}}}
> - <<BR>> {{{public void commit(long);}}}
> -
> - `startUpdate(Text)` was used to start an atomic row update on the passed
> row name, and a "lock id" (`long`) was returned to identify the update.
> `put(...)` and `delete(...)` could be called using the lock id, and any
> changes made with that lock id could be aborted or committed.
> -
> - HBase 0.2 has completely changed the way in which atomic row updates
> take place.  To update a row, the user first creates a `BatchUpdate`
> object.  `put(...)` and `delete(...)` operations are applied to the
> `BatchUpdate`, not the `HTable`.  Once finished, the user commits the
> `BatchUpdate` with one of the following new `HTable` methods:
> -
> - ''0.2:''
> - <<BR>> {{{public synchronized void commit(BatchUpdate);}}}
> - <<BR>> {{{public synchronized void commit(List<BatchUpdate>);}}}
> -
> - Aside from the transition from Text toward `byte[]` and the addition of
> the `BatchUpdate` structure, `HTable` has experienced a number of other API
> changes:
> -
> -  *  In 0.1.3, package-private `getRegionLocation(...)` took parameters
> of either `(Text)` or `(Text, boolean)`.  In 0.2, `getRegionLocation(...)`
> has become public and only accepts parameters of either `(Text)`,
> `(String)`, or `(byte[])`; the boolean "reload" option no longer exists.
> -  * In 0.1.3, the `HTable` constructor took parameters of either
> `(HBaseConfiguration, Text)`.  In 0.2, the `HBaseConfiguration` parameter
> has become optional and as such there are now 6 different constructors
> (with or without the `HBaseConfiguration` parameter, and with the `Text`
> parameter varying as either `Text`, `String`, or `byte[]`).
> -  * `public HTableDescriptor getMetadata()` has been replaced in 0.2 by
> `public HTableDescriptor getTableDescriptor()`;  `getMetadata()` still
> exists in 0.2, although it is marked as deprecated.  Additionally, both
> `getTableDescriptor()` and `getMetadata()` now return
> `UnmodifyableHTableDescriptor` (new to 0.2, package
> `org.apache.hadoop.hbase.client`, a subclass of `HTableDescriptor`),
> although the return type of both methods is still `HTableDescriptor`.
> -  * In 0.1.3, all `get(...)` methods had a return type of `byte[]`.  In
> 0.2, these methods now return a `Cell` (new to 0.2, package `
> org.apache.hadoop.hbase.io`).
> -  * In 0.1.3, all `getRow(...)` methods had a return type of
> `SortedMap<Text, byte[]>`.  In 0.2, these methods now return a `RowResult`
> (new to 0.2, package `org.apache.hadoop.hbase.io`).
> -  * The methods `obtainScanner(...)` from 0.1.3 have been renamed
> `getScanner(...)` in 0.2.  Moreover, `getScanner(...)`  has a return type
> of `Scanner` (new to 0.2, package `org.apache.hadoop.hbase.client`),
> whereas `obtainScanner(...)` had a return type of `HScannerInterface` (a
> class that no longer exists in 0.2).
> -  * In 0.1.3, `deteleFamily(...)` took parameters of either `(Text, Text,
> long)` or `(Text, Text)`.  In 0.2, `deleteFamily(...)` only accepts
> parameters of either `(Text, Text, long)`, `(String, String, long)`, or
> `(byte[], byte[], long)`; the long "timestamp" must be included as a
> parameter.
> -  * The `HTable` subclass `ServerCallable<T>` from 0.1.3 has been moved
> to its own separate class in 0.2, located in package
> `org.apache.hadoop.hbase.client`.
> -  * The method `getRegionServerWithRetries(ServerCallable<T>)` from 0.1.3
> has been moved to the `HConnection` interface in 0.2.
> -
> - Finally, the following methods have been added to `HTable` in HBase 0.2:
> -
> - ''0.2:''
> - <<BR>> {{{public static boolean isTableEnabled(Text);}}}
> - <<BR>> {{{public static boolean isTableEnabled(String);}}}
> - <<BR>> {{{public static boolean isTableEnabled(byte[]);}}}
> - <<BR>> {{{public static boolean isTableEnabled(HBaseConfiguration,
> Text);}}}
> - <<BR>> {{{public static boolean isTableEnabled(HBaseConfiguration,
> String);}}}
> - <<BR>> {{{public static boolean isTableEnabled(HBaseConfiguration,
> byte[]);}}}
> -
> - Once again, for greater detail on API changes to `HBaseAdmin`, `HTable`,
> and all classes new to HBase 0.2, please refer to the [HBase 0.2 API].
> -
>



-- 
*Regards,*
*Sanju Reddy*
*+91 8977977443*

Reply via email to