<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                原文地址:https://developer.piwik.org/guides/data-model > 此文中的內容和《Piwik數據庫模式(一)》中相互參照 ### 日志數據 HTTP跟蹤API(即Piwik\Tracker組件)接收原始分析數據,我們稱之為日志數據。 有四種類型的日志數據: - 訪問 - 動作類型 - 轉換 - 電子商務項目 歸檔過程將日志數據聚合到歸檔數據中。 日志數據從不直接用于Piwik報告,而是使用歸檔數據。唯一的例外是使用日志數據生成實時報告的Live插件。 ##### 持久化 日志數據在PHP中表示為Piwik\Tracker\Visit對象,并存儲到下表中: log_visit 每次訪問包含一個條目(返回訪問者) log_action 包含網站上所有可能采取的行動(例如,唯一網址,網頁標題,下載網址...) log_link_visit_action 每個行動的訪客包含一個條目(頁面瀏覽,...) log_conversion 包含訪問期間發生的轉化(與目標相符的操作) log_conversion_item 包含電子商務轉換項目 這些表(及其相關的PHP實體)的內容將在“ 數據庫架構”指南中進行更詳細的介紹。 ### 存檔過程 日志數據不能直接用于最終用戶報告,因為它需要在每次需要報告時處理大量的數據。 為了解決這個問題,歸檔過程將日志數據聚合到歸檔數據中。然后使用歸檔數據構建報告。 例 我們舉一個例子,在一天內收到1000頁瀏覽量的網站。該日志數據將與其他信息,例如,沿著這1000個的事件列表: ```shell URL Time ... /homepage 17:00:19 ... /about 17:01:10 ... /homepage 17:05:30 ... /categories 17:06:14 ... /homepage 17:10:03 ... ... ``` 該歸檔過程匯總這些原始數據到歸檔數據。 例如,要構建每頁視圖數量的報告(查看最受歡迎的頁面),歸檔將列出所有頁面并總計每個頁面的視圖數量: ```shell URL Page views /homepage 205 /categories 67 /about 5 ... ``` 該數據是歸檔數據。 雖然預計算檔案數據對于1000頁瀏覽量來說似乎是多余的,但是在處理較高數據量時并不是這樣。 ##### 什么時候? 默認情況下,歸檔數據的計算和緩存點播。當請求具體報告時,Piwik將檢查所需的存檔數據是否存在,如果不存在則生成。 預歸檔 當跟蹤網站流量很大時,按需歸檔可能需要太多時間。在這種情況下,必須禁用存檔歸檔,并且預先歸檔需要在預定時間內在后臺運行。 可以使用core:archiveconsole命令為每個站點和期間(自定義日期范圍除外)運行預歸檔: ```shell $ ./console core:archive ``` 通常的設置是使用固定間隔運行該命令cron。 該命令將記住上次執行時,只有存在新的訪問時才會存檔網站。 ##### 怎么樣? 日志數據被匯總到每個的歸檔數據中: - 現場 - 期間:日,周,月,年或自定義日期范圍(自定義日期范圍不能預先歸檔) - 分割 存檔邏輯(即聚合日志數據的方式)由插件定義。由插件定義的所有報告都將歸檔而不是單獨存檔。 如果查詢中沒有分段,找不到數據,則每個插件的每個報告將一次生成并緩存。如果提供了一個段,則將生成和緩存屬于與請求的數據相同的插件的報告。 期間聚合 歸檔數據的計算方式根據期間類型不同: - “日”期是日志數據的聚合 - “周”,“月”,“年”和自定義日期范圍是“日”報告的匯總 例如,通過聚合一周中的7天的歸檔數據創建一周的歸檔數據。這比聚合日志數據要快得多。 ##### 插件存檔 要歸檔報表和指標的插件定義了一個Archiver擴展的類Piwik\Plugin\Archiver。此類將在歸檔過程中自動檢測并調用。 日志數據聚合由LogAggregator類處理。歸檔數據聚合由ArchiveProcessor::aggregateDataTableRecords()and ArchiveProcessor::aggregateNumericMetrics()方法處理。 插件可以訪問LogAggregator和ArchiveProcessor實例Piwik\Plugin\Archiver。 要了解有關Piwik的MySQL后端如何實現聚合的更多信息,請閱讀數據庫模式。 ##### 持久存檔數據 存檔數據使用ArchiveProcessor。 使用度量標準插入insertNumericRecord()。 報告首先使用序列化DataTable::getSerialized(),然后插入ArchiveProcessor::insertBlobRecord(): ```php // insert a numeric metric $myFancyMetric = // ... calculate the metric value ... $archiveProcessor->insertNumericRecord('MyPlugin_myFancyMetric', $myFancyMetric); // insert a record (with all of its subtables) $maxRowsInTable = Config::getInstance()->General['datatable_archiving_maximum_rows_standard'];j $dataTable = // ... build by aggregating visits ... $serializedData = $dataTable->getSerialized( $maxRowsInTable, $maxRowsInSubtable = $maxRowsInTable, $columnToSortBy = Metrics::INDEX_NB_VISITS ); $archiveProcessor->insertBlobRecords('MyPlugin_myFancyReport', $serializedData); ``` 持續的報告和指標由網站ID,期間和分段索引。歸檔的日期和時間也附在數據上。要了解MySQL如何完成此細節,請參閱數據庫架構。 ##### 報告與記錄 當報告被歸檔時,它被稱為不是報告的記錄。我們有區別,因為有時可以從一個記錄生成多個報告。 例如,UserSettings插件使用一個記錄來保存訪問者的瀏覽器詳細信息。此記錄用于生成UserSettings.getBrowserVersion和UserSettings.getBrowser報告。第二份報告只是處理第一份報告。該插件可以歸檔這兩個報告,但是這將大大浪費空間,考慮到新的報告將被緩存為每個網站/期間/段組合。 ##### 記錄存儲準則 必須注意盡可能少的存放記錄。在將記錄作為歸檔數據插入之前,請務必遵循以下準則: 記錄不應與字符串列名一起存儲。相反,它們應該被替換為整數列ID(有關現有列表的列表,請參閱Metrics)。 可以使用現有數據添加的元數據不應與報告一起存儲。相反,當將記錄轉換為報告時,應將其添加到API方法中。 ### 歸檔數據 歸檔數據是在創建歸檔過程中通過匯總日志數據。 Piwik聚合并持續存在兩種類型的存檔數據: ```shell 度量,它們是單個數值 報告,是二維數組的值 ``` 報告通常包含指標值,但它們也可以包含其他數據(額外地或代替度量值)。 報告和指標由插件定義,允許任何插件擴展Piwik分析的數據。然而,有幾個稱為核心指標的指標,由Piwik Core定義。 ##### 子集參數 報告和指標提供關于一組事物的分析數據。該集合由三個約束定義: ```shell 一個網站ID 一段時間 一段 ``` 該網站的ID選擇被跟蹤特定網站的訪問。該ID在具有idSitequery參數的所有HTTP請求中指定。 的期間,選擇被跟蹤的特定日期范圍內的訪問。所有HTTP請求中指定的時間段date與period查詢參數。 該段根據使用訪問屬性的布爾表達式選擇訪問。它在所有HTTP請求中由segmentquery參數指定,可用于選擇幾乎任何可能的訪問子集。 Analytics(分析)參數作為元數據存儲在報表中,這意味著它們作為DataTable元數據存儲。 ##### 度量 核心指標 核心指標是不是由插件定義的,而是Piwik Core。 分析訪問次數,操作類型或轉化次數的新報告應包含這些指標。 ##### 訪問指標 一組訪問的核心指標: |名稱 | 公制編號 | 描述 | |:------------ :| :------------ :| |訪問 | nb_visits | 跟蹤訪問次數 一次訪問是一系列事件,每次事件發生不超過30分鐘。 | |獨特的訪客 | nb_uniq_visitors | 唯一訪問來源的數量。訪問來源是一個導致訪問的實體。 | |操作 | nb_actions | 跟蹤的動作數量。一個行動是Piwik跟蹤的一個事件。 | |最大行動 | max_actions | 一次訪問中發生的最大操作次數。 | |總訪問長度 | sum_visit_length | 每次訪問的總和時間。 | |反彈計數 | bounce_count | 僅由一個動作組成的訪問次數。 | |轉換訪問 | nb_visits_converted | 導致至少一次轉化的訪問次數。包含網站每個目標的轉化。 | |轉換 | nb_conversions | 此次訪問跟蹤的轉化次數。包含網站每個目標的轉化。 | |收入 | revenue | 這些訪問產生的總收入。 包括網站的每個目標的收入以及電子商務收入。 | ##### 行動指標 單一動作類型的核心指標: |名稱|公制編號|描述| | :------------ | :------------ | |點擊|nb_hits|這個動作曾經完成的次數。| |總和花費時間|sum_time_spent|用戶花費這個操作的總時間。| |總和頁面生成時間|sum_time_generation|服務器花費這項操作的總時間。| |點擊與生成時間|nb_hits_with_time_generation|包含生成時間信息的命中數。| |最小頁面生成時間|min_time_generation|服務器為此操作服務的最短時間。| |最大頁面生成時間|max_time_generation|服務器花費此操作的最長時間。| |獨特出境游客|exit_nb_uniq_visitors|在此行動之后退出網站的唯一身份訪問者人數。| |退出訪問|exit_nb_visits|通過此操作結束的總訪問次數。| |獨特的入場訪客|entry_nb_uniq_visitors|通過此操作開始訪問的唯一身份訪問者總數。| |入場訪問|entry_nb_visits|以此操作開始的總訪問次數。| |進入動作|entry_nb_actions|| |入場和訪問長度|entry_sum_visit_length|每次入場訪問的總和經過時間。| |入場反彈計數|entry_bounce_count|由這個動作組成的訪問次數,沒有其他。| |點擊搜索|nb_hits_following_search|在網站搜索后執行此操作的次數。| ##### 電子商務指標 針對一組訪問記錄的一組電子商務轉換(所有訂單或所有已放棄購物車)的核心指標: |名稱|公制編號|描述| | :------------ | :------------ | |收入小計|revenue_subtotal|作為這些訂單或棄車的一部分的每個項目的總成本。| |稅收收入|revenue_tax|適用于這些訂單/棄車的總稅額。| |收入運費|revenue_shipping|運送到這些訂單/廢棄車的運輸總量。| |收入折扣|revenue_discount|這些訂單/棄車的折扣總額。| |電子商務計數|items|這些訂單/棄車的物品總數。 ##### 目標指標 一組訪問的核心指標和網站的一個目標: |名稱|公制編號|描述| | :------------ | :------------ | |目標轉換|goal_<idGoal>_nb_conversions|針對特定目標跟蹤此次訪問的轉化。| |目標收入|goal_<idGoal>_revenue|特定目標的轉化所產生的總收入。| 注意:<idGoal>應替換為目標的ID。 目標具體指標存儲在goals序列化報告列中的數據庫中。該列包含一個PHP數組,將目標ID與目標特定度量值的數組進行映射。這些值被設置為具有上述由AddColumnsProcessedMetricsGoal DataTable過濾器描述的度量名稱的普通列值。 ##### 已處理的指標 為了歸檔和數據庫大小的效率,一些指標不存儲在數據庫中。而是在需要時使用其他指標來計算。這些指標稱為處理指標。 以下是使用核心指標計算的已處理指標列表。分析訪問次數,操作類型或轉化次數的新報告應盡可能添加這些指標。 注意:以下列表中會顯示多個已處理的指標。這些指標根據他們所在的報告有不同的含義。 一組訪問的處理指標: |名稱|公制編號|描述| | :------------ | :------------ | |兌換率|conversion_rate|至少有一次轉化的訪問百分比。| |每次訪問行動|nb_actions_per_visit|單次訪問的平均動作次數。| |平均停機時間|avg_time_on_site|平均每次訪問所花費的時間(秒)。| |跳出率|bounce_rate|導致反彈的訪問百分比。| 單個操作類型的已處理指標: |名稱|公制編號|描述| | :------------ | :------------ | |平均生成時間|avg_time_generation|服務器提供此操作所需的平均時間。| |瀏覽的平均搜索結果頁數|nb_pages_per_search|在網站搜索后查看的搜索結果頁的平均數量。僅適用于網站搜索關鍵字和網站搜索類別。| |平均時間頁|avg_time_on_page|用戶花費這個時間的平均時間。| |入場跳出率|bounce_rate|所有訪問的百分比組成的這個動作,沒有其他。| |退出率|exit_rate|以此動作結束的所有訪問的百分比。| 針對一組訪問記錄的電子商務訂單集的處理指標: |名稱|公制編號|描述| | :------------ | :------------ |平均訂單收入|avg_order_revenue|每個訂單的平均收入。| 一組訂單或廢棄購物車中電子商務集合的處理指標: |名稱|公制編號|描述| | :------------ | :------------ |平均價格|avg_price|每個項目的平均價格。| |平均數量|avg_quantity|訂單/已放棄購物車中每個商品的平均數量。| |產品轉化率|conversion_rate|包含此項目的訂單/棄車的百分比。| 以下是一個特定于一個網站的一個目標的已處理指標列表: |名稱|公制編號|描述| | :------------ | :------------ |每次訪問平均收入|goal_<idGoal>_revenue_per_visit|為此目標每次訪問所產生的平均收入金額。| ##### 命名約定 由插件計算和持久化的度量必須使用以下格式命名:PluginName_metricName。例如:MyPlugin_myFancyMetric。 核心指標具有特殊名稱,不符合此慣例。 #### 報告 報告使用DataTable類存儲在內存中。A DataTable是由行和列組成的二維數組。 每行都包含與一組訪問,操作,轉換相關的度量...該集合由特殊標簽列定義和描述。列描述的集合完全取決于具體的報告。例如,在UserSettings.getBrowser報告中,帶有Firefox標簽的行將包含使用Firefox瀏覽器的訪問指標。 一些報告VisitsSummary.get就不會有一個標簽列:它們只有一行引用整個實體集。 ##### 報告元數據 除了指標之外,每一行還可以包含元數據。這個元數據通常會幫助標簽列描述行代表的事物集。 一些元數據在Piwik有特殊的含義,例如: ```shell logo:該值可以是將在UI中的每一行旁邊顯示的圖像的路徑 url:該值可以是該行將在UI中鏈接到的URL ``` ##### 子表 報表可以是層次結構的:每行都可以附加到另一個DataTable。附加到行的表稱為子表。 子表為行所代表的一組訪問提供進一步的分析。例如,Referrers.getSearchEngines報告每個搜索引擎有一行。每行都有一個子表,描述與該搜索引擎一起使用的關鍵字。以下是一個示意圖: ```shell Search Engine Keyword (subtable) Visitors --------------|-------------------|---------- Google | 207 --------------|------------------------------ | piwik | 11 | libre analytics | 6 | ... --------------------------------------------- Duck Duck Go | 121 --------------|------------------------------ | ... ``` ##### 命名約定 必須將報告命名為指標如下:PluginName_reportName。例如:MyPlugin_myFancyReport。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看