2020-12-03
大數(shù)據(jù)培訓(xùn)
好程序員大數(shù)據(jù)培訓(xùn)分享大數(shù)據(jù)六大核心技術(shù),目前,大數(shù)據(jù)領(lǐng)域每年都會(huì)涌現(xiàn)出大量新的技術(shù),成為大數(shù)據(jù)獲取、存儲(chǔ)、處理分析或可視化的有效手段。大數(shù)據(jù)技術(shù)能夠?qū)⒋笠?guī)模數(shù)據(jù)中隱藏的信息和知識(shí)挖掘出來(lái),為人類社會(huì)經(jīng)濟(jì)活動(dòng)提供依據(jù),提高各個(gè)領(lǐng)域的運(yùn)行效率,甚至整個(gè)社會(huì)經(jīng)濟(jì)的集約化程度。
1、大數(shù)據(jù)生命周期
底層是基礎(chǔ)設(shè)施,涵蓋計(jì)算資源、內(nèi)存與存儲(chǔ)和網(wǎng)絡(luò)互聯(lián),具體表現(xiàn)為計(jì)算節(jié)點(diǎn)、集群、機(jī)柜和數(shù)據(jù)中心。在此之上是數(shù)據(jù)存儲(chǔ)和管理,包括文件系統(tǒng)、數(shù)據(jù)庫(kù)和類似YARN的資源管理系統(tǒng)。然后是計(jì)算處理層,如hadoop、MapReduce和Spark,以及在此之上的各種不同計(jì)算范式,如批處理、流處理和圖計(jì)算等,包括衍生出編程模型的計(jì)算模型,如BSP、GAS 等。數(shù)據(jù)分析和可視化基于計(jì)算處理層。分析包括簡(jiǎn)單的查詢分析、流分析以及更復(fù)雜的分析(如機(jī)器學(xué)習(xí)、圖計(jì)算等)。查詢分析多基于表結(jié)構(gòu)和關(guān)系函數(shù),流分析基于數(shù)據(jù)、事件流以及簡(jiǎn)單的統(tǒng)計(jì)分析,而復(fù)雜分析則基于更復(fù)雜的數(shù)據(jù)結(jié)構(gòu)與方法,如圖、矩陣、迭代計(jì)算和線性代數(shù)。一般意義的可視化是對(duì)分析結(jié)果的展示。但是通過(guò)交互式可視化,還可以探索性地提問(wèn),使分析獲得新的線索,形成迭代的分析和可視化。基于大規(guī)模數(shù)據(jù)的實(shí)時(shí)交互可視化分析以及在這個(gè)過(guò)程中引入自動(dòng)化的因素是目前研究的熱點(diǎn)。
有2個(gè)領(lǐng)域垂直打通了上述的各層,需要整體、協(xié)同地看待。一是編程和管理工具,方向是機(jī)器通過(guò)學(xué)習(xí)實(shí)現(xiàn)自動(dòng)最優(yōu)化、盡量無(wú)需編程、無(wú)需復(fù)雜的配置。另一個(gè)領(lǐng)域是數(shù)據(jù)安全,也是貫穿整個(gè)技術(shù)棧。除了這兩個(gè)領(lǐng)域垂直打通各層,還有一些技術(shù)方向是跨了多層的,例如“內(nèi)存計(jì)算”事實(shí)上覆蓋了整個(gè)技術(shù)棧。
2、大數(shù)據(jù)技術(shù)生態(tài)
大數(shù)據(jù)的基本處理流程與傳統(tǒng)數(shù)據(jù)處理流程并無(wú)太大差異,主要區(qū)別在于:由于大數(shù)據(jù)要處理大量、非結(jié)構(gòu)化的數(shù)據(jù),所以在各處理環(huán)節(jié)中都可以采用并行處理。目前,Hadoop、MapReduce和Spark等分布式處理方式已經(jīng)成為大數(shù)據(jù)處理各環(huán)節(jié)的通用處理方法。
Hadoop是一個(gè)能夠讓用戶輕松架構(gòu)和使用的分布式計(jì)算平臺(tái)。用戶可以輕松地在Hadoop上開(kāi)發(fā)和運(yùn)行處理海量數(shù)據(jù)的應(yīng)用程序。Hadoop 是一個(gè)數(shù)據(jù)管理系統(tǒng),作為數(shù)據(jù)分析的核心,匯集了結(jié)構(gòu)化和非結(jié)構(gòu)化的數(shù)據(jù),這些數(shù)據(jù)分布在傳統(tǒng)的企業(yè)數(shù)據(jù)棧的每一層。Hadoop也是一個(gè)大規(guī)模并行處理框架,擁有超級(jí)計(jì)算能力,定位于推動(dòng)企業(yè)級(jí)應(yīng)用的執(zhí)行。Hadoop又是一個(gè)開(kāi)源社區(qū),主要為解決大數(shù)據(jù)的問(wèn)題提供工具和軟件。雖然Hadoop提供了很多功能,但仍然應(yīng)該把它歸類為多個(gè)組件組成的Hadoop生態(tài)圈,這些組件包括數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)集成、數(shù)據(jù)處理和其他進(jìn)行數(shù)據(jù)分析的專門工具。
低成本、高可靠、高擴(kuò)展、高有效、高容錯(cuò)等特性讓Hadoop成為最流行的大數(shù)據(jù)分析系統(tǒng),然而其賴以生存的HDFS 和MapReduce 組件卻讓其一度陷入困境——批處理的工作方式讓其只適用于離線數(shù)據(jù)處理,在要求實(shí)時(shí)性的場(chǎng)景下毫無(wú)用武之地。因此,各種基于Hadoop的工具應(yīng)運(yùn)而生。為了減少管理成本,提升資源的利用率,有當(dāng)下眾多的資源統(tǒng)一管理調(diào)度系統(tǒng),例如Twitter 的Apache Mesos、Apache 的YARN、Google 的Borg、騰訊搜搜的Torca、Facebook Corona(開(kāi)源)等。Apache Mesos是Apache孵化器中的一個(gè)開(kāi)源項(xiàng)目,使用ZooKeeper實(shí)現(xiàn)容錯(cuò)復(fù)制,使用Linux Containers 來(lái)隔離任務(wù),支持多種資源計(jì)劃分配(內(nèi)存和CPU)。提供高效、跨分布式應(yīng)用程序和框架的資源隔離和共享,支持Hadoop、MPI、Hypertable、Spark 等。YARN 又被稱為MapReduce 2.0,借鑒Mesos,YARN 提出了資源隔離解決方案Container,提供Java 虛擬機(jī)內(nèi)存的隔離。對(duì)比MapReduce 1.0,開(kāi)發(fā)人員使用ResourceManager、ApplicationMaster與NodeManager代替了原框架中核心的JobTracker 和TaskTracker。在YARN平臺(tái)上可以運(yùn)行多個(gè)計(jì)算框架,如MR、Tez、Storm、Spark等。
基于業(yè)務(wù)對(duì)實(shí)時(shí)的需求,有支持在線處理的Storm、Cloudar Impala、支持迭代計(jì)算的Spark 及流處理框架S4。Storm是一個(gè)分布式的、容錯(cuò)的實(shí)時(shí)計(jì)算系統(tǒng),由BackType開(kāi)發(fā),后被Twitter捕獲。Storm屬于流處理平臺(tái),多用于實(shí)時(shí)計(jì)算并更新數(shù)據(jù)庫(kù)。Storm也可被用于“連續(xù)計(jì)算”(Continuous Computation),對(duì)數(shù)據(jù)流做連續(xù)查詢,在計(jì)算時(shí)就將結(jié)果以流的形式輸出給用戶。它還可被用于“分布式RPC”,以并行的方式運(yùn)行昂貴的運(yùn)算。Cloudera Impala是由Cloudera開(kāi)發(fā),一個(gè)開(kāi)源的Massively Parallel Processing(MPP)查詢引擎。與Hive 相同的元數(shù)據(jù)、SQL語(yǔ)法、ODBC 驅(qū)動(dòng)程序和用戶接口(HueBeeswax),可以直接在HDFS 或HBase 上提供快速、交互式SQL 查詢。Impala是在Dremel的啟發(fā)下開(kāi)發(fā)的,不再使用緩慢的Hive+MapReduce 批處理,而是通過(guò)與商用并行關(guān)系數(shù)據(jù)庫(kù)中類似的分布式查詢引擎(由Query Planner、Query Coordinator 和Query Exec Engine這3部分組成),可以直接從HDFS 或者HBase 中用SELECT、JOIN 和統(tǒng)計(jì)函數(shù)查詢數(shù)據(jù),從而大大降低了延遲。
Hadoop社區(qū)正努力擴(kuò)展現(xiàn)有的計(jì)算模式框架和平臺(tái),以便解決現(xiàn)有版本在計(jì)算性能、計(jì)算模式、系統(tǒng)構(gòu)架和處理能力上的諸多不足,這正是Hadoop2.0 版本“ YARN”的努力目標(biāo)。各種計(jì)算模式還可以與內(nèi)存計(jì)算模式混合,實(shí)現(xiàn)高實(shí)時(shí)性的大數(shù)據(jù)查詢和計(jì)算分析。混合計(jì)算模式之集大成者當(dāng)屬UC Berkeley AMP Lab 開(kāi)發(fā)的Spark生態(tài)系統(tǒng),如圖3所示。Spark 是開(kāi)源的類Hadoop MapReduce的通用的數(shù)據(jù)分析集群計(jì)算框架,用于構(gòu)建大規(guī)模、低延時(shí)的數(shù)據(jù)分析應(yīng)用,建立于HDFS之上。Spark提供強(qiáng)大的內(nèi)存計(jì)算引擎,幾乎涵蓋了所有典型的大數(shù)據(jù)計(jì)算模式,包括迭代計(jì)算、批處理計(jì)算、內(nèi)存計(jì)算、流式計(jì)算(Spark Streaming)、數(shù)據(jù)查詢分析計(jì)算(Shark)以及圖計(jì)算(GraphX)。Spark 使用Scala 作為應(yīng)用框架,采用基于內(nèi)存的分布式數(shù)據(jù)集,優(yōu)化了迭代式的工作負(fù)載以及交互式查詢。與Hadoop 不同的是,Spark 和Scala 緊密集成,Scala 像管理本地collective 對(duì)象那樣管理分布式數(shù)據(jù)集。Spark支持分布式數(shù)據(jù)集上的迭代式任務(wù),實(shí)際上可以在Hadoop文件系統(tǒng)上與Hadoop一起運(yùn)行(通過(guò)YARN、Mesos等實(shí)現(xiàn))。另外,基于性能、兼容性、數(shù)據(jù)類型的研究,還有Shark、Phoenix、Apache Accumulo、Apache Drill、Apache Giraph、Apache Hama、Apache Tez、Apache Ambari 等其他開(kāi)源解決方案。預(yù)計(jì)未來(lái)相當(dāng)長(zhǎng)一段時(shí)間內(nèi),主流的Hadoop平臺(tái)改進(jìn)后將與各種新的計(jì)算模式和系統(tǒng)共存,并相互融合,形成新一代的大數(shù)據(jù)處理系統(tǒng)和平臺(tái)。
3、大數(shù)據(jù)采集與預(yù)處理
在大數(shù)據(jù)的生命周期中,數(shù)據(jù)采集處于diyi個(gè)環(huán)節(jié)。根據(jù)MapReduce產(chǎn)生數(shù)據(jù)的應(yīng)用系統(tǒng)分類,大數(shù)據(jù)的采集主要有4種來(lái)源:管理信息系統(tǒng)、Web信息系統(tǒng)、物理信息系統(tǒng)、科學(xué)實(shí)驗(yàn)系統(tǒng)。對(duì)于不同的數(shù)據(jù)集,可能存在不同的結(jié)構(gòu)和模式,如文件、XML 樹(shù)、關(guān)系表等,表現(xiàn)為數(shù)據(jù)的異構(gòu)性。對(duì)多個(gè)異構(gòu)的數(shù)據(jù)集,需要做進(jìn)一步集成處理或整合處理,將來(lái)自不同數(shù)據(jù)集的數(shù)據(jù)收集、整理、清洗、轉(zhuǎn)換后,生成到一個(gè)新的數(shù)據(jù)集,為后續(xù)查詢和分析處理提供統(tǒng)一的數(shù)據(jù)視圖。針對(duì)管理信息系統(tǒng)中異構(gòu)數(shù)據(jù)庫(kù)集成技術(shù)、Web 信息系統(tǒng)中的實(shí)體識(shí)別技術(shù)和DeepWeb集成技術(shù)、傳感器網(wǎng)絡(luò)數(shù)據(jù)融合技術(shù)已經(jīng)有很多研究工作,取得了較大的進(jìn)展,已經(jīng)推出了多種數(shù)據(jù)清洗和質(zhì)量控制工具,例如,美國(guó)SAS公司的Data Flux、美國(guó)IBM 公司的Data Stage、美國(guó)Informatica 公司的Informatica Power Center。
4、大數(shù)據(jù)存儲(chǔ)與管理
傳統(tǒng)的數(shù)據(jù)存儲(chǔ)和管理以結(jié)構(gòu)化數(shù)據(jù)為主,因此關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)(RDBMS)可以一統(tǒng)天下滿足各類應(yīng)用需求。大數(shù)據(jù)往往是半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)為主,結(jié)構(gòu)化數(shù)據(jù)為輔,而且各種大數(shù)據(jù)應(yīng)用通常是對(duì)不同類型的數(shù)據(jù)內(nèi)容檢索、交叉比對(duì)、深度挖掘與綜合分析。面對(duì)這類應(yīng)用需求,傳統(tǒng)數(shù)據(jù)庫(kù)無(wú)論在技術(shù)上還是功能上都難以為繼。因此,近幾年出現(xiàn)了oldSQL、NoSQL 與NewSQL 并存的局面。總體上,按數(shù)據(jù)類型的不同,大數(shù)據(jù)的存儲(chǔ)和管理采用不同的技術(shù)路線,大致可以分為3類。第1類主要面對(duì)的是大規(guī)模的結(jié)構(gòu)化數(shù)據(jù)。針對(duì)這類大數(shù)據(jù),通常采用新型數(shù)據(jù)庫(kù)集群。它們通過(guò)列存儲(chǔ)或行列混合存儲(chǔ)以及粗粒度索引等技術(shù),結(jié)合MPP(Massive Parallel Processing)架構(gòu)高效的分布式計(jì)算模式,實(shí)現(xiàn)對(duì)PB 量級(jí)數(shù)據(jù)的存儲(chǔ)和管理。這類集群具有高性能和高擴(kuò)展性特點(diǎn),在企業(yè)分析類應(yīng)用領(lǐng)域已獲得廣泛應(yīng)用;第2類主要面對(duì)的是半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)。應(yīng)對(duì)這類應(yīng)用場(chǎng)景,基于Hadoop開(kāi)源體系的系統(tǒng)平臺(tái)更為擅長(zhǎng)。它們通過(guò)對(duì)Hadoop生態(tài)體系的技術(shù)擴(kuò)展和封裝,實(shí)現(xiàn)對(duì)半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)的存儲(chǔ)和管理;第3類面對(duì)的是結(jié)構(gòu)化和非結(jié)構(gòu)化混合的大數(shù)據(jù),因此采用MPP 并行數(shù)據(jù)庫(kù)集群與Hadoop 集群的混合來(lái)實(shí)現(xiàn)對(duì)百PB 量級(jí)、EB量級(jí)數(shù)據(jù)的存儲(chǔ)和管理。一方面,用MPP 來(lái)管理計(jì)算高質(zhì)量的結(jié)構(gòu)化數(shù)據(jù),提供強(qiáng)大的SQL和OLTP型服務(wù);另一方面,用Hadoop實(shí)現(xiàn)對(duì)半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)的處理,以支持諸如內(nèi)容檢索、深度挖掘與綜合分析等新型應(yīng)用。這類混合模式將是大數(shù)據(jù)存儲(chǔ)和管理未來(lái)發(fā)展的趨勢(shì)。
5、大數(shù)據(jù)計(jì)算模式與系統(tǒng)
計(jì)算模式的出現(xiàn)有力推動(dòng)了大數(shù)據(jù)技術(shù)和應(yīng)用的發(fā)展,使其成為目前大數(shù)據(jù)處理最為成功、最廣為接受使用的主流大數(shù)據(jù)計(jì)算模式。然而,現(xiàn)實(shí)世界中的大數(shù)據(jù)處理問(wèn)題復(fù)雜多樣,難以有一種單一的計(jì)算模式能涵蓋所有不同的大數(shù)據(jù)計(jì)算需求。研究和實(shí)際應(yīng)用中發(fā)現(xiàn),由于MapReduce主要適合于進(jìn)行大數(shù)據(jù)線下批處理,在面向低延遲和具有復(fù)雜數(shù)據(jù)關(guān)系和復(fù)雜計(jì)算的大數(shù)據(jù)問(wèn)題時(shí)有很大的不適應(yīng)性。因此,近幾年來(lái)學(xué)術(shù)界和業(yè)界在不斷研究并推出多種不同的大數(shù)據(jù)計(jì)算模式。
所謂大數(shù)據(jù)計(jì)算模式,即根據(jù)大數(shù)據(jù)的不同數(shù)據(jù)特征和計(jì)算特征,從多樣性的大數(shù)據(jù)計(jì)算問(wèn)題和需求中提煉并建立的各種高層抽象(abstraction)或模型(model)。例如,MapReduce 是一個(gè)并行計(jì)算抽象,加州大學(xué)伯克利分校著名的Spark系統(tǒng)中的“分布內(nèi)存抽象RDD”,CMU 著名的圖計(jì)算系統(tǒng)GraphLab 中的“圖并行抽象”(Graph Parallel Abstraction)等。傳統(tǒng)的并行計(jì)算方法,主要從體系結(jié)構(gòu)和編程語(yǔ)言的層面定義了一些較為底層的并行計(jì)算抽象和模型,但由于大數(shù)據(jù)處理問(wèn)題具有很多高層的數(shù)據(jù)特征和計(jì)算特征,因此大數(shù)據(jù)處理需要更多地結(jié)合這些高層特征考慮更為高層的計(jì)算模式。
根據(jù)大數(shù)據(jù)處理多樣性的需求和以上不同的特征維度,目前出現(xiàn)了多種典型和重要的大數(shù)據(jù)計(jì)算模式。與這些計(jì)算模式相適應(yīng),出現(xiàn)了很多對(duì)應(yīng)的大數(shù)據(jù)計(jì)算系統(tǒng)和工具。由于單純描述計(jì)算模式比較抽象和空洞,因此在描述不同計(jì)算模式時(shí),將同時(shí)給出相應(yīng)的典型計(jì)算系統(tǒng)和工具,如表1所示,這將有助于對(duì)計(jì)算模式的理解以及對(duì)技術(shù)發(fā)展現(xiàn)狀的把握,并進(jìn)一步有利于在實(shí)際大數(shù)據(jù)處理應(yīng)用中對(duì)合適的計(jì)算技術(shù)和系統(tǒng)工具的選擇使用。
6、大數(shù)據(jù)分析與可視化
在大數(shù)據(jù)時(shí)代,人們迫切希望在由普通機(jī)器組成的大規(guī)模集群上實(shí)現(xiàn)高性能的以機(jī)器學(xué)習(xí)算法為核心的數(shù)據(jù)分析,為實(shí)際業(yè)務(wù)提供服務(wù)和指導(dǎo),進(jìn)而實(shí)現(xiàn)數(shù)據(jù)的最終變現(xiàn)。與傳統(tǒng)的在線聯(lián)機(jī)分析處理OLAP不同,對(duì)大數(shù)據(jù)的深度分析主要基于大規(guī)模的機(jī)器學(xué)習(xí)技術(shù),一般而言,機(jī)器學(xué)習(xí)模型的訓(xùn)練過(guò)程可以歸結(jié)為最優(yōu)化定義于大規(guī)模訓(xùn)練數(shù)據(jù)上的目標(biāo)函數(shù)并且通過(guò)一個(gè)循環(huán)迭代的算法實(shí)現(xiàn),如圖4所示。因而與傳統(tǒng)的OLAP相比較,基于機(jī)器學(xué)習(xí)的大數(shù)據(jù)分析具有自己獨(dú)特的特點(diǎn)。
基于機(jī)器學(xué)習(xí)的大數(shù)據(jù)分析算法目標(biāo)函數(shù)和迭代優(yōu)化過(guò)程
(1)迭代性:由于用于優(yōu)化問(wèn)題通常沒(méi)有閉式解,因而對(duì)模型參數(shù)確定并非一次能夠完成,需要循環(huán)迭代多次逐步逼近最優(yōu)值點(diǎn)。
(2)容錯(cuò)性:機(jī)器學(xué)習(xí)的算法設(shè)計(jì)和模型評(píng)價(jià)容忍非最優(yōu)值點(diǎn)的存在,同時(shí)多次迭代的特性也允許在循環(huán)的過(guò)程中產(chǎn)生一些錯(cuò)誤,模型的最終收斂不受影響。
(3)參數(shù)收斂的非均勻性:模型中一些參數(shù)經(jīng)過(guò)少數(shù)幾輪迭代后便不再改變,而有些參數(shù)則需要很長(zhǎng)時(shí)間才能達(dá)到收斂。
這些特點(diǎn)決定了理想的大數(shù)據(jù)分析系統(tǒng)的設(shè)計(jì)和其他計(jì)算系統(tǒng)的設(shè)計(jì)有很大不同,直接應(yīng)用傳統(tǒng)的分布式計(jì)算系統(tǒng)應(yīng)用于大數(shù)據(jù)分析,很大比例的資源都浪費(fèi)在通信、等待、協(xié)調(diào)等非有效的計(jì)算上。
傳統(tǒng)的分布式計(jì)算框架MPI(message passing interface,信息傳遞接口)雖然編程接口靈活功能強(qiáng)大,但由于編程接口復(fù)雜且對(duì)容錯(cuò)性支持不高,無(wú)法支撐在大規(guī)模數(shù)據(jù)上的復(fù)雜操作,研究人員轉(zhuǎn)而開(kāi)發(fā)了一系列接口簡(jiǎn)單容錯(cuò)性強(qiáng)的分布式計(jì)算框架服務(wù)于大數(shù)據(jù)分析算法,以MapReduce、Spark和參數(shù)服務(wù)器ParameterServer等為代表。
分布式計(jì)算框架MapReduce將對(duì)數(shù)據(jù)的處理歸結(jié)為Map和Reduce兩大類操作,從而簡(jiǎn)化了編程接口并且提高了系統(tǒng)的容錯(cuò)性。但是MapReduce受制于過(guò)于簡(jiǎn)化的數(shù)據(jù)操作抽象,而且不支持循環(huán)迭代,因而對(duì)復(fù)雜的機(jī)器學(xué)習(xí)算法支持較差,基于MapReduce的分布式機(jī)器學(xué)習(xí)庫(kù)Mahout需要將迭代運(yùn)算分解為多個(gè)連續(xù)的Map 和Reduce 操作,通過(guò)讀寫(xiě)HDFS文件方式將上一輪次循環(huán)的運(yùn)算結(jié)果傳入下一輪完成數(shù)據(jù)交換。在此過(guò)程中,大量的訓(xùn)練時(shí)間被用于磁盤的讀寫(xiě)操作,訓(xùn)練效率非常低效。為了解決MapReduce上述問(wèn)題,Spark 基于RDD 定義了包括Map 和Reduce在內(nèi)的更加豐富的數(shù)據(jù)操作接口。不同于MapReduce 的是Job 中間輸出和結(jié)果可以保存在內(nèi)存中,從而不再需要讀寫(xiě)HDFS,這些特性使得Spark能更好地適用于數(shù)據(jù)挖掘與機(jī)器學(xué)習(xí)等需要迭代的大數(shù)據(jù)分析算法。基于Spark實(shí)現(xiàn)的機(jī)器學(xué)習(xí)算法庫(kù)MLLIB已經(jīng)顯示出了其相對(duì)于Mahout 的優(yōu)勢(shì),在實(shí)際應(yīng)用系統(tǒng)中得到了廣泛的使用。
以上就是關(guān)于大數(shù)據(jù)分析六個(gè)核心技術(shù)的詳細(xì)介紹,如果你想要了解相關(guān)的知識(shí)或?qū)W習(xí)大數(shù)據(jù)開(kāi)發(fā)技術(shù)的小伙伴還是找一個(gè)靠譜的大數(shù)據(jù)培訓(xùn)機(jī)構(gòu)比較靠譜。
開(kāi)班時(shí)間:2021-04-12(深圳)
開(kāi)班盛況開(kāi)班時(shí)間:2021-05-17(北京)
開(kāi)班盛況開(kāi)班時(shí)間:2021-03-22(杭州)
開(kāi)班盛況開(kāi)班時(shí)間:2021-04-26(北京)
開(kāi)班盛況開(kāi)班時(shí)間:2021-05-10(北京)
開(kāi)班盛況開(kāi)班時(shí)間:2021-02-22(北京)
開(kāi)班盛況開(kāi)班時(shí)間:2021-07-12(北京)
預(yù)約報(bào)名開(kāi)班時(shí)間:2020-09-21(上海)
開(kāi)班盛況開(kāi)班時(shí)間:2021-07-12(北京)
預(yù)約報(bào)名開(kāi)班時(shí)間:2019-07-22(北京)
開(kāi)班盛況Copyright 2011-2023 北京千鋒互聯(lián)科技有限公司 .All Right 京ICP備12003911號(hào)-5 京公網(wǎng)安備 11010802035720號(hào)