使用datax通過HbaseShell封裝writer和reader同步hbase數據到hbase_踩坑_細節總結---大數據之DataX工作筆記008

    最近在做大數據相關功能,有個需求,使用datax同步hbase到hbase中,其中還是有很多細節值得記錄:

首先來看一下datax的源碼中,如果你使用phoenix創建的表,那么

你就需要使用對應的hbase帶有sql字樣的,reader和writer.

然后如果你使用datax-web來進行測試的,那么,他默認使用的是hbase11xreader和對應的writer.

這個時候,是可以讀出,使用hbase shell去創建的表的,同時也可以讀出phoneix創建的表.

關于適用phoenix去操作hbase常用sql:

1.創建表:
CREATE TABLE IF NOT EXISTS "qqqq_tables" ("id" varchar primary key, "source_id" varchar, "table_name" varchar, "table_desc" varchar, "remark" varchar, "create_time" varchar) COLUMN_ENCODED_BYTES=0;CREATE TABLE IF NOT EXISTS "qqqq_tables" ("id" varchar primary key, "source_id" varchar, "table_name" varchar, "table_desc" varchar, "remark" varchar, "create_time" varchar) COLUMN_ENCODED_BYTES=0;2.顯示所有表:
show tables3.查詢表:
select * from "qdbd_table_meta"4.命令行連接
./sqlline.py 172.19.126.120,172.19.126.121,172.19.126.122:21815.刪除表:
drop table "userinfo";6.插入數據:
0: jdbc:phoenix:172.19.126.120,172.19.126.121> upsert into "userinfo" values('4','xiaohuang','xiaohuang@126.com','13256716111','{name:xiaohuang}');
1 row affected (0.14 seconds)7.查詢數據添加條件:對應字段要添加雙引號
0: jdbc:phoenix:172.19.126.120,172.19.126.121> select * from "userinfo" where "id" = '3';
+----+--------------+---------------------+-------------+-----------------+
| id |     name     |        email        |   mobile    |    son_json     |
+----+--------------+---------------------+-------------+-----------------+
| 3  | xiaoxingxing | xxingxingou@126.com | 13256716188 | {name:xingxing} |
+----+--------------+---------------------+-------------+-----------------+8.使用upsert更新表的某個字段
0: jdbc:phoenix:172.19.126.120,172.19.126.121> upsert into "userinfo" ("id","name") values ('4','xiaohuangzine');
1 row affected (0.017 seconds)
0: jdbc:phoenix:172.19.126.120,172.19.126.121> select * from "userinfo";
+----+---------------+---------------------+-------------+------------------+
| id |     name      |        email        |   mobile    |     son_json     |
+----+---------------+---------------------+-------------+------------------+
| 3  | xiaoxingxing  | xxingxingou@126.com | 13256716188 | {name:xingxing}  |
| 4  | xiaohuangzine | xiaohuang@126.com   | 13256716111 | {name:xiaohuang} |
+----+---------------+---------------------+-------------+------------------+
2 rows selected (0.035 seconds)9.update更新某個字段無法使用:0: jdbc:phoenix:172.19.126.120,172.19.126.121> update "userinfo" set "name" = 'xiaohuangzi

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/77287.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/77287.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/77287.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

如何通過window端來ssh連接本地虛擬機的ubuntu

首先在 Ubuntu 虛擬機上安裝和配置 SSH 服務: # 安裝 SSH 服務器 sudo apt update sudo apt install openssh-server# 檢查 SSH 服務狀態 sudo systemctl status ssh# 如果沒有啟動,則啟動 SSH 服務 sudo systemctl start ssh# 設置開機自啟動 sudo sys…

Anolis OS 8.10 發布:軟硬協同優化,滿足多行業實際應用需求

引言 龍蜥操作系統 Anolis OS 8 是 OpenAnolis 龍蜥社區發行的開源 Linux 發行版,支持多計算架構,提供穩定、高性能、安全、可靠的操作系統支持。Anolis OS 8.10 是 Anolis OS 8 發布的第六個小版本,通過軟硬協同,不斷完善生態&a…

Java八種常見的設計模式

一、單例模式 單例模式是(Singleton Pattern)Java中最常用的設計模式之一,它保證一個類僅有一個實例,并提供一個全局訪問點。 實現單例模式的核心是將類的構造方法私有化,以防止外部直接通過構造函數創建實例。同時&am…

4.17---實現商鋪和緩存與數據庫雙寫一致以及宕機處理

實現商鋪和緩存與數據庫雙寫一致(以及強雙寫一致策略) redis點評項目采用的是延時雙刪策略 雙刪: 我們更新完數據庫之后刪除緩存,這樣即使有線程并發進來查詢,會發現緩存中沒有數據,從而會去mysql中查找…

滑動窗口209. 長度最小的子數組

1.題目 給定一個含有 n 個正整數的數組和一個正整數 target 。 找出該數組中滿足其總和大于等于 target 的長度最小的 子數組 [numsl, numsl1, ..., numsr-1, numsr] ,并返回其長度。如果不存在符合條件的子數組,返回 0 。 示例 1: 輸入&…

osu ai 論文筆記 DQN

e https://theses.liacs.nl/pdf/2019-2020-SteeJvander.pdf Creating an AI for the Rhytm Game osu! 20年的論文 用監督學習訓練移動模型100首歌能達到95準確率 點擊模型用DQN兩千首歌65準確率 V抖用的居然不是強化學習? 5,6星打96準確度還是有的東西的 這是5.…

如何通過工具實現流程自動化

通過自動化工具,企業可以顯著提高工作效率、降低人為錯誤、節省時間和成本。現代企業的運營中,流程管理是確保工作順暢的關鍵,而人工處理繁瑣的流程不僅容易出錯,還會消耗大量的時間和人力資源。通過使用適合的自動化工具&#xf…

mongodb 4.0+多文檔事務的實現原理

1. 副本集事務實現(4.0)? ?非嚴格依賴二階段提交? MongoDB 4.0 在副本集環境中通過 ?全局邏輯時鐘(Logical Clock)? 和 ?快照隔離(Snapshot Isolation)? 實現多文檔事務,事務提交時通過…

《理解 Java 泛型中的通配符:extends 與 super 的使用場景》

大家好呀!👋 今天我們要聊一個讓很多Java初學者頭疼的話題——泛型通配符。別擔心,我會用最通俗易懂的方式,帶你徹底搞懂這個看似復雜的概念。準備好了嗎?Let’s go! 🚀 一、為什么我們需要泛型通配符&…

速盾:高防CDN訪問多了會影響源站嗎?

在當今數字化時代,內容分發網絡(CDN)已經成為保障網站性能和用戶體驗的重要工具。特別是高防CDN,它不僅能夠加速內容傳輸,還能有效抵御各種類型的網絡攻擊,確保業務的連續性和穩定性。然而,一些…

Unity URP Moblie AR示例工程,真機打包出來,沒陰影

效果: unity ar示例演示 現象: 真機打包測試私活沒有陰影 Unity版本:2022.3.4f1c1 分析原因: Prefab :ARFeatheredPlane中也有材質,一個用于環境遮擋,一個用于陰影接受。 按理說有啊。 urp …

win10下github libiec61850庫編譯調試sntp_example

libiec61850 https://github.com/mz-automation/libiec61850 v1.6 簡介 libiec61850 是一個開源(GPLv3)的 IEC 61850 客戶端和服務器庫實現,支持 MMS、GOOSE 和 SV 協議。它使用 C 語言(根據 C99 標準)實現&#xf…

Microsoft SQL Server Management 一鍵刪除數據庫所有外鍵

DECLARE ESQL VARCHAR(1000); DECLARE FCursor CURSOR --定義游標 FOR (SELECT ALTER TABLE O.name DROP CONSTRAINT F.name; AS CommandSQL from SYS.FOREIGN_KEYS F JOIN SYS.ALL_OBJECTS O ON F.PARENT_OBJECT_ID O.OBJECT_ID WHERE O.TYPE U AND F.TYPE …

新型多機器人協作運輸系統,輕松應對復雜路面

受到魚類、鳥類和螞蟻等微小生物體協作操縱的啟發,研究人員開發了多機器人協作運輸系統(Multirobot Cooperative Transportation Systems,MRCTS)運輸單個機器人無法處理的重型超大物體,可用于搜救行動、災難響應、軍事…

Framework Binder架構分解

整個 Binder 架構所涉及的總共有以下 5 個目錄: 1. /framework/base/core/java/(Java) 2. /framework/base/core/jni/ (JNI) 3,/framework/native/libs/binder (Native) 4,/framework/native/cmds/servicemanager/ (Native) 5&#xff0c…

騰訊云對象存儲以及項目業務頭像上傳

騰訊云上傳步驟: service-vod模塊化中 ①、參考文檔,引入依賴 ②、配置文件application.properties ③、創建工具類 初始化bean的時候讀取配置文件 Component public class ConstantPropertiesUtil implements InitializingBean{Value("${t…

LeetCode hot 100—括號生成

題目 數字 n 代表生成括號的對數,請你設計一個函數,用于能夠生成所有可能的并且 有效的 括號組合。 示例 示例 1: 輸入:n 3 輸出:["((()))","(()())","(())()","()(())",&…

SpringBoot企業級開發之【文章分類-新增文章分類】

看一下新增文章的需求: 接口文檔: 開發思路: 先在controller下去創建add方法,方法內導入Service類獲取add的結果;再在Service接口下去創建add的方法;然后在Service實現類下去實現方法的作用,且導…

Minecraft盔甲機制詳解(1.9之后)

Minecraft的盔甲有很多種,但是評判盔甲的好壞,通常玩家會使用一個變量來評判——護甲值 護甲值的機制很簡單,一格護甲值 (半個灰色的衣服圖標)最多能提供4%的防御 護甲值在不開作弊的生存模式理論上限是20點&#xf…

為什么要給單片機植入操作系統

給單片機植入操作系統(通常是實時操作系統,RTOS)主要是為了在資源有限的環境中實現更高效、更可靠的多任務管理和系統調度。以下是主要原因和優勢: 1. 多任務并行處理 背景:單片機通常需要同時處理多個任務&#xff0…