国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

基于 HBase & Phoenix 構(gòu)建實(shí)時(shí)數(shù)倉(cāng)(3)—— Phoenix 安裝

這篇具有很好參考價(jià)值的文章主要介紹了基于 HBase & Phoenix 構(gòu)建實(shí)時(shí)數(shù)倉(cāng)(3)—— Phoenix 安裝。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

目錄

一、主機(jī)規(guī)劃

二、Phoenix 安裝

1. 解壓、配置環(huán)境

2. 復(fù)制兩個(gè)文件

3. 重啟 HBase 集群

4. 安裝驗(yàn)證

(1)連接 HBase

(2)視圖映射

(3)表映射

參考:


一、主機(jī)規(guī)劃

? ? ? ? 繼續(xù)上一篇,本篇介紹在同一環(huán)境中安裝 Phoenix,并連接上篇部署的 HBase 集群。

? ? ? ? 所需安裝包:Phoenix-5.1.3
? ? ? ? 下表描述了四個(gè)節(jié)點(diǎn)上分別將會(huì)運(yùn)行的相關(guān)進(jìn)程。Phoenix 相對(duì)于 HBase 來(lái)說(shuō)就是一個(gè)支持 SQL 的客戶端軟件,為能在集群環(huán)境中任何節(jié)點(diǎn)上都能使用 Phoenix 命令行,在所有節(jié)點(diǎn)上都安裝。簡(jiǎn)便起見,安裝部署過(guò)程中所用的命令都使用操作系統(tǒng)的 root 用戶執(zhí)行。

? ? ? ? ? ? ? ? ? ? ? ? ? ? 節(jié)點(diǎn)

進(jìn)程

node1

node2

node3

node4

Phoenix

*

*

*

*

二、Phoenix 安裝

? ? ? ? 在所有節(jié)點(diǎn)上執(zhí)行下面第1、2步操作,在 node1 節(jié)點(diǎn)上執(zhí)行第3步操作。

1. 解壓、配置環(huán)境

# 解壓
tar -zxvf phoenix-hbase-2.5-5.1.3-bin.tar.gz

# 編輯 /etc/profile 文件
vim /etc/profile
?
# 添加下面兩行
export PHOENIX_HOME=/root/phoenix-hbase-2.5-5.1.3-bin/
export PHOENIX_CLASSPATH=$PHOENIX_HOME
export PATH=$PHOENIX_HOME/bin:$PATH
?
# 加載生效
source /etc/profile

2. 復(fù)制兩個(gè)文件

cp $PHOENIX_HOME/phoenix-server-hbase-2.5-5.1.3.jar $HBASE_HOME/lib/
cp $HBASE_HOME/conf/hbase-site.xml $PHOENIX_HOME/bin/

3. 重啟 HBase 集群

stop-hbase.sh
start-hbase.sh

4. 安裝驗(yàn)證

(1)連接 HBase

# 連接,參數(shù)為 Zookeeper 節(jié)點(diǎn)
sqlline.py node1,node2,node3
# 列出表
!table

? ? ? ? 輸出:

[root@vvml-yz-hbase-test~]#sqlline.py node1,node2,node3
Setting property: [incremental, false]
Setting property: [isolation, TRANSACTION_READ_COMMITTED]
issuing: !connect -p driver org.apache.phoenix.jdbc.PhoenixDriver -p user "none" -p password "none" "jdbc:phoenix:node1,node2,node3"
Connecting to jdbc:phoenix:node1,node2,node3
24/03/07 14:44:45 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
24/03/07 14:44:45 WARN impl.MetricsConfig: Cannot locate configuration: tried hadoop-metrics2-phoenix.properties,hadoop-metrics2.properties
Connected to: Phoenix (version 5.1)
Driver: PhoenixEmbeddedDriver (version 5.1)
Autocommit status: true
Transaction isolation: TRANSACTION_READ_COMMITTED
sqlline version 1.9.0
0: jdbc:phoenix:node1,node2,node3> !table
+-----------+-------------+------------+--------------+---------+-----------+---------------------------+----------------+-------------+-+
| TABLE_CAT | TABLE_SCHEM | TABLE_NAME | ?TABLE_TYPE ?| REMARKS | TYPE_NAME | SELF_REFERENCING_COL_NAME | REF_GENERATION | INDEX_STATE | |
+-----------+-------------+------------+--------------+---------+-----------+---------------------------+----------------+-------------+-+
| ? ? ? ? ? | SYSTEM ? ? ?| CATALOG ? ?| SYSTEM TABLE | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
| ? ? ? ? ? | SYSTEM ? ? ?| CHILD_LINK | SYSTEM TABLE | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
| ? ? ? ? ? | SYSTEM ? ? ?| FUNCTION ? | SYSTEM TABLE | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
| ? ? ? ? ? | SYSTEM ? ? ?| LOG ? ? ? ?| SYSTEM TABLE | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
| ? ? ? ? ? | SYSTEM ? ? ?| MUTEX ? ? ?| SYSTEM TABLE | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
| ? ? ? ? ? | SYSTEM ? ? ?| SEQUENCE ? | SYSTEM TABLE | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
| ? ? ? ? ? | SYSTEM ? ? ?| STATS ? ? ?| SYSTEM TABLE | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
| ? ? ? ? ? | SYSTEM ? ? ?| TASK ? ? ? | SYSTEM TABLE | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
+-----------+-------------+------------+--------------+---------+-----------+---------------------------+----------------+-------------+-+
0: jdbc:phoenix:node1,node2,node3>

? ? ? ? 默認(rèn)情況下,直接在 HBase 中創(chuàng)建的表,通過(guò) Phoenix 是查看不到的。如上一篇在 hbase shell 中創(chuàng)建的 test 表,這里沒有顯示。如果要在 Phoenix 中操作直接在 HBase 中創(chuàng)建的表,則需要在 Phoenix 中進(jìn)行表的映射。映射方式有兩種:視圖映射和表映射。

(2)視圖映射

? ? ? ? Phoenix 創(chuàng)建的視圖是只讀的,所以只能用來(lái)做查詢,無(wú)法通過(guò)視圖對(duì)源數(shù)據(jù)進(jìn)行修改等操作。

0: jdbc:phoenix:node1,node2,node3> create view "test"(pk varchar primary key,"cf"."a" varchar,"cf"."b" varchar,"cf"."c" varchar,"cf"."d" varchar,"cf"."e" varchar);
No rows affected (0.178 seconds)
0: jdbc:phoenix:node1,node2,node3> !table
+-----------+-------------+------------+--------------+---------+-----------+---------------------------+----------------+-------------+-+
| TABLE_CAT | TABLE_SCHEM | TABLE_NAME | ?TABLE_TYPE ?| REMARKS | TYPE_NAME | SELF_REFERENCING_COL_NAME | REF_GENERATION | INDEX_STATE | |
+-----------+-------------+------------+--------------+---------+-----------+---------------------------+----------------+-------------+-+
| ? ? ? ? ? | SYSTEM ? ? ?| CATALOG ? ?| SYSTEM TABLE | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
| ? ? ? ? ? | SYSTEM ? ? ?| CHILD_LINK | SYSTEM TABLE | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
| ? ? ? ? ? | SYSTEM ? ? ?| FUNCTION ? | SYSTEM TABLE | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
| ? ? ? ? ? | SYSTEM ? ? ?| LOG ? ? ? ?| SYSTEM TABLE | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
| ? ? ? ? ? | SYSTEM ? ? ?| MUTEX ? ? ?| SYSTEM TABLE | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
| ? ? ? ? ? | SYSTEM ? ? ?| SEQUENCE ? | SYSTEM TABLE | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
| ? ? ? ? ? | SYSTEM ? ? ?| STATS ? ? ?| SYSTEM TABLE | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
| ? ? ? ? ? | SYSTEM ? ? ?| TASK ? ? ? | SYSTEM TABLE | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
| ? ? ? ? ? | ? ? ? ? ? ? | test ? ? ? | VIEW ? ? ? ? | ? ? ? ? | ? ? ? ? ? | ? ? ? ? ? ? ? ? ? ? ? ? ? | ? ? ? ? ? ? ? ?| ? ? ? ? ? ? | |
+-----------+-------------+------------+--------------+---------+-----------+---------------------------+----------------+-------------+-+
0: jdbc:phoenix:node1,node2,node3> select * from "test";
+------+--------+--------+--------+--------+--------+
| ?PK ?| ? a ? ?| ? b ? ?| ? c ? ?| ? d ? ?| ? e ? ?|
+------+--------+--------+--------+--------+--------+
| row1 | value1 | ? ? ? ?| ? ? ? ?| ? ? ? ?| ? ? ? ?|
| row2 | ? ? ? ?| value2 | ? ? ? ?| ? ? ? ?| ? ? ? ?|
| row3 | ? ? ? ?| ? ? ? ?| value3 | ? ? ? ?| ? ? ? ?|
| row4 | ? ? ? ?| ? ? ? ?| ? ? ? ?| value4 | ? ? ? ?|
| row5 | ? ? ? ?| ? ? ? ?| ? ? ? ?| ? ? ? ?| value5 |
+------+--------+--------+--------+--------+--------+
5 rows selected (0.021 seconds)
0: jdbc:phoenix:node1,node2,node3>?

? ? ? ? HBase 嚴(yán)格區(qū)分大小寫,創(chuàng)建視圖時(shí)表名、列族、列名需要用雙引號(hào)括起來(lái)。

(3)表映射

0: jdbc:phoenix:node1,node2,node3> drop view "test";
No rows affected (0.011 seconds)
0: jdbc:phoenix:node1,node2,node3> create table "test"(pk varchar primary key,"cf"."a" varchar,"cf"."b" varchar,"cf"."c" varchar,"cf"."d" varchar,"cf"."e" varchar) column_encoded_bytes=0;
5 rows affected (5.676 seconds)
0: jdbc:phoenix:node1,node2,node3> upsert into "test" values('a','1','2','3','4','5');
1 row affected (0.007 seconds)
0: jdbc:phoenix:node1,node2,node3> select * from "test";
+------+--------+--------+--------+--------+--------+
| ?PK ?| ? a ? ?| ? b ? ?| ? c ? ?| ? d ? ?| ? e ? ?|
+------+--------+--------+--------+--------+--------+
| a ? ?| 1 ? ? ?| 2 ? ? ?| 3 ? ? ?| 4 ? ? ?| 5 ? ? ?|
| row1 | value1 | ? ? ? ?| ? ? ? ?| ? ? ? ?| ? ? ? ?|
| row2 | ? ? ? ?| value2 | ? ? ? ?| ? ? ? ?| ? ? ? ?|
| row3 | ? ? ? ?| ? ? ? ?| value3 | ? ? ? ?| ? ? ? ?|
| row4 | ? ? ? ?| ? ? ? ?| ? ? ? ?| value4 | ? ? ? ?|
| row5 | ? ? ? ?| ? ? ? ?| ? ? ? ?| ? ? ? ?| value5 |
+------+--------+--------+--------+--------+--------+
6 rows selected (0.013 seconds)
0: jdbc:phoenix:node1,node2,node3> !quit
Closing: org.apache.phoenix.jdbc.PhoenixConnection
[root@vvml-yz-hbase-test~]#

? ? ? ? 表映射方式時(shí),數(shù)據(jù)更新是對(duì)源表的操作,刪除表也會(huì)刪除 HBase 中的源表。如果只做查詢,強(qiáng)烈建議使用視圖方式映射,刪除視圖不影響 HBase 源數(shù)據(jù)。Phoenix 4.10 版本后,對(duì)列映射做了優(yōu)化,采用一套新的機(jī)制,不再基于列名方式映射到 HBase。如果必須要表映射,則需要禁用列映射規(guī)則(column_encoded_bytes=0),但這會(huì)降低查詢性能。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-846603.html

參考:

  • Apache Phoenix 映射已存在 HBase 表,查詢不到數(shù)據(jù)
  • https://phoenix.apache.org/installation.html

到了這里,關(guān)于基于 HBase & Phoenix 構(gòu)建實(shí)時(shí)數(shù)倉(cāng)(3)—— Phoenix 安裝的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • spark+phoenix讀取hbase

    正常來(lái)說(shuō)這個(gè)內(nèi)容應(yīng)該網(wǎng)上可參考的文章很多,但是我還是搗鼓了好久,現(xiàn)在記錄下來(lái),給自己個(gè)備忘錄。 phoenix是操作hbase的皮膚,他可以輕松的使用sql語(yǔ)句來(lái)操作hbase,比直接用hbase的原語(yǔ)操作要友好的多。spark直接操作hbase也是通過(guò)hbase的原語(yǔ)操作,操作起來(lái)比較繁瑣,下

    2024年01月22日
    瀏覽(18)
  • zookeeper + hadoop + hbase + phoenix

    IP hostname 192.168.23.130 hadoop01 192.168.23.131 hadoop02 192.168.23.132 hadoop03 jdk-1.8 zookeeper-3.8.1 hadoop-3.2.4 hbase-2.4.15 phoenix-2.4.0-5.1.3 1、關(guān)閉防火墻 2、設(shè)置主機(jī)名 3、配置主機(jī)hosts 4、設(shè)置ssh免密登錄 分發(fā)JDK安裝包到其他節(jié)點(diǎn) 配置JDK環(huán)境變量(所有節(jié)點(diǎn)都需要執(zhí)行) 修改zookeeper配置 添加z

    2024年02月06日
    瀏覽(22)
  • 【項(xiàng)目實(shí)戰(zhàn)】Dbeaver使用Apache Phoenix來(lái)實(shí)現(xiàn)連接Hbase的詳細(xì)指引

    DBeaver是一款開源的數(shù)據(jù)庫(kù)管理工具,可以連接多種類型的數(shù)據(jù)庫(kù),包括Apache Phoenix和Hbase。通過(guò)DBeaver連接Hbase表,可以更方便地進(jìn)行數(shù)據(jù)管理和查詢。 注意:該教程適用于:遠(yuǎn)程連接Linux上的Hadoop集群,因此本步驟是不需要在本地再下載hadoop的環(huán)境,所以,很多內(nèi)容都可以直

    2024年02月05日
    瀏覽(26)
  • 實(shí)時(shí)數(shù)倉(cāng)|基于Flink1.11的SQL構(gòu)建實(shí)時(shí)數(shù)倉(cāng)探索實(shí)踐

    實(shí)時(shí)數(shù)倉(cāng)主要是為了解決傳統(tǒng)數(shù)倉(cāng)數(shù)據(jù)時(shí)效性低的問題,實(shí)時(shí)數(shù)倉(cāng)通常會(huì)用在實(shí)時(shí)的 OLAP 分析、實(shí)時(shí)的數(shù)據(jù)看板、業(yè)務(wù)指標(biāo)實(shí)時(shí)監(jiān)控等場(chǎng)景。雖然關(guān)于實(shí)時(shí)數(shù)倉(cāng)的架構(gòu)及技術(shù)選型與傳統(tǒng)的離線數(shù)倉(cāng)會(huì)存在差異,但是關(guān)于數(shù)倉(cāng)建設(shè)的基本方法論是一致的。本文會(huì)分享基于 Flink

    2024年02月16日
    瀏覽(22)
  • 【Java核心知識(shí)】spring boot整合Mybatis plus + Phoenix 訪問Hbase與使用注意

    為什么Phoenix能讓開發(fā)者通過(guò)SQL訪問Hbase而不必使用原生的方式?引用Phoenix官網(wǎng)上的一句話:SQL is just a way of expressing what you want to get not how you want to get it . 即SQL不是一種數(shù)據(jù)操作技術(shù),而是一種特殊的表達(dá)方式。只是表示你需要什么而不是你如何獲得。 一個(gè)集成了Phoenix的Hb

    2024年02月15日
    瀏覽(23)
  • 【基于HBase和ElasticSearch構(gòu)建大數(shù)據(jù)實(shí)時(shí)檢索項(xiàng)目】

    【基于HBase和ElasticSearch構(gòu)建大數(shù)據(jù)實(shí)時(shí)檢索項(xiàng)目】

    利用HBase存儲(chǔ)海量數(shù)據(jù),解決海量數(shù)據(jù)存儲(chǔ)和實(shí)時(shí)更新查詢的問題; 利用ElasticSearch作為HBase索引,加快大數(shù)據(jù)集中實(shí)時(shí)查詢數(shù)據(jù); 使用到的大數(shù)據(jù)組件有:Hadoop-2.7.3、HBase-1.3.1、zookeeper-3.4.5、ElasticSearch-7.8.0 實(shí)驗(yàn)環(huán)境: 虛擬機(jī)(操作系統(tǒng)CentOS7.6) + 個(gè)人PC(Windows)+ Eclipse或者

    2024年02月14日
    瀏覽(28)
  • GaussDB(DWS)基于Flink的實(shí)時(shí)數(shù)倉(cāng)構(gòu)建

    本文分享自華為云社區(qū)《GaussDB(DWS)基于Flink的實(shí)時(shí)數(shù)倉(cāng)構(gòu)建》,作者:胡辣湯。 大數(shù)據(jù)時(shí)代,廠商對(duì)實(shí)時(shí)數(shù)據(jù)分析的訴求越來(lái)越強(qiáng)烈,數(shù)據(jù)分析時(shí)效從T+1時(shí)效趨向于T+0時(shí)效,為了給客戶提供極速分析查詢能力,華為云數(shù)倉(cāng)GaussDB(DWS)基于流處理框架Flink實(shí)現(xiàn)了實(shí)時(shí)數(shù)倉(cāng)構(gòu)建。在

    2024年04月22日
    瀏覽(37)
  • 基于Flume+Kafka+Hbase+Flink+FineBI的實(shí)時(shí)綜合案例(二)數(shù)據(jù)源

    基于Flume+Kafka+Hbase+Flink+FineBI的實(shí)時(shí)綜合案例(二)數(shù)據(jù)源

    目標(biāo) : 了解數(shù)據(jù)源的格式及實(shí)現(xiàn)模擬數(shù)據(jù)的生成 路徑 step1:數(shù)據(jù)格式 step2:數(shù)據(jù)生成 實(shí)施 數(shù)據(jù)格式 消息時(shí)間 發(fā)件人昵稱 發(fā)件人賬號(hào) 發(fā)件人性別 發(fā)件人IP 發(fā)件人系統(tǒng) 發(fā)件人手機(jī)型號(hào) 發(fā)件人網(wǎng)絡(luò)制式 發(fā)件人GPS 收件人昵稱 收件人IP 收件人賬號(hào) 收件人系統(tǒng) 收件人手機(jī)型號(hào)

    2024年02月04日
    瀏覽(47)
  • 基于Flume+Kafka+Hbase+Flink+FineBI的實(shí)時(shí)綜合案例(五)FineBI可視化

    基于Flume+Kafka+Hbase+Flink+FineBI的實(shí)時(shí)綜合案例(五)FineBI可視化

    目標(biāo) : 實(shí)現(xiàn)FineBI訪問MySQL結(jié)果數(shù)據(jù)集的配置 實(shí)施 安裝FineBI 參考《FineBI Windows版本安裝手冊(cè).docx》安裝FineBI 配置連接 數(shù)據(jù)準(zhǔn)備 小結(jié) 實(shí)現(xiàn)FineBI訪問MySQL結(jié)果數(shù)據(jù)集的配置 目標(biāo) : 實(shí)現(xiàn)FineBI實(shí)時(shí)報(bào)表構(gòu)建 路徑 step1:實(shí)時(shí)報(bào)表構(gòu)建 step2:實(shí)時(shí)報(bào)表配置 step3:實(shí)時(shí)刷新測(cè)試 實(shí)施 實(shí)

    2024年02月04日
    瀏覽(41)
  • 如何基于 Apache Doris 與 Apache Flink 快速構(gòu)建極速易用的實(shí)時(shí)數(shù)倉(cāng)

    如何基于 Apache Doris 與 Apache Flink 快速構(gòu)建極速易用的實(shí)時(shí)數(shù)倉(cāng)

    隨著大數(shù)據(jù)應(yīng)用的不斷深入,企業(yè)不再滿足離線數(shù)據(jù)加工計(jì)算的時(shí)效,實(shí)時(shí)數(shù)據(jù)需求已成為數(shù)據(jù)應(yīng)用新常態(tài)。伴隨著實(shí)時(shí)分析需求的不斷膨脹,傳統(tǒng)的數(shù)據(jù)架構(gòu)面臨的成本高、實(shí)時(shí)性無(wú)法保證、組件繁冗、運(yùn)維難度高等問題日益凸顯。為了適應(yīng)業(yè)務(wù)快速迭代的特點(diǎn),幫助企業(yè)

    2024年02月12日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包