Awọn iṣiro aaye ati ibi ipamọ kekere tirẹ

Webalizer ati Awọn atupale Google ti ṣe iranlọwọ fun mi lati ni oye si ohun ti n ṣẹlẹ lori awọn oju opo wẹẹbu fun ọpọlọpọ ọdun. Bayi Mo loye pe wọn pese alaye to wulo pupọ. Ni iraye si faili access.log rẹ, o rọrun pupọ lati loye awọn iṣiro ati lati ṣe awọn irinṣẹ ipilẹ pupọ, gẹgẹbi sqlite, html, ede sql ati eyikeyi ede siseto iwe afọwọkọ.

Orisun data fun Webalizer jẹ faili access.log olupin naa. Eyi ni ohun ti awọn ifi ati awọn nọmba rẹ dabi, lati eyiti lapapọ iwọn didun ti ijabọ jẹ ko o:

Awọn iṣiro aaye ati ibi ipamọ kekere tirẹ
Awọn iṣiro aaye ati ibi ipamọ kekere tirẹ
Awọn irinṣẹ bii Awọn atupale Google gba data lati oju-iwe ti kojọpọ funrararẹ. Wọn fihan wa awọn aworan atọka meji ati awọn laini, ti o da lori eyiti o nira nigbagbogbo lati fa awọn ipinnu ti o pe. Boya diẹ sii akitiyan yẹ ki o ti ṣe? Ko mọ.

Nitorinaa, kini MO fẹ lati rii ninu awọn iṣiro awọn alejo oju opo wẹẹbu?

Olumulo ati bot ijabọ

Nigbagbogbo ijabọ aaye jẹ opin ati pe o jẹ dandan lati rii iye ijabọ iwulo ti nlo. Fun apẹẹrẹ, bii eyi:

Awọn iṣiro aaye ati ibi ipamọ kekere tirẹ

Ibeere ijabọ SQL

SELECT
1 as 'StackedArea: Traffic generated by Users and Bots',
strftime('%d.%m', datetime(FCT.EVENT_DT, 'unixepoch')) AS 'Day',
SUM(CASE WHEN USG.AGENT_BOT!='n.a.' THEN FCT.BYTES ELSE 0 END)/1000 AS 'Bots, KB',
SUM(CASE WHEN USG.AGENT_BOT='n.a.' THEN FCT.BYTES ELSE 0 END)/1000 AS 'Users, KB'
FROM
  FCT_ACCESS_USER_AGENT_DD FCT,
  DIM_USER_AGENT USG
WHERE FCT.DIM_USER_AGENT_ID=USG.DIM_USER_AGENT_ID
  AND datetime(FCT.EVENT_DT, 'unixepoch') >= date('now', '-14 day')
GROUP BY strftime('%d.%m', datetime(FCT.EVENT_DT, 'unixepoch'))
ORDER BY FCT.EVENT_DT

Aworan naa fihan iṣẹ ṣiṣe igbagbogbo ti awọn bot. Yoo jẹ ohun ti o nifẹ lati kawe ni awọn alaye awọn aṣoju ti nṣiṣe lọwọ julọ.

Awọn botilẹti didanubi

A ṣe lẹtọ awọn bot da lori alaye aṣoju olumulo. Awọn iṣiro afikun lori ijabọ ojoojumọ, nọmba ti aṣeyọri ati awọn ibeere ti ko ni aṣeyọri fun ni imọran ti o dara ti iṣẹ ṣiṣe bot.

Awọn iṣiro aaye ati ibi ipamọ kekere tirẹ

Ibeere ijabọ SQL

SELECT 
1 AS 'Table: Annoying Bots',
MAX(USG.AGENT_BOT) AS 'Bot',
ROUND(SUM(FCT.BYTES)/1000 / 14.0, 1) AS 'KB per Day',
ROUND(SUM(FCT.IP_CNT) / 14.0, 1) AS 'IPs per Day',
ROUND(SUM(CASE WHEN STS.STATUS_GROUP IN ('Client Error', 'Server Error') THEN FCT.REQUEST_CNT / 14.0 ELSE 0 END), 1) AS 'Error Requests per Day',
ROUND(SUM(CASE WHEN STS.STATUS_GROUP IN ('Successful', 'Redirection') THEN FCT.REQUEST_CNT / 14.0 ELSE 0 END), 1) AS 'Success Requests per Day',
USG.USER_AGENT_NK AS 'Agent'
FROM FCT_ACCESS_USER_AGENT_DD FCT,
     DIM_USER_AGENT USG,
     DIM_HTTP_STATUS STS
WHERE FCT.DIM_USER_AGENT_ID = USG.DIM_USER_AGENT_ID
  AND FCT.DIM_HTTP_STATUS_ID = STS.DIM_HTTP_STATUS_ID
  AND USG.AGENT_BOT != 'n.a.'
  AND datetime(FCT.EVENT_DT, 'unixepoch') >= date('now', '-14 day')
GROUP BY USG.USER_AGENT_NK
ORDER BY 3 DESC
LIMIT 10

Ni idi eyi, abajade ti itupalẹ jẹ ipinnu lati ni ihamọ wiwọle si aaye naa nipa fifi kun si faili robots.txt.

User-agent: AhrefsBot
Disallow: /
User-agent: dotbot
Disallow: /
User-agent: bingbot
Crawl-delay: 5

Awọn bot meji akọkọ ti sọnu lati tabili, ati awọn roboti MS ti lọ silẹ lati awọn laini akọkọ.

Ọjọ ati akoko iṣẹ ṣiṣe ti o ga julọ

Upswings han ni ijabọ. Lati ṣe iwadi wọn ni awọn alaye, o jẹ dandan lati ṣe afihan akoko ti iṣẹlẹ wọn, ati pe ko ṣe pataki lati ṣe afihan gbogbo awọn wakati ati awọn ọjọ ti wiwọn akoko. Eyi yoo jẹ ki o rọrun lati wa awọn ibeere kọọkan ninu faili log ti o ba nilo itupalẹ alaye.

Awọn iṣiro aaye ati ibi ipamọ kekere tirẹ

Ibeere ijabọ SQL

SELECT
1 AS 'Line: Day and Hour of Hits from Users and Bots',
strftime('%d.%m-%H', datetime(EVENT_DT, 'unixepoch')) AS 'Date Time',
HIB AS 'Bots, Hits',
HIU AS 'Users, Hits'
FROM (
	SELECT
	EVENT_DT,
	SUM(CASE WHEN AGENT_BOT!='n.a.' THEN LINE_CNT ELSE 0 END) AS HIB,
	SUM(CASE WHEN AGENT_BOT='n.a.' THEN LINE_CNT ELSE 0 END) AS HIU
	FROM FCT_ACCESS_REQUEST_REF_HH
	WHERE datetime(EVENT_DT, 'unixepoch') >= date('now', '-14 day')
	GROUP BY EVENT_DT
	ORDER BY SUM(LINE_CNT) DESC
	LIMIT 10
) ORDER BY EVENT_DT

A ṣe akiyesi awọn wakati ti nṣiṣe lọwọ julọ 11, 14 ati 20 ti ọjọ akọkọ lori chart. Ṣugbọn ọjọ keji ni 13:XNUMX awọn bot ṣiṣẹ.

Iṣẹ ṣiṣe olumulo ojoojumọ lojoojumọ nipasẹ ọsẹ

A to awọn nkan jade diẹ pẹlu iṣẹ-ṣiṣe ati ijabọ. Ibeere ti o tẹle ni iṣẹ ṣiṣe ti awọn olumulo funrararẹ. Fun iru awọn iṣiro bẹ, awọn akoko ikojọpọ gigun, gẹgẹbi ọsẹ kan, jẹ iwunilori.

Awọn iṣiro aaye ati ibi ipamọ kekere tirẹ

Ibeere ijabọ SQL

SELECT
1 as 'Line: Average Daily User Activity by Week',
strftime('%W week', datetime(FCT.EVENT_DT, 'unixepoch')) AS 'Week',
ROUND(1.0*SUM(FCT.PAGE_CNT)/SUM(FCT.IP_CNT),1) AS 'Pages per IP per Day',
ROUND(1.0*SUM(FCT.FILE_CNT)/SUM(FCT.IP_CNT),1) AS 'Files per IP per Day'
FROM
  FCT_ACCESS_USER_AGENT_DD FCT,
  DIM_USER_AGENT USG,
  DIM_HTTP_STATUS HST
WHERE FCT.DIM_USER_AGENT_ID=USG.DIM_USER_AGENT_ID
  AND FCT.DIM_HTTP_STATUS_ID = HST.DIM_HTTP_STATUS_ID
  AND USG.AGENT_BOT='n.a.' /* users only */
  AND HST.STATUS_GROUP IN ('Successful') /* good pages */
  AND datetime(FCT.EVENT_DT, 'unixepoch') > date('now', '-3 month')
GROUP BY strftime('%W week', datetime(FCT.EVENT_DT, 'unixepoch'))
ORDER BY FCT.EVENT_DT

Awọn iṣiro ọsẹ kan fihan pe ni apapọ olumulo kan ṣii awọn oju-iwe 1,6 fun ọjọ kan. Nọmba awọn faili ti o beere fun olumulo ninu ọran yii da lori afikun awọn faili tuntun si aaye naa.

Gbogbo awọn ibeere ati awọn ipo wọn

Webalizer nigbagbogbo ṣafihan awọn koodu oju-iwe kan pato ati pe Mo nigbagbogbo fẹ lati rii nọmba awọn ibeere aṣeyọri ati awọn aṣiṣe.

Awọn iṣiro aaye ati ibi ipamọ kekere tirẹ

Ibeere ijabọ SQL

SELECT
1 as 'Line: All Requests by Status',
strftime('%d.%m', datetime(FCT.EVENT_DT, 'unixepoch')) AS 'Day',
SUM(CASE WHEN STS.STATUS_GROUP='Successful' THEN FCT.REQUEST_CNT ELSE 0 END) AS 'Success',
SUM(CASE WHEN STS.STATUS_GROUP='Redirection' THEN FCT.REQUEST_CNT ELSE 0 END) AS 'Redirect',
SUM(CASE WHEN STS.STATUS_GROUP='Client Error' THEN FCT.REQUEST_CNT ELSE 0 END) AS 'Customer Error',
SUM(CASE WHEN STS.STATUS_GROUP='Server Error' THEN FCT.REQUEST_CNT ELSE 0 END) AS 'Server Error'
FROM
  FCT_ACCESS_USER_AGENT_DD FCT,
  DIM_HTTP_STATUS STS
WHERE FCT.DIM_HTTP_STATUS_ID=STS.DIM_HTTP_STATUS_ID
  AND datetime(FCT.EVENT_DT, 'unixepoch') >= date('now', '-14 day')
GROUP BY strftime('%d.%m', datetime(FCT.EVENT_DT, 'unixepoch'))
ORDER BY FCT.EVENT_DT

Ijabọ naa ṣe afihan awọn ibeere, kii ṣe awọn titẹ (awọn kọlu), ko dabi LINE_CNT, iwọn REQUEST_CNT jẹ iṣiro bi COUNT(DISTINCT STG.REQUEST_NK). Ibi-afẹde ni lati ṣafihan awọn iṣẹlẹ ti o munadoko, fun apẹẹrẹ, MS bots didi faili robots.txt awọn ọgọọgọrun igba ni ọjọ kan ati, ninu ọran yii, iru awọn ibo ni yoo ka ni ẹẹkan. Eyi n gba ọ laaye lati dan awọn fo ni awọnya.

Lati aworan naa o le rii ọpọlọpọ awọn aṣiṣe - iwọnyi jẹ awọn oju-iwe ti ko si. Abajade ti itupalẹ naa jẹ afikun ti awọn àtúnjúwe lati awọn oju-iwe jijin.

Awọn ibeere buburu

Lati ṣayẹwo awọn ibeere ni kikun, o le ṣe afihan awọn iṣiro alaye.

Awọn iṣiro aaye ati ibi ipamọ kekere tirẹ

Ibeere ijabọ SQL

SELECT
  1 AS 'Table: Top Error Requests',
  REQ.REQUEST_NK AS 'Request',
  'Error' AS 'Request Status',
  ROUND(SUM(FCT.LINE_CNT) / 14.0, 1) AS 'Hits per Day',
  ROUND(SUM(FCT.IP_CNT) / 14.0, 1) AS 'IPs per Day',
  ROUND(SUM(FCT.BYTES)/1000 / 14.0, 1) AS 'KB per Day'
FROM
  FCT_ACCESS_REQUEST_REF_HH FCT,
  DIM_REQUEST_V_ACT REQ
WHERE FCT.DIM_REQUEST_ID = REQ.DIM_REQUEST_ID
  AND FCT.STATUS_GROUP IN ('Client Error', 'Server Error')
  AND datetime(FCT.EVENT_DT, 'unixepoch') >= date('now', '-14 day')
GROUP BY REQ.REQUEST_NK
ORDER BY 4 DESC
LIMIT 20

Atokọ yii yoo tun ni gbogbo awọn ipe, fun apẹẹrẹ, ibeere kan si /wp-login.php Nipa ṣiṣatunṣe awọn ofin fun awọn ibeere atunkọ nipasẹ olupin, o le ṣatunṣe ihuwasi olupin si iru awọn ibeere ati firanṣẹ si oju-iwe ibẹrẹ.

Nitorinaa, awọn ijabọ ti o rọrun diẹ ti o da lori faili log olupin fun aworan pipe ti ohun ti n ṣẹlẹ lori aaye naa.

Bawo ni lati gba alaye?

Aaye data sqlite to. Jẹ ki a ṣẹda awọn tabili: oluranlọwọ fun titẹ sii awọn ilana ETL.

Awọn iṣiro aaye ati ibi ipamọ kekere tirẹ

Ipele tabili nibiti a yoo kọ awọn faili log nipa lilo PHP. Awọn tabili apapọ meji. Jẹ ki a ṣẹda tabili ojoojumọ pẹlu awọn iṣiro lori awọn aṣoju olumulo ati awọn ipo ibeere. Wakati pẹlu awọn iṣiro lori awọn ibeere, awọn ẹgbẹ ipo ati awọn aṣoju. Awọn tabili mẹrin ti awọn wiwọn ti o yẹ.

Abajade jẹ awoṣe ibatan atẹle:

Awoṣe dataAwọn iṣiro aaye ati ibi ipamọ kekere tirẹ

Akosile lati ṣẹda ohun kan ni aaye data sqlite kan:

DDL ohun ẹda

DROP TABLE IF EXISTS DIM_USER_AGENT;
CREATE TABLE DIM_USER_AGENT (
  DIM_USER_AGENT_ID INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
  USER_AGENT_NK     TEXT NOT NULL DEFAULT 'n.a.',
  AGENT_OS          TEXT NOT NULL DEFAULT 'n.a.',
  AGENT_ENGINE      TEXT NOT NULL DEFAULT 'n.a.',
  AGENT_DEVICE      TEXT NOT NULL DEFAULT 'n.a.',
  AGENT_BOT         TEXT NOT NULL DEFAULT 'n.a.',
  UPDATE_DT         INTEGER NOT NULL DEFAULT 0,
  UNIQUE (USER_AGENT_NK)
);
INSERT INTO DIM_USER_AGENT (DIM_USER_AGENT_ID) VALUES (-1);

Ipele

Ninu ọran ti faili access.log, o jẹ dandan lati ka, ṣatunpin ati kọ gbogbo awọn ibeere si ibi ipamọ data. Eyi le ṣee ṣe boya taara lilo ede kikọ tabi lilo awọn irinṣẹ sqlite.

Wọle ọna kika faili:

//67.221.59.195 - - [28/Dec/2012:01:47:47 +0100] "GET /files/default.css HTTP/1.1" 200 1512 "https://project.edu/" "Mozilla/4.0"
//host ident auth time method request_nk protocol status bytes ref browser
$log_pattern = '/^([^ ]+) ([^ ]+) ([^ ]+) ([[^]]+]) "(.*) (.*) (.*)" ([0-9-]+) ([0-9-]+) "(.*)" "(.*)"$/';

Key soju

Nigbati data aise wa ninu aaye data, o nilo lati kọ awọn bọtini ti ko si nibẹ sinu awọn tabili wiwọn. Lẹhinna o yoo ṣee ṣe lati kọ itọkasi si awọn wiwọn. Fun apẹẹrẹ, ninu tabili DIM_REFERRER, bọtini jẹ apapo awọn aaye mẹta.

SQL bọtini soju ibeere

/* Propagate the referrer from access log */
INSERT INTO DIM_REFERRER (HOST_NK, PATH_NK, QUERY_NK, UPDATE_DT)
SELECT
	CLS.HOST_NK,
	CLS.PATH_NK,
	CLS.QUERY_NK,
	STRFTIME('%s','now') AS UPDATE_DT
FROM (
	SELECT DISTINCT
	REFERRER_HOST AS HOST_NK,
	REFERRER_PATH AS PATH_NK,
	CASE WHEN INSTR(REFERRER_QUERY,'&sid')>0 THEN SUBSTR(REFERRER_QUERY, 1, INSTR(REFERRER_QUERY,'&sid')-1) /* отрезаем sid - специфика цмс */
	ELSE REFERRER_QUERY END AS QUERY_NK
	FROM STG_ACCESS_LOG
) CLS
LEFT OUTER JOIN DIM_REFERRER TRG
ON (CLS.HOST_NK = TRG.HOST_NK AND CLS.PATH_NK = TRG.PATH_NK AND CLS.QUERY_NK = TRG.QUERY_NK)
WHERE TRG.DIM_REFERRER_ID IS NULL

Itẹjade si tabili aṣoju olumulo le ni ọgbọn bot ninu, fun apẹẹrẹ snippet sql:


CASE
WHEN INSTR(LOWER(CLS.BROWSER),'yandex.com')>0
	THEN 'yandex'
WHEN INSTR(LOWER(CLS.BROWSER),'googlebot')>0
	THEN 'google'
WHEN INSTR(LOWER(CLS.BROWSER),'bingbot')>0
	THEN 'microsoft'
WHEN INSTR(LOWER(CLS.BROWSER),'ahrefsbot')>0
	THEN 'ahrefs'
WHEN INSTR(LOWER(CLS.BROWSER),'mj12bot')>0
	THEN 'majestic-12'
WHEN INSTR(LOWER(CLS.BROWSER),'compatible')>0 OR INSTR(LOWER(CLS.BROWSER),'http')>0
	OR INSTR(LOWER(CLS.BROWSER),'libwww')>0 OR INSTR(LOWER(CLS.BROWSER),'spider')>0
	OR INSTR(LOWER(CLS.BROWSER),'java')>0 OR INSTR(LOWER(CLS.BROWSER),'python')>0
	OR INSTR(LOWER(CLS.BROWSER),'robot')>0 OR INSTR(LOWER(CLS.BROWSER),'curl')>0
	OR INSTR(LOWER(CLS.BROWSER),'wget')>0
	THEN 'other'
ELSE 'n.a.' END AS AGENT_BOT

Awọn tabili apapọ

Nikẹhin, a yoo kojọpọ awọn tabili apapọ; fun apẹẹrẹ, tabili ojoojumọ le jẹ kojọpọ bi atẹle:

Ibeere SQL fun ikojọpọ apapọ

/* Load fact from access log */
INSERT INTO FCT_ACCESS_USER_AGENT_DD (EVENT_DT, DIM_USER_AGENT_ID, DIM_HTTP_STATUS_ID, PAGE_CNT, FILE_CNT, REQUEST_CNT, LINE_CNT, IP_CNT, BYTES)
WITH STG AS (
SELECT
	STRFTIME( '%s', SUBSTR(TIME_NK,9,4) || '-' ||
	CASE SUBSTR(TIME_NK,5,3)
	WHEN 'Jan' THEN '01' WHEN 'Feb' THEN '02' WHEN 'Mar' THEN '03' WHEN 'Apr' THEN '04' WHEN 'May' THEN '05' WHEN 'Jun' THEN '06'
	WHEN 'Jul' THEN '07' WHEN 'Aug' THEN '08' WHEN 'Sep' THEN '09' WHEN 'Oct' THEN '10' WHEN 'Nov' THEN '11'
	ELSE '12' END || '-' || SUBSTR(TIME_NK,2,2) || ' 00:00:00' ) AS EVENT_DT,
	BROWSER AS USER_AGENT_NK,
	REQUEST_NK,
	IP_NR,
	STATUS,
	LINE_NK,
	BYTES
FROM STG_ACCESS_LOG
)
SELECT
	CAST(STG.EVENT_DT AS INTEGER) AS EVENT_DT,
	USG.DIM_USER_AGENT_ID,
	HST.DIM_HTTP_STATUS_ID,
	COUNT(DISTINCT (CASE WHEN INSTR(STG.REQUEST_NK,'.')=0 THEN STG.REQUEST_NK END) ) AS PAGE_CNT,
	COUNT(DISTINCT (CASE WHEN INSTR(STG.REQUEST_NK,'.')>0 THEN STG.REQUEST_NK END) ) AS FILE_CNT,
	COUNT(DISTINCT STG.REQUEST_NK) AS REQUEST_CNT,
	COUNT(DISTINCT STG.LINE_NK) AS LINE_CNT,
	COUNT(DISTINCT STG.IP_NR) AS IP_CNT,
	SUM(BYTES) AS BYTES
FROM STG,
	DIM_HTTP_STATUS HST,
	DIM_USER_AGENT USG
WHERE STG.STATUS = HST.STATUS_NK
  AND STG.USER_AGENT_NK = USG.USER_AGENT_NK
  AND CAST(STG.EVENT_DT AS INTEGER) > $param_epoch_from /* load epoch date */
  AND CAST(STG.EVENT_DT AS INTEGER) < strftime('%s', date('now', 'start of day'))
GROUP BY STG.EVENT_DT, HST.DIM_HTTP_STATUS_ID, USG.DIM_USER_AGENT_ID

Ibi ipamọ data sqlite ngbanilaaye lati kọ awọn ibeere idiju. PẸLU ni igbaradi ti data ati awọn bọtini. Ibeere akọkọ gba gbogbo awọn itọkasi si awọn iwọn.

Ipo naa kii yoo gba laaye ikojọpọ itan naa lẹẹkansi: CAST(STG.EVENT_DT AS INTEGER)> $param_epoch_from, nibiti paramita jẹ abajade ibeere naa
'Yan COALESCE(MAX(EVENT_DT), '3600') BI LAST_EVENT_EPOCH LATI FCT_ACCESS_USER_AGENT_DD'

Ipo naa yoo kojọpọ nikan ni kikun ọjọ: CAST(STG.EVENT_DT AS INTEGER) <strftime('%s', date('bayi','ibẹrẹ ti ọjọ')))

Awọn oju-iwe kika tabi awọn faili ni a ṣe ni ọna alakoko, nipa wiwa aaye kan.

Iroyin

Ni awọn eto iworan idiju, o ṣee ṣe lati ṣẹda awoṣe-meta kan ti o da lori awọn nkan data data, ni agbara ṣakoso awọn asẹ ati awọn ofin apapọ. Ni ipari, gbogbo awọn irinṣẹ to dara ṣe ipilẹṣẹ ibeere SQL kan.

Ni apẹẹrẹ yii, a yoo ṣẹda awọn ibeere SQL ti a ti ṣetan ati fi wọn pamọ bi awọn iwo inu ibi ipamọ data - iwọnyi jẹ awọn ijabọ.

Wiwo

Bluff: Awọn aworan ẹlẹwa ni JavaScript ni a lo bi ohun elo iworan

Lati ṣe eyi, o jẹ dandan lati lọ nipasẹ gbogbo awọn ijabọ nipa lilo PHP ati ṣe agbekalẹ faili html kan pẹlu awọn tabili.

$sqls = array(
'SELECT * FROM RPT_ACCESS_USER_VS_BOT',
'SELECT * FROM RPT_ACCESS_ANNOYING_BOT',
'SELECT * FROM RPT_ACCESS_TOP_HOUR_HIT',
'SELECT * FROM RPT_ACCESS_USER_ACTIVE',
'SELECT * FROM RPT_ACCESS_REQUEST_STATUS',
'SELECT * FROM RPT_ACCESS_TOP_REQUEST_PAGE',
'SELECT * FROM RPT_ACCESS_TOP_REQUEST_REFERRER',
'SELECT * FROM RPT_ACCESS_NEW_REQUEST',
'SELECT * FROM RPT_ACCESS_TOP_REQUEST_SUCCESS',
'SELECT * FROM RPT_ACCESS_TOP_REQUEST_ERROR'
);

Awọn ọpa nìkan visualizes tabili ti esi.

ipari

Lilo itupalẹ wẹẹbu bi apẹẹrẹ, nkan naa ṣe apejuwe awọn ilana pataki lati kọ awọn ile itaja data. Gẹgẹbi a ti le rii lati awọn abajade, awọn irinṣẹ ti o rọrun julọ to fun itupalẹ jinlẹ ati iworan ti data.

Ni ojo iwaju, ni lilo ibi ipamọ yii bi apẹẹrẹ, a yoo gbiyanju lati ṣe iru awọn ẹya bii iyipada awọn iwọn laiyara, metadata, awọn ipele akojọpọ ati isọpọ ti data lati awọn orisun oriṣiriṣi.

Pẹlupẹlu, jẹ ki a wo ni pẹkipẹki ni ọpa ti o rọrun julọ fun ṣiṣakoso awọn ilana ETL ti o da lori tabili kan.

Jẹ ki a pada si koko-ọrọ ti wiwọn didara data ati adaṣe ilana yii.

A yoo ṣe iwadi awọn iṣoro ti agbegbe imọ-ẹrọ ati itọju awọn ibi ipamọ data, fun eyiti a yoo ṣe imuse olupin ibi ipamọ pẹlu awọn orisun to kere, fun apẹẹrẹ, da lori Rasipibẹri Pi.

orisun: www.habr.com

Fi ọrọìwòye kun