用戶畫像大數據環境搭建——從零開始搭建實時用戶畫像(四)

2021-02-20 實時流式計算


本章我們開始正式搭建大數據環境,目標是構建一個穩定的可以運維監控的大數據環境。我們將採用Ambari搭建底層的Hadoop環境,使用原生的方式搭建Flink,Druid,Superset等實時計算環境。使用大數據構建工具與原生安裝相結合的方式,共同完成大數據環境的安裝。

Ambari搭建底層大數據環境

Apache Ambari是一種基於Web的工具,支持Apache Hadoop集群的供應、管理和監控。Ambari已支持大多數Hadoop組件,包括HDFS、MapReduce、Hive、Pig、 Hbase、Zookeeper、Sqoop和Hcatalog等。

Apache Ambari 支持HDFS、MapReduce、Hive、Pig、Hbase、Zookeepr、Sqoop和Hcatalog等的集中管理。也是頂級的hadoop管理工具之一。

目前Ambari的版本已經更新到2.7,支持的組件也越來越豐富。

Hadoop的發行版本有很多,有華為發行版,Intel發行版,Cloudera發行版(CDH),MapR版本,以及HortonWorks版本等。所有發行版都是基於Apache Hadoop衍生出來的,產生這些版本的原因,是由於Apache Hadoop的開源協議決定的:任何人可以對其進行修改,並作為開源或商業產品發布和銷售。

收費版本:收費版本一般都會由新的特性。國內絕大多數公司發行的版本都是收費的,例如Intel發行版本,華為發行版本等。

免費版本:不收費的版本主要有三個(都是國外廠商)。Cloudera版本(Cloudera’s Distribution Including Apache Hadoop)簡稱」CDH「。Apache基金會hadoop Hontonworks版本(Hortonworks Data Platform)簡稱「HDP」。按照順序代表了國內的使用率,CDH和HDP雖然是收費版本,但是他們是開源的,只是收取服務費用,嚴格上講不屬於收費版本。

Ambari基於HDP安裝,但是他們不同版本之間有不同的對應關係。

Ambari2.7與HDP HDF的對應關係:

也就是支持最新的版本為HDP 3.1.5 而HDP包含了大數據的基本組件如下:

已經非常的豐富了,下面我們開始Ambari的安裝。

前期準備

前期準備分為四部分

主機,資料庫,瀏覽器,JDK

主機

請先準備好安裝Ambari的主機,開發環境可以三臺就ok,其他環境依據公司機器規模而確定。

假設開發環境的三臺機器為:

192.168.12.101 master 192.168.12.102 slave1 192.168.12.103 slave2

主機的最低要求如下:

軟體要求

在每個主機上:

yum和rpm(RHEL / CentOS / Oracle / Amazon Linux)

zypper和php_curl(SLES)

apt (Debian / Ubuntu)

scp, curl, unzip, tar,wget和 gcc*

OpenSSL(v1.01,內部版本16或更高版本)

Python(帶python-devel *)

Ambari主機應至少具有1 GB RAM,並具有500 MB可用空間。

要檢查任何主機上的可用內存,請運行:

free -m

本地倉庫

如果網速不夠快,我們可以將包下載下來,建立本地倉庫。網速夠快可以忽略這步。

先下載安裝包

安裝httpd服務

yum install yum-utils createrepo
[root@master ~]# yum -y install httpd
[root@master ~]# service httpd restart
Redirecting to /bin/systemctl restart httpd.service
[root@master ~]# chkconfig httpd on

隨後建立一個本地yum源

mkdir -p /var/www/html/

將剛剛下載的包解壓到這個目錄下。

隨後通過瀏覽器 訪問 成功

createrepo ./
製作本地源 修改文件裡邊的源地址
vi ambari.repo
vi hdp.repo


#VERSION_NUMBER=2.7.5.0-72
[ambari-2.7.5.0]
#json.url = http://public-repo-1.hortonworks.com/HDP/hdp_urlinfo.json
name=ambari Version - ambari-2.7.5.0
baseurl=https://username:password@archive.cloudera.com/p/ambari/centos7/2.x/updates/2.7.5.0
gpgcheck=1
gpgkey=https://username:password@archive.cloudera.com/p/ambari/centos7/2.x/updates/2.7.5.0/RPM-GPG-KEY/RPM-GPG-KEY-Jenkins
enabled=1
priority=1

[root@master ambari]# yum clean all
[root@master ambari]# yum makecache
[root@master ambari]# yum repolist

軟體準備

為了方便以後的管理,我們要對機器做一些配置

安裝JDK
下載地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

rpm -ivh jdk-8u161-linux-x64.rpm
java -version

通過vi /etc/hostname 進行修改機器名 這裡主要是為了可以實現通過名稱來查找相應的伺服器

  各個節點修改成相應的名稱,分別為master,slave1.slave2
  vi /etc/hosts
192.168.12.101 master
192.168.12.102 slave1
192.168.12.103 slave2

vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=master(其他的節點也對應修改)

關閉防火牆
[root@master~]#systemctl disable firewalld
[root@master~]#systemctl stop firewalld

ssh免密
ssh-keygen

ssh-copy-id -i ~/.ssh/id_rsa.pub remote-host

不同的環境會有不同的問題存在,大家可以參考官網手冊進行相應的安裝。

安裝ambari-server

ambariserver將最終帶我們完成大數據集群的安裝

yum install ambari-server

Installing : postgresql-libs-9.2.18-1.el7.x86_64 1/4
Installing : postgresql-9.2.18-1.el7.x86_64 2/4
Installing : postgresql-server-9.2.18-1.el7.x86_64 3/4
Installing : ambari-server-2.7.5.0-124.x86_64 4/4
Verifying : ambari-server-2.7.5.0-124.x86_64 1/4
Verifying : postgresql-9.2.18-1.el7.x86_64 2/4
Verifying : postgresql-server-9.2.18-1.el7.x86_64 3/4
Verifying : postgresql-libs-9.2.18-1.el7.x86_64 4/4

Installed:
ambari-server.x86_64 0:2.7.5.0-72
Dependency Installed:
postgresql.x86_64 0:9.2.18-1.el7
postgresql-libs.x86_64 0:9.2.18-1.el7
postgresql-server.x86_64 0:9.2.18-1.el7
Complete!

啟動與設置

設置

ambari-server setup

不推薦直接用內嵌的postgresql,因為其他服務還要用mysql

安裝配置 MySql

yum install -y wget

wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

rpm -ivh mysql57-community-release-el7-10.noarch.rpm

yum -y install mysql-community-server

systemctl enable mysqld

systemctl start mysqld.service

systemctl status mysqld.service

grep "password" /var/log/mysqld.log

mysql -uroot -p

set global validate_password_policy=0;

set global validate_password_length=1;

set global validate_password_special_char_count=0;

set global validate_password_mixed_case_count=0;

set global validate_password_number_count=0;

select @@validate_password_number_count,@@validate_password_mixed_case_count,@@validate_password_number_count,@@validate_password_length;



ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';

grant all privileges on . to 'root'@'%' identified by 'password' with grant option;

flush privileges;

exit
yum -y remove mysql57-community-release-el7-10.noarch

下載mysql驅動,放到三臺的

/opt/ambari/mysql-connector-java-5.1.48.jar


初始化資料庫

mysql -uroot -p
create database ambari;

use ambari

source /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql



CREATE USER 'ambari'@'localhost' IDENTIFIED BY 'bigdata';

CREATE USER 'ambari'@'%' IDENTIFIED BY 'bigdata';

GRANT ALL PRIVILEGES ON ambari.* TO 'ambari'@'localhost';

GRANT ALL PRIVILEGES ON ambari.* TO 'ambari'@'%';

FLUSH PRIVILEGES;

完成ambari的配置

[root@localhost download]# ambari-server setup
Using python /usr/bin/python
Setup ambari-server
Checking SELinux...
SELinux status is 'enabled'
SELinux mode is 'permissive'
WARNING: SELinux is set to 'permissive' mode and temporarily disabled.
OK to continue [y/n] (y)? y
Customize user account for ambari-server daemon [y/n] (n)? y
Enter user account for ambari-server daemon (root):
Adjusting ambari-server permissions and ownership...
Checking firewall status...
Checking JDK...
[1] Oracle JDK 1.8 + Java Cryptography Extension (JCE) Policy Files 8
[2] Custom JDK
==============================================================================
Enter choice (1): 2
WARNING: JDK must be installed on all hosts and JAVA_HOME must be valid on all hosts.
WARNING: JCE Policy files are required for configuring Kerberos security. If you plan to use Kerberos,please make sure JCE Unlimited Strength Jurisdiction Policy Files are valid on all hosts.
Path to JAVA_HOME: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.el7_7.x86_64/jre
Validating JDK on Ambari Server...done.
Check JDK version for Ambari Server...
JDK version found: 8
Minimum JDK version is 8 for Ambari. Skipping to setup different JDK for Ambari Server.
Checking GPL software agreement...
GPL License for LZO: https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html
Enable Ambari Server to download and install GPL Licensed LZO packages [y/n] (n)? y
Completing setup...
Configuring database...
Enter advanced database configuration [y/n] (n)? y
Configuring database...
==============================================================================
Choose one of the following options:
[1] - PostgreSQL (Embedded)
[2] - Oracle
[3] - MySQL / MariaDB
[4] - PostgreSQL
[5] - Microsoft SQL Server (Tech Preview)
[6] - SQL Anywhere
[7] - BDB
==============================================================================
Enter choice (1): 3
Hostname (localhost):
Port (3306):
Database name (ambari):
Username (ambari):
Enter Database Password (bigdata):
Configuring ambari database...
Enter full path to custom jdbc driver: /opt/ambari/mysql-connector-java-5.1.48.jar
Copying /opt/ambari/mysql-connector-java-5.1.48.jar to /usr/share/java
Configuring remote database connection properties...
WARNING: Before starting Ambari Server, you must run the following DDL directly from the database shell to create the schema: /var/lib/ambari-server/resources/Ambari-DDL-MySQL-CREATE.sql
Proceed with configuring remote database connection properties [y/n] (y)? y
Extracting system views...

Ambari repo file contains latest json url http://public-repo-1.hortonworks.com/HDP/hdp_urlinfo.json, updating stacks repoinfos with it...
Adjusting ambari-server permissions and ownership...
Ambari Server 'setup' completed successfully.

隨後就可以啟動了

ambari-server start

ambari-server status

ambari-server stop

訪問如下地址

http://<your.ambari.server>:8080

集群安裝

接下來進行集群的安裝,包括命名,ssh免密,選擇版本,規劃集群

最終完成集群安裝,我們就可以在頁面管理我們的集群了。

詳細官網安裝文檔pdf請在關注「實時流式計算」 後臺回復ambari

實時計算環境搭建

由於ambari支持的druid版本較低,目前暫不支持flink,所以除kafka外的實時計算組件,需要手動安裝,也方便以後的升級。

Linux系統上安裝flink集群安裝

集群安裝分為以下幾步:

1、在每臺機器上複製解壓出來的flink目錄。

2、選擇一個作為master節點,然後修改所有機器conf/flink-conf.yaml

jobmanager.rpc.address = master主機名

3、修改conf/slaves,將所有work節點寫入

work01
work02

4、在master上啟動集群

bin/start-cluster.sh

安裝在Hadoop

我們可以選擇讓Flink運行在Yarn集群上。

下載Flink for Hadoop的包

保證 HADOOP_HOME已經正確設置即可

啟動 bin/yarn-session.sh

運行flink示例程序批處理示例:

提交flink的批處理examples程序:

bin/flink run examples/batch/WordCount.jar

這是flink提供的examples下的批處理例子程序,統計單詞個數。

$ bin/flink run examples/batch/WordCount.jar
Starting execution of program
Executing WordCount example with default input data set.
Use --input to specify file input.
Printing result to stdout. Use --output to specify output path.
(a,5)
(action,1)
(after,1)
(against,1)
(all,2)
(and,12)
(arms,1)
(arrows,1)
(awry,1)
(ay,1)

Druid集群部署部署建議

集群部署採用的分配如下:

主節點部署 Coordinator 和 Overlord進程

兩個數據節點運行 Historical 和 MiddleManager進程

一個查詢節點 部署Broker 和 Router進程

未來我們可以添加更多的主節點和查詢節點

主節點建議 8vCPU 32GB內存

配置文件位於

conf/druid/cluster/master

數據節點建議

16 vCPU 122GB內存 2 * 1.9TB SSD

配置文件位於

conf/druid/cluster/data

查詢伺服器 建議 8vCPU 32GB內存

配置文件位於

conf/druid/cluster/query

開始部署

下載最新0.17.0發行版

解壓

tar -xzf apache-druid-0.17.0-bin.tar.gz
cd apache-druid-0.17.0

集群模式的主要配置文件都位於:

conf/druid/cluster

配置元數據存儲

conf/druid/cluster/_common/common.runtime.properties

替換

druid.metadata.storage.connector.connectURI
druid.metadata.storage.connector.host

例如配置mysql為元數據存儲

在mysql中配置好訪問權限:

-- create a druid database, make sure to use utf8mb4 as encoding
CREATE DATABASE druid DEFAULT CHARACTER SET utf8mb4;

-- create a druid user
CREATE USER 'druid'@'localhost' IDENTIFIED BY 'druid';

-- grant the user all the permissions on the database we just created
GRANT ALL PRIVILEGES ON druid.* TO 'druid'@'localhost';

在druid中配置

druid.extensions.loadList=["mysql-metadata-storage"]
druid.metadata.storage.type=mysql
druid.metadata.storage.connector.connectURI=jdbc:mysql://<host>/druid
druid.metadata.storage.connector.user=druid
druid.metadata.storage.connector.password=diurd

配置深度存儲

將數據存儲配置為S3或者HDFS

比如配置HDFS,修改

conf/druid/cluster/_common/common.runtime.properties

druid.extensions.loadList=["druid-hdfs-storage"]

#druid.storage.type=local
#druid.storage.storageDirectory=var/druid/segments

druid.storage.type=hdfs
druid.storage.storageDirectory=/druid/segments

#druid.indexer.logs.type=file
#druid.indexer.logs.directory=var/druid/indexing-logs

druid.indexer.logs.type=hdfs
druid.indexer.logs.directory=/druid/indexing-logs

將Hadoop配置XML(core-site.xml,hdfs-site.xml,yarn-site.xml,mapred-site.xml)放在Druid中

conf/druid/cluster/_common/

配置zookeeper連接

還是修改

conf/druid/cluster/_common/

下的

druid.zk.service.host

為zk伺服器地址就可以了

啟動集群

啟動前注意打開埠限制

主節點:

derby 1527

zk 2181

Coordinator 8081

Overlord 8090

數據節點:

Historical 8083

Middle Manager 8091, 8100–8199

查詢節點:

Broker 8082

Router 8088

記得將剛才配好的druid複製到各個節點

啟動主節點

由於我們使用外部zk 所以使用no-zk啟動

bin/start-cluster-master-no-zk-server

啟動數據伺服器

bin/start-cluster-data-server

啟動查詢伺服器

bin/start-cluster-query-server

這樣的話 集群就啟動成功了!

至此,我們的大數據環境基本搭建完畢,下一章我們將接入數據,開始進行標籤的開發,未完待續~

參考文獻

《用戶畫像:方法論與工程化解決方案》

「點擊連結了解詳情併購買」

資深大數據專家多個億級規模用戶畫像系統的經驗總結,技術、產品、運營3個維度講解從0到1構建用戶畫像系統的技術和方法論



更多實時數據分析相關博文與科技資訊,歡迎關注 「實時流式計算」 詳細ambari官網安裝文檔pdf請在關注「實時流式計算」 後臺回復ambari

相關焦點

  • 實時標籤開發——從零開始搭建實時用戶畫像(五)
    數據的接入可以通過將數據實時寫入Kafka進行接入,不管是直接的寫入還是通過oracle和mysql的實時接入方式,比如oracle的ogg,mysql的binlogoggGolden Gate(簡稱OGG)提供異構環境下交易數據的實時捕捉、變換、投遞。
  • 網易大數據用戶畫像實踐
    >導讀:網易大數據生態數量級巨大,且產品線豐富,覆蓋用戶娛樂、電商、教育等領域,並且APP活躍度高,積累了多維度的用戶行為數據。通過集團數據資產構建全域用戶畫像,旨在服務於域內眾多業務場景,同時也在探索外部商業化方案。今天藉此機會,同大家分享下網易在大數據用戶畫像中的實戰應用經驗。今天的介紹會圍繞下面三點展開:網易生態數據介紹用戶畫像中心分類網易用戶畫像實戰案例整個用戶畫像實踐經驗,都依賴於網易易數中臺,所以首先給大家介紹下網易生態數據情況。
  • 用戶畫像基礎
    大數據已經興起多年,其對於網際網路公司的應用來說已經如水、電、空氣對於人們的生活一樣,成為不可或缺的重要組成部分。從基礎設施建設到應用層面,主要有數據平臺搭建及運維管理、數據倉庫開發、上層應用的統計分析、報表生成及可視化、用戶畫像建模、個性化推薦與精準營銷等應用方向。
  • 基於用戶畫像的實時異步化視頻推薦系統
    上線了一個百臺規模的ES集群,還設計開發了一套實時推薦系統。 標題有點長,其實是為了突出該推薦系統的三個亮點,一個是實時,一個是基於用戶畫像去做的,一個是異步化。實時主要體現在三個層面:1.  用戶畫像中的的短期興趣模型實時構建。
  • 內容競爭,從了解用戶開始丨新浪新聞用戶畫像案例
    為尋求產品創新設計和體驗營銷的機會點,UIMAX與新浪新聞正式開展項目合作,進行新浪新聞移動端產品的用戶畫像研究。借力大數據,超越傳統用戶畫像樣本代表性是影響研究結果價值的關鍵因素。量體裁衣,活躍用戶與沉默用戶的研究側重點不同從新浪新聞客戶端後臺數據可以看到,用戶的活躍度存在明顯分層,具體使用行為和習慣也存在較大差異,那麼應該如何去研究這些千差萬別的用戶呢
  • 用戶畫像10大誤區,你入坑了嗎?
    作者:黃小剛,大數據應用專家題圖來自Unsplash,基於CC0協議全文共 3616 字,閱讀需要 7 分鐘—————— BEGIN ——————用戶畫像廣泛應用於大數據精準營銷和個性化服務等領域,「千萬人撩你,不如一人懂你」,用戶畫像是洞察用戶特徵的基本工具,大家都普遍認同用戶畫像的重要性。
  • 博物館個性化用戶畫像的構建及其應用
    如何完成數據的深度分析挖掘是博物館大數據實踐的核心和挑戰,「用戶畫像」作為一項其他行業普遍應用的數據分析技術,能夠從一定程度上解決這一問題,其對於博物館業務優化具有積極意義。對用戶信息、行為習慣、認知特徵等大數據集合進行分析挖掘,建立用戶標籤,形成用戶檔案模型[5]已經成為用戶畫像的基本功能。用戶畫像的核心是通過數據挖掘得到用戶典型特徵、完成用戶原型的標籤化。
  • 用戶畫像的構建及應用
    在網際網路逐漸步入大數據時代後,不可避免的給企業及消費者行為帶來一系列改變與重塑。
  • 用戶畫像技術及方法論
    那其中的一個手段就是以增量用戶拉取,存量用戶數量和價值的保有為目標,利用大數據技術精準用戶畫像,並結合商品畫像,解構用戶及商品,精細化耕作,最終在重點目標客戶群體上形成突破比如電商猜你喜歡中的個性化推薦技術,萬能的淘寶上有海量的商品幾乎可以滿足每個人的採購商品需求,但是如何讓一個用戶可以精準快速地找到是大問題,個性化是其根本,用戶畫像和塑造則是個性化的根本,希望可以讓用戶感受到產品為ta而造的滿足感。
  • 用戶畫像系統構建實踐
    用戶畫像更多被運營和數據分析師使用,它是各類描述用戶數據的變量集合。個性化推薦、廣告系統、活動營銷、內容推薦、興趣偏好都是基於用戶畫像的應用。
  • 用戶畫像實踐:神策標籤生產引擎架構
    用戶畫像是建立在數據基礎之上的用戶模型,是產品改進、精準營銷等業務場景中不可或缺的重要基礎。我們這個實時標籤引擎其實也並不複雜,輸入的數據就是我們實時流的事件數據,根據標籤規則,還有用戶屬性,用戶標籤對他做在線的一個計算,從而輸出的是一個標籤狀態的變更,最後得到這個標籤結果。8.
  • 15分鐘從零開始搭建支持10w+用戶的生產環境(四)
    原文地址:15分鐘從零開始搭建支持10w+用戶的生產環境(三) 五、架構實踐前邊用了三篇文章,詳細介紹了這個架構的各個部分的選擇以及安裝。這篇文章,我會用一個Demo項目,從開發到部署,包括MongoDB數據的訪問。用這種方式過一遍這個架構。 Demo項目,我們用Dotnet Core開發。
  • SoLoMoPe用戶畫像讓運營離用戶更近一點
    李開復在2011年就發微博說:「1、人口稠密的大城市是SoLoMo的最佳舞臺,所以在中國將得到最好的發展,2、SoLoMo在娛樂方面將改變人們交友的方式與習慣,3、SoLoMo加上O2O(就是用SoLoMo幫助商家和客戶互相智能推薦)將改變用戶畫像標籤,聚類分析後描繪出SoLoMoPe用戶畫像,為用戶運營工作提供精確的範圍。」
  • B端產品經理,如何構建企業用戶畫像?
    企業用戶畫像指的是:使用B端產品或服務的企業用戶,具有企業屬性特徵和企業內部多個角色屬性特徵結合構成的畫像,是對現實企業用戶的數字建模。通過採集企業和角色信息,總結提煉特徵,構建標籤化的企業用戶模型。構建企業用戶畫像是為了梳理和建立與企業用戶的關聯關係,聚焦產品服務對象,提供專注服務、營銷決策、迭代產品、挖掘數據等。
  • 談談用戶畫像
    當然,我知道這裡涉及一個嚴重的問題,就是微信對這個幹擾社交網絡,騷擾微信社交平臺很忌諱,從社交網絡平臺來說,微信有他的道理,但從優惠券本身來說,並不存在這個問題,是其利益鏈條上衍生的推廣途徑問題比較大,這是另一個話題了,不展開討論。我對這種營銷活動判定的度是什麼呢,我解釋一下。為什麼有的事情我說是割韭菜,有些我認為不是。
  • 基於HBase+ElasticSearch進行用戶畫像查詢(二)
    用戶畫像建設是產品進行精細化運營中非常重要的一環,像今日頭條的精準個性化推薦、京東及淘寶的商品推薦、手機SDK的消息推送等,都是基於用戶畫像數據進行精細化運營的
  • 用戶畫像專題熱力來襲!兩位專家現身說法授絕招
    此外12月01日(周四晚)聽民生銀行數據分析師張安蒙民生銀行客戶畫像搭建與應用,大家不要錯過啊。參與方式掃描文末二維碼 | 閱讀原文話題一:數據挖掘在會員分析方面的應用現在我們開始第一個話題的討論: 1、數據挖掘在會員分析方面的應用,包括並不限於會員分級、精準營銷、交叉銷售、流失分析等。
  • 一份網際網路口腔用戶的「自畫像」,讓你一分鐘了解線上用戶!
    數據來源:蛋殼研究院調研數據、新氧資料庫網際網路口腔醫療用戶「自畫像」(1):消費年輕化趨勢更明顯,女性為消費主體消費動機:在這7萬人的數據樣本中,我們發現,網際網路口腔用戶的消費動機主要來源於四個方面:治療口腔疾病、工作需要、彌補牙齒缺陷及改變整體形象,其中治療口腔疾病所產生的購買動機與剛性需求有關,有75.1%的人會因此進行口腔消費。
  • 如何利用ClickHouse位圖加速用戶畫像標籤查詢
    --VitoLiao一、問題背景目前我們已經將用戶畫像的寬表數據導入了clickhouse,可以滿足日常的查詢功能,但是最近產品經理靈光一閃,想基於用戶畫像數據和人群標籤數據,來做一下人群標籤的分析功能,簡單說就是看看不同的人群,他們的畫像是什麼樣子的。
  • 《文章推薦系統》系列之構建離線用戶畫像
    文章推薦系統系列:前面我們完成了文章畫像的構建以及文章相似度的計算,接下來,我們就要實現用戶畫像的構建了。用戶畫像往往是大型網站的重要模塊,基於用戶畫像不僅可以實現個性化推薦,還可以實現用戶分群、精準推送、精準營銷以及用戶行為預測、商業化轉化分析等,為商業決策提供數據支持。