一、數(shù)據(jù)標(biāo)簽的結(jié)構(gòu)

成都創(chuàng)新互聯(lián)公司服務(wù)項目包括呈貢網(wǎng)站建設(shè)、呈貢網(wǎng)站制作、呈貢網(wǎng)頁制作以及呈貢網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,呈貢網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到呈貢省份的部分城市,未來相信會繼續(xù)擴大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
1. 業(yè)務(wù)域
比數(shù)據(jù)域更高維度的業(yè)務(wù)劃分方法,適用于特別龐大的業(yè)務(wù)系統(tǒng),且業(yè)務(wù)板塊之間的指標(biāo)或業(yè)務(wù)重疊性較小。例如用車業(yè)務(wù)板塊包含乘客端、司機端,電商業(yè)務(wù)板塊包含商城、返利模塊。
2. 業(yè)務(wù)過程
業(yè)務(wù)過程可以概括為一個個不可拆分的行為事件,如下單、支付、評價等業(yè)務(wù)過程/事件。
看到這一系列的名詞,很多人可能就開始懵逼了,業(yè)務(wù)域倒還能理解,簡單來說就是對不同業(yè)務(wù)的分類;業(yè)務(wù)過程也容易理解,相當(dāng)于畫業(yè)務(wù)流程圖唄。
那數(shù)據(jù)域又是何方神圣?
3. 數(shù)據(jù)域
是聯(lián)系較為緊密的數(shù)據(jù)主題的集合,是對業(yè)務(wù)對象高度概括的概念層歸類,目的是便于數(shù)據(jù)管理與應(yīng)用。
簡而言之,數(shù)據(jù)域就類似于我們電腦桌面要建立不同的文件夾來存儲數(shù)據(jù),這些個文件夾名就是數(shù)據(jù)域。
維度、維度屬性、修飾這些怎么理解?有什么用途?
4. 維度
是度量的環(huán)境,用來反映業(yè)務(wù)的一類屬性,這類屬性的集合構(gòu)成一個維度,可以從who-where-when-what層面來看。
5. 維度屬性
維度屬性隸屬于維度,相當(dāng)于維度的具體說明,如用戶維度中性別為男、女。
6. 修飾詞
指除了統(tǒng)計維度以外指標(biāo)的業(yè)務(wù)場景。
7. 修飾類型
對修飾詞的抽象劃分。
簡而言之,維度和修飾都可以理解為原子指標(biāo)的一些限定條件,懂sql的會更好理解一些,一般是寫sql時,放在where語句后邊的。
8. 度量/原子指標(biāo)
原子指標(biāo)和度量含義相同,某一業(yè)務(wù)行為事件下的度量,是業(yè)務(wù)定義中不可拆分的指標(biāo),如注冊數(shù)。
9. 時間周期
用來明確數(shù)據(jù)統(tǒng)計的時間范圍或是時間點,如最近30天、自然周、截至當(dāng)日等。
10. 指標(biāo)類型
包含原子指標(biāo)、派生指標(biāo)。
原子指標(biāo)= 行為事件+度量
派生指標(biāo)= 一個原子指標(biāo)+多個修飾詞+時間周期
例如:原子指標(biāo)=完單量,派生指標(biāo)=近一周iOS乘客完單量,包含時間周期=近一周,修飾詞=iOS,維度=乘客,原子指標(biāo)=完單量。
二、數(shù)據(jù)標(biāo)簽開發(fā)中常見問題與解決方法
問題1:指標(biāo)定義不夠清晰明確,兩個頁面上的指標(biāo)定義其實是不同的,但是展示給商家看到的可能是同一個中文名稱。又或者同樣一個含義的指標(biāo)在不同的界面上展示的名稱卻不相同,讓人產(chǎn)生歧義。
問題2:一個指標(biāo)因為由不同的數(shù)據(jù)開發(fā)同學(xué)來制作,可能會被重復(fù)開發(fā),不但造成資源浪費,還會造成維護(hù)困難。
問題3:對于需要新開發(fā)的指標(biāo),不僅缺少開發(fā)工具簡化開發(fā)流程,甚至該使用哪些表,不該使用哪些表很大程度上都要憑借數(shù)據(jù)開發(fā)同學(xué)與數(shù)倉同學(xué)的經(jīng)驗。如果稍微馬虎一點或者缺乏經(jīng)驗,比如使用了某些業(yè)務(wù)域下特有的表或者不是由數(shù)倉提供的統(tǒng)一中間層的表就可能會使用錯誤的數(shù)據(jù),造成后期返工等情況。
為了解決上述問題,指標(biāo)庫應(yīng)運而生。
指標(biāo)庫中指標(biāo)數(shù)據(jù)的來源一般都是從DW 庫,數(shù)倉統(tǒng)一中間層的表中通過計算得來。指標(biāo)庫最基礎(chǔ)的元數(shù)據(jù),比如維度信息,原子指標(biāo)信息等都是使用數(shù)倉統(tǒng)一中間層。
第一步:數(shù)倉先確定業(yè)務(wù)域并導(dǎo)入DW 庫統(tǒng)一中間層的表。
要錄入的維度指標(biāo)屬于哪個域先確定下來,例如店鋪屬于店鋪域,訂單支付金額屬于交易域。只要數(shù)倉內(nèi)部自己有統(tǒng)一的規(guī)劃即可。然后就可以導(dǎo)入中間層的表到指標(biāo)庫。
第二步:數(shù)倉定義原子指標(biāo),維度,修飾詞。
如果之前沒有定義過,就新建維度指標(biāo)等,并關(guān)聯(lián)到正確的表字段上,在第一步導(dǎo)入表的過程中也可以快速關(guān)聯(lián)到已經(jīng)存在的維度指標(biāo)。
第三步:生成派生指標(biāo)。
有了維度,原子指標(biāo)等元數(shù)據(jù),就可以定義派生指標(biāo)了。利用指標(biāo)庫的SQL 生成功能可以快速生成技術(shù)口徑。同時在指標(biāo)庫上可以快速創(chuàng)建單個派生指標(biāo)的數(shù)據(jù)開發(fā)平臺調(diào)度任務(wù)。
第四步:應(yīng)用派生指標(biāo)
選擇需要的多個派生指標(biāo)后可以通過指標(biāo)庫快速創(chuàng)建多個派生指標(biāo)的數(shù)據(jù)開發(fā)平臺調(diào)度任務(wù)和統(tǒng)一數(shù)據(jù)服務(wù)的在線API。至此就可以在線上查詢一批指標(biāo)的數(shù)據(jù)了。當(dāng)然指標(biāo)庫上也支持臨時查詢指標(biāo)的數(shù)據(jù)。
標(biāo)簽庫的特性:
(1) 檢索 :標(biāo)簽多意味著檢索效率低,大多業(yè)務(wù)人員習(xí)慣于就訪問自己關(guān)注的那幾個標(biāo)簽,因此需要設(shè)立業(yè)務(wù)專區(qū),根據(jù)自身企業(yè)的業(yè)務(wù)分類將標(biāo)簽分門別類,但無論哪種分類都解決不了一線靈活管理的要求,因此還需要提供自定義目錄能力,共性的標(biāo)簽確保權(quán)威性,個性的標(biāo)簽確保靈活性。
(2) 實時 :可以將整個場景(LBS)封裝成一個動態(tài)標(biāo)簽,然后再配置一個觸發(fā)規(guī)則;
(3) 簇群 :每個用戶都處于一個特定群體中,需要結(jié)合業(yè)務(wù)實際突破了原有以用戶為核心的標(biāo)簽管理方式,打造簇群這種新的標(biāo)簽體系,這樣可以大幅提升客群管理效率和生成效率,比如營銷家庭產(chǎn)品肯定更關(guān)注戶主,因此就需要家庭標(biāo)簽,而不是個人標(biāo)簽。
(4) 性能 :標(biāo)簽庫特別關(guān)注兩種性能,一個是實時計算能力,一種是實時查詢能力,前者解決標(biāo)簽組合計算生成客戶群的效率問題,比如10個標(biāo)簽組合關(guān)聯(lián)得到目標(biāo)用戶群,你得在極短的時間生成,后者解決的是實時統(tǒng)計的問題,因為業(yè)務(wù)人員需要基于實際數(shù)據(jù)量調(diào)整策略。
(5) 聚合標(biāo)簽: 比如原來有四個工作地位置標(biāo)簽,分別是用戶工作地歸屬地市【日】、用戶工作地歸屬區(qū)縣【日】、用戶工作地歸屬鄉(xiāng)鎮(zhèn)【日】、用戶工作地XXXX【日】等等,但你會發(fā)現(xiàn)用戶在使用的時候往往無法一步到位選擇到自己所需的標(biāo)簽,因為選擇太多、粒度太細(xì),而這種現(xiàn)象普遍存在。因此新增了聚合標(biāo)簽這個概念,就是做一次封裝,最后面向用戶展示的標(biāo)簽被整合成一個,即用戶工作地歸屬行政區(qū)域【日】,而更細(xì)粒度的標(biāo)簽就定義為子標(biāo)簽,這是一種自頂向下的設(shè)計方法。
三、標(biāo)簽在營銷中的應(yīng)用
標(biāo)簽庫與營銷平臺的銜接流程 :營銷平臺使用的客戶群全部來自標(biāo)簽庫,用戶在營銷平臺發(fā)起的投放流程應(yīng)該最為便捷的選擇到自己在標(biāo)簽庫創(chuàng)建的客戶群,反之,在標(biāo)簽庫也應(yīng)該最為方便的將客戶群推送到營銷等外部平臺。
我們現(xiàn)在都在提中臺,標(biāo)簽也是中臺,而數(shù)據(jù)中臺最核心的工作,不是建什么功能,而是持續(xù)的提升模型和標(biāo)簽質(zhì)量,讓這些數(shù)據(jù)持續(xù)的產(chǎn)生價值。
需要建立標(biāo)簽效果的反饋機制,比如依據(jù)營銷的成功率進(jìn)行標(biāo)簽的評估,你起碼得知道哪個標(biāo)簽跟哪個營銷活動有關(guān),你才能從營銷的成功情況評判標(biāo)簽的價值。
固定資產(chǎn)標(biāo)簽主要用于企業(yè)內(nèi)部對固定資產(chǎn)的管理,如公司內(nèi)部的電腦,辦公桌辦公椅的管理,固定資產(chǎn)標(biāo)簽是貼在固定資產(chǎn)上,標(biāo)注固定資產(chǎn)的名稱,編號,使用人,以及登記日期等信息,下面介紹在條碼標(biāo)簽打印軟件中如何連接SQLServer數(shù)據(jù)庫制作固定資產(chǎn)標(biāo)簽。
運行條碼標(biāo)簽打印軟件,新建一個空白標(biāo)簽,設(shè)置好固定資產(chǎn)標(biāo)簽的大小行列等信息后打開數(shù)據(jù)數(shù)據(jù)庫設(shè)置,添加一個SQLServer數(shù)據(jù)源,把SQLServer數(shù)據(jù)庫中“yu”數(shù)據(jù)庫的“Sheet1”表中的固定資產(chǎn)信息導(dǎo)入中瑯條碼標(biāo)簽打印軟件中(需配置SQLServer數(shù)據(jù)庫訪問權(quán)限),測試連接后添加。
在標(biāo)簽上添加一個普通文本,打開普通文本的“圖形屬性”-“數(shù)據(jù)源”,修改數(shù)據(jù)位“固定資產(chǎn)標(biāo)簽”。
再添加一個普通文本,數(shù)據(jù)源中的文本數(shù)據(jù)修改為“資產(chǎn)名稱”,點數(shù)據(jù)源左側(cè)+號添加一個一個數(shù)據(jù),數(shù)據(jù)對象類型選擇“數(shù)據(jù)庫導(dǎo)入”,導(dǎo)入SQLServer數(shù)據(jù)庫中的“資產(chǎn)名稱”字段。“使用人”和“登記日期”也是這樣操作添加。
繪制一個條形碼,打開條形碼的“圖形屬性”-“數(shù)據(jù)源”,通過數(shù)據(jù)庫導(dǎo)入SQLServer數(shù)據(jù)庫中的資產(chǎn)編號。
預(yù)覽查看制作的固定資產(chǎn)標(biāo)簽,可以看到SQLServer數(shù)據(jù)庫中有多少固定資產(chǎn)信息就可以在中瑯條碼標(biāo)簽打印軟件中批量制作多少個固定資產(chǎn)標(biāo)簽。
根據(jù)功能可以分為五大類:
1、核心標(biāo)簽
2、格式化標(biāo)簽
3、SQL 標(biāo)簽
4、XML 標(biāo)簽
5、JSTL 函數(shù)
一、核心標(biāo)簽
1、c:out /標(biāo)簽會自動忽略XML標(biāo)記字符,所以它們不會被當(dāng)做標(biāo)簽來處理。標(biāo)簽用來顯示一個表達(dá)式的結(jié)果,與%= %作用相似,它們的區(qū)別就是c:out標(biāo)簽可以直接通過"."操作符來訪問屬性。
c:out標(biāo)簽有如下屬性:
scope 的作用域大小依次為:
application session request page(默認(rèn))
jsp 處理變量的作用域先后依次為:
page(默認(rèn)) - request - session - application
2、c:set標(biāo)簽用于設(shè)置變量值和對象屬性。
3、c:remove標(biāo)簽用于移除一個變量。
4、c:catch 標(biāo)簽主要用來處理產(chǎn)生錯誤的異常狀況,并且將錯誤信息儲存起來。
5、c:choose標(biāo)簽與Java switch語句的功能一樣,用于在眾多選項中做出選擇。
switch語句中有case,而c:choose標(biāo)簽中對應(yīng)有c:when,switch語句中有default,而c:choose標(biāo)簽中有c:otherwise。
c:when標(biāo)簽的屬性如下:
6、c:import標(biāo)簽提供了所有jsp:include行為標(biāo)簽所具有的功能,同時也允許包含絕對URL。
c:import標(biāo)簽有如下屬性:
7、c:forEach標(biāo)簽用作迭代一個集合中的對象。
語法格式:
c:forTokens
items="string"
delims="string"
begin="int"
end="int"
step="int"
var="string"
varStatus="string"
c:forEach標(biāo)簽有如下屬性:
c:forEach varStatus 屬性
current : 當(dāng)前這次迭代的(集合中的)項
index : 當(dāng)前這次迭代從 0 開始的迭代索引
count : 當(dāng)前這次迭代從 1 開始的迭代計數(shù)
first : 用來表明當(dāng)前這輪迭代是否為第一次迭代的標(biāo)志
last : 用來表明當(dāng)前這輪迭代是否為最后一次迭代的標(biāo)志
begin : 屬性值
end : 屬性值
step : 屬性值
例如:
c:foreach? items="${sessionScope.userList}"? var="userItem"? begin="1"? end="10"? step="3"? varStatus="userStatus" XXX /c:foreach
實例解讀: ?對 session 對象存儲的 userList 集合對象進(jìn)行遍歷,每次訪問的項暫時存儲在 userItem 變量中,從索引 1 開始至索引 10 進(jìn)行訪問,但不是依次訪問,每隔 3 個元素訪問一次。每次訪問項的狀態(tài)相關(guān)值由 userStatus 對象暫存。
c:foreach 的 varStatus 屬性暫存項的相關(guān)狀態(tài)屬性,可由 EL 表達(dá)式引用。
${userStatus.index} 此項的索引,從0開始
${userStatus.count} 此項的計數(shù)序號,從1開始
${userStatus.first} 此項是否是第一項,布爾值
${userStatus.last} 此項是否是最后一項,布爾值
${userStatus.begin} 此次迭代的起始索引,對應(yīng)c:foreach中begin屬性值
${userStatus.end} 此次迭代的終止索引,對應(yīng)c:foreach中end屬性值
${userStatus.step} 此次迭代的跳躍步伐,對應(yīng)c:foreach中step屬性值?
8、c:forTokens標(biāo)簽通過指定分隔符將字符串分隔為一個數(shù)組然后迭代它們。
c:forTokens
items="string"
delims="string"
begin="int"
end="int"
step="int"
var="string"
varStatus="string"
9、c:url標(biāo)簽將URL格式化為一個字符串,然后存儲在一個變量中。
這個標(biāo)簽在需要的時候會自動重寫URL。
var屬性用于存儲格式化后的URL。
c:url標(biāo)簽只是用于調(diào)用response.encodeURL()方法的一種可選的方法。它真正的優(yōu)勢在于提供了合適的URL編碼,包括c:param中指定的參數(shù)。
c:url標(biāo)簽有如下屬性:
10、c:param標(biāo)簽用于在c:url標(biāo)簽中指定參數(shù),而且與URL編碼相關(guān)。
在c:param標(biāo)簽內(nèi),name屬性表明參數(shù)的名稱,value屬性表明參數(shù)的值。
語法格式:
c:param name="string" value="string"/
c:param標(biāo)簽有如下屬性:
11、c:redirect標(biāo)簽通過自動重寫URL來將瀏覽器重定向至一個新的URL,它提供內(nèi)容相關(guān)的URL,并且支持c:param標(biāo)簽。
c:redirect標(biāo)簽有如下屬性:
二、格式化標(biāo)簽
JSTL格式化標(biāo)簽用來格式化并輸出文本、日期、時間、數(shù)字。引用格式化標(biāo)簽庫的語法如下:
%@ taglib prefix="fmt uri="" %
1、fmt:formatNumber標(biāo)簽,fmt:formatNumber標(biāo)簽用于格式化數(shù)字,百分比,貨幣。
語法格式:
fmt:formatNumber
value="string"
type="string"
pattern="string"
currencyCode="string"
currencySymbol="string"
groupingUsed="string"
maxIntegerDigits="string"
minIntegerDigits="string"
maxFractionDigits="string"
minFractionDigits="string"
var="string"
scope="string"/
fmt:formatNumber標(biāo)簽有如下屬性:
如果type屬性為percent或number,那么您就可以使用其它幾個格式化數(shù)字屬性。maxIntegerDigits屬性和minIntegerDigits屬性允許您指定整數(shù)的長度。若實際數(shù)字超過了maxIntegerDigits所指定的最大值,則數(shù)字將會被截斷。
有一些屬性允許您指定小數(shù)點后的位數(shù)。minFractionalDigits屬性和maxFractionalDigits屬性允許您指定小數(shù)點后的位數(shù)。若實際的數(shù)字超出了所指定的范圍,則這個數(shù)字會被截斷。
數(shù)字分組可以用來在每三個數(shù)字中插入一個逗號。groupingIsUsed屬性用來指定是否使用數(shù)字分組。當(dāng)與minIntegerDigits屬性一同使用時,就必須要很小心地來獲取預(yù)期的結(jié)果了。
您或許會使用pattern屬性。這個屬性可以讓您在對數(shù)字編碼時包含指定的字符。接下來的表格中列出了這些字符。
2、fmt:formatDate標(biāo)簽用于使用不同的方式格式化日期。
語法格式
語法格式
fmt:formatDate
value="string"
type="string"
dateStyle="string"
timeStyle="string"
pattern="string"
timeZone="string"
var="string"
scope="string"/
fmt:formatDate標(biāo)簽有如下屬性:
fmt:formatDate 標(biāo)簽格式模式:
三、JSTL函數(shù)
JSTL包含一系列標(biāo)準(zhǔn)函數(shù),大部分是通用的字符串處理函數(shù)。引用JSTL函數(shù)庫的語法如下:
%@ taglib prefix="fn"uri="" %
1、fn:contains()函數(shù)用于確定一個字符串是否包含指定的子串
c:if test="${fn:contains(原始字符串, 要查找的子字符串)}"
.../c:if
舉個例子,一篇文章, 比如 《大陸 ** 明星又離婚了》 這屬于 「娛樂」 類新聞, 又屬于 「中國」 分類下的新聞, 所以文章和分類的關(guān)系一般是 1 對 N 。
數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計
article :
字段名 注釋
id
title 文章標(biāo)題
author 作者
create_time 創(chuàng)建時間
edit_time 修改時間
creator 創(chuàng)建者
editor 修改者
等等...
category:
字段名 注釋
id
article_id 文章 id
category_name 分類名
subcategory_id 子分類(與分類一對多的關(guān)系, 不一定需要子分類)
子分類可以依次類推, 想分多細(xì)分多細(xì), 看需求
就以只有分類為例(是否含子分類其實原理類似), 這樣其實 left join 就可以出來結(jié)果, 但是這樣的結(jié)果不適合展示, 因為多個分類查出的一篇文章就有幾行結(jié)果(對于 SQL 來說幾個分類就幾條數(shù)據(jù)), 所以在后臺管理的文章列表頁面中, 一次查文章, 還有一次根據(jù)文章 id 查出所有分類, 兩次查詢結(jié)果和起來才能顯示一條結(jié)果,如下表格所示:
標(biāo)題 分類
《大陸 ** 明星又離婚了》 「大陸」 「娛樂」
當(dāng)前文章:nosql標(biāo)簽設(shè)計,nosql框架
標(biāo)題路徑:http://chinadenli.net/article32/dsegjpc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、網(wǎng)站營銷、網(wǎng)站設(shè)計、網(wǎng)站維護(hù)、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)