真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

php元數(shù)據(jù) php元字符

PHP5教程之文件操作

一 引論

專注于為中小企業(yè)提供成都網(wǎng)站制作、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)阿圖什免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了數(shù)千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

在任何計(jì)算機(jī)設(shè)備中 文件是都是必須的對象 而在web編程中 文件的操作一直是web程序員的頭疼的地方 而 文件的操作在cms系統(tǒng)中這是必須的 非常有用的 我們經(jīng)常遇到生成文件目錄 文件(夾)編輯等操作 現(xiàn)在我把php中的這些函數(shù)做一詳細(xì)總結(jié)并實(shí)例示范如何使用 關(guān)于對應(yīng)的函數(shù)詳細(xì)介紹 請查閱php手冊 此處只總結(jié)重點(diǎn) 和需要注意的地方 (這在php手冊是沒有的 )( lian )

二 目錄操作

首先介紹的是一個(gè)從目錄讀取的函數(shù) opendir() readdir() closedir() 使用的時(shí)候是先打開文件句柄 而后迭代列出:

?php $base_dir = filelist/ ; $fso = opendir($base_dir); echo $base_dir hr/ ; while($flist=readdir($fso)){ echo $flist br/ ; } closedir($fso) ??

這是講返回文件目錄下面的文件已經(jīng)目錄的程序( 文件將返回false)

有時(shí)候需要知道目錄的信息 可以使用dirname($path)和basename($path) 分別返回路徑的目錄部分和文件名名稱部分 可用disk_free_space($path)返回看空間空余空間

創(chuàng)建命令:

mkdir($path )

是權(quán)限碼 在非window下可用umask()函數(shù)設(shè)置

rmdir($path)

將刪除路徑在$path的文件

dir directory 類也是操作文件目錄的重要類 有 個(gè)方法 read rewind close 這是一個(gè)仿面向?qū)ο蟮念?它先使用的是打開文件句柄 然后用指針的方式讀取的 這里看php手冊:

?php$d = dir( /etc/php );echo Handle: $d handle /n ;echo Path: $d path /n ;while (false !== ($entry = $d read())) {??? echo $entry /n ;}$d close();?

輸出:

Handle: Resource id # Path: /etc/php apachecgicli

文件的屬性也非常重要 文件屬性包括創(chuàng)建時(shí)間 最后修改時(shí)間 所有者 文件組 類型 大小等

下面我們重點(diǎn)談文件操作

三 文件操作

A 讀文件

首先是一個(gè)文件看能不能讀取(權(quán)限問題) 或者存在不 我們可以用is_readable函數(shù)獲取信息

?php$file = dirlist php ;if (is_readable($file) == false) {???????? die( 文件不存在或者無法讀取 );} else {???????? echo 存在 ;}?

判斷文件存在的函數(shù)還有file_exists(下面演示) 但是這個(gè)顯然無is_readable全面 當(dāng)一個(gè)文件存在的話可以用

?php$file = filelist php ;if (file_exists($file) == false) {???????? die( 文件不存在 );}$data = file_get_contents($file);echo entities($data);?

但是file_get_contents函數(shù)在較低版本上不支持 可以先創(chuàng)建文件的一個(gè)句柄 然后用指針讀取全部:

$fso = fopen($cacheFile r );???????? $data = fread($fso filesize($cacheFile));???????? fclose($fso);

還有一種方式 可以讀取二進(jìn)制的文件:

$data = implode( file($file));

B 寫文件

和讀取文件的方式一樣 先看看是不是能寫:

?php$file = dirlist php ;if (is_writable($file) == false) {???????? die( 我是雞毛 我不能 );}?

能寫了的話可以使用file_put_contents函數(shù)寫入:

?php $file = dirlist php ; if (is_writable($file) == false) { die( 我是雞毛 我不能 ); } $data = 我是可鄙 我想要 ; file_put_contents ($file $data); ??

file_put_contents函數(shù)在php 中新引進(jìn)的函數(shù)(不知道存在的話用function_exists函數(shù)先判斷一下)低版本的php無法使用 可以使用如下方式:

$f = fopen($file w ); fwrite($f $data); fclose($f);?

替換之

寫文件的時(shí)候有時(shí)候需要鎖定 然后寫:

function cache_page($pageurl $pagedata){ if(!$fso=fopen($pageurl w )){ $this warns( 無法打開緩存文件 );//trigger_error return false; } if(!flock($fso LOCK_EX)){//LOCK_NB 排它型鎖定 $this warns( 無法鎖定緩存文件 );//trigger_error return false; } if(!fwrite($fso $pagedata)){//寫入字節(jié)流 serialize寫入其他格式 $this warns( 無法寫入緩存文件 );//trigger_error return false; } flock($fso LOCK_UN);//釋放鎖定 fclose($fso); return true; }?

C 復(fù)制 刪除文件

php刪除文件非常easy 用unlink函數(shù)簡單操作:

?php $file = dirlist php ; $result = @unlink ($file); if ($result == false) { echo 蚊子趕走了 ; } else { echo 無法趕走 ; } ??

即可

復(fù)制文件也很容易:

?php $file = yang txt ; $newfile = ji txt ; # 這個(gè)文件父文件夾必須能寫 if (file_exists($file) == false) { die ( 小樣沒上線 無法復(fù)制 ); } $result = copy($file $newfile); if ($result == false) { echo 復(fù)制記憶ok ; } ??

可以使用rename()函數(shù)重命名一個(gè)文件夾 其他操作都是這幾個(gè)函數(shù)組合一下就能實(shí)現(xiàn)的

D 獲取文件屬性

我說幾個(gè)常見的函數(shù):

獲取最近修改時(shí)間:

?php $file = test txt ; echo date( r filemtime($file)); ??

返回的說unix的時(shí)間戳 這在緩存技術(shù)常用

相關(guān)的還有獲取上次被訪問的時(shí)間fileatime() filectime()當(dāng)文件的權(quán)限 所有者 所有組或其它 inode 中的元數(shù)據(jù)被更新時(shí)間 fileowner()函數(shù)返回文件所有者

$owner = posix_getpwuid(fileowner($file));

(非window系統(tǒng)) ileperms()獲取文件的權(quán)限

?php$file = dirlist php ;$perms = substr(sprintf( %o fileperms($file)) );echo $perms;?

filesize()返回文件大小的字節(jié)數(shù):

?php

// 輸出類似 somefile txt: bytes

$filename = somefile txt ; echo $filename : filesize($filename) bytes ;

??

獲取文件的全部信息有個(gè)返回?cái)?shù)組的函數(shù)stat()函數(shù):

?php $file = dirlist php ; $perms = stat($file); var_dump($perms); ??

那個(gè)鍵對應(yīng)什么可以查閱詳細(xì)資料 此處不再展開

四 結(jié)束語

lishixinzhi/Article/program/PHP/201311/21262

什么是元數(shù)據(jù)

元數(shù)據(jù)(Meta Data)是關(guān)于數(shù)據(jù)倉庫的數(shù)據(jù),指在數(shù)據(jù)倉庫建設(shè)過程中所產(chǎn)生的有關(guān)數(shù)據(jù)源定義,目標(biāo)定義,轉(zhuǎn)換規(guī)則等相關(guān)的關(guān)鍵數(shù)據(jù)。同時(shí)元數(shù)據(jù)還包含關(guān)于數(shù)據(jù)含義的商業(yè)信息,所有這些信息都應(yīng)當(dāng)妥善保存,并很好地管理。為數(shù)據(jù)倉庫的發(fā)展和使用提供方便。

元數(shù)據(jù)是一種二進(jìn)制信息,用以對存儲在公共語言運(yùn)行庫可移植可執(zhí)行文件 (PE) 文件或存儲在內(nèi)存中的程序進(jìn)行描述。將您的代碼編譯為 PE 文件時(shí),便會將元數(shù)據(jù)插入到該文件的一部分中,而將代碼轉(zhuǎn)換為 Microsoft 中間語言 (MSIL) 并將其插入到該文件的另一部分中。在模塊或程序集中定義和引用的每個(gè)類型和成員都將在元數(shù)據(jù)中進(jìn)行說明。當(dāng)執(zhí)行代碼時(shí),運(yùn)行庫將元數(shù)據(jù)加載到內(nèi)存中,并引用它來發(fā)現(xiàn)有關(guān)代碼的類、成員、繼承等信息。

元數(shù)據(jù)以非特定語言的方式描述在代碼中定義的每一類型和成員。元數(shù)據(jù)存儲以下信息:

程序集的說明。

標(biāo)識(名稱、版本、區(qū)域性、公鑰)。

導(dǎo)出的類型。

該程序集所依賴的其他程序集。

運(yùn)行所需的安全權(quán)限。

類型的說明。

名稱、可見性、基類和實(shí)現(xiàn)的接口。

成員(方法、字段、屬性、事件、嵌套的類型)。

屬性。

修飾類型和成員的其他說明性元素。

一、元數(shù)據(jù)的優(yōu)點(diǎn)

對于一種更簡單的編程模型來說,元數(shù)據(jù)是關(guān)鍵,該模型不再需要接口定義語言 (IDL) 文件、頭文件或任何外部組件引用方法。元數(shù)據(jù)允許 .NET 語言自動以非特定語言的方式對其自身進(jìn)行描述,而這是開發(fā)人員和用戶都無法看見的。另外,通過使用屬性,可以對元數(shù)據(jù)進(jìn)行擴(kuò)展。元數(shù)據(jù)具有以下主要優(yōu)點(diǎn):

自描述文件。

公共語言運(yùn)行庫模塊和程序集是自描述的。模塊的元數(shù)據(jù)包含與另一個(gè)模塊進(jìn)行交互所需的全部信息。元數(shù)據(jù)自動提供 COM 中 IDL 的功能,允許將一個(gè)文件同時(shí)用于定義和實(shí)現(xiàn)。運(yùn)行庫模塊和程序集甚至不需要向操作系統(tǒng)注冊。結(jié)果,運(yùn)行庫使用的說明始終反映編譯文件中的實(shí)際代碼,從而提高應(yīng)用程序的可靠性。

語言互用性和更簡單的基于組件的設(shè)計(jì)。

元數(shù)據(jù)提供所有必需的有關(guān)已編譯代碼的信息,以供您從用不同語言編寫的 PE 文件中繼承類。您可以創(chuàng)建用任何托管語言(任何面向公共語言運(yùn)行庫的語言)編寫的任何類的實(shí)例,而不用擔(dān)心顯式封送處理或使用自定義的互用代碼。

二、屬性。

.NET Framework 允許您在編譯文件中聲明特定種類的元數(shù)據(jù)(稱為屬性)。在整個(gè) .NET Framework 中到處都可以發(fā)現(xiàn)屬性的存在,屬性用于更精確地控制運(yùn)行時(shí)您的程序如何工作。另外,您可以通過用戶定義的自定義屬性向 .NET Framework 文件發(fā)出您自己的自定義元數(shù)據(jù)。有關(guān)更多信息,請參見利用屬性擴(kuò)展元數(shù)據(jù)。

三、元數(shù)據(jù)的意義

說到元數(shù)據(jù)的意義,可以從其應(yīng)用目的來談的。雖然做數(shù)據(jù)倉庫言必稱元數(shù)據(jù),必稱技術(shù)、業(yè)務(wù)元數(shù)據(jù),但其到底用于何處?離開了目標(biāo)去談元數(shù)據(jù),就發(fā)現(xiàn)元數(shù)據(jù)包含太多的東西,因?yàn)樗敲枋鰯?shù)據(jù)的數(shù)據(jù)嘛。

還是那客戶關(guān)系系統(tǒng)來比喻,這個(gè)系統(tǒng)維護(hù)客戶信息當(dāng)然是有目的的,是要用這些信息進(jìn)行一些自動的流程處理、去挖掘一些客戶潛在的價(jià)值、做好客戶服務(wù)。當(dāng)然沒有必要去維護(hù)客戶的生命特征信息,諸如指紋、犯罪史等,這些信息跟客戶關(guān)系管理的目標(biāo)關(guān)系不大。元數(shù)據(jù)也是如此,你可以將所以數(shù)據(jù)的結(jié)構(gòu)、大小、什么時(shí)間創(chuàng)建、什么時(shí)間消亡、被那些人使用等等,這些信息可以延伸得太廣,如果不管目標(biāo),而試圖去建一個(gè)非常完美的元數(shù)據(jù)管理體系,這是一種絕對的"自上而下"做法,必?cái)o疑。

四、元數(shù)據(jù)列舉

基于應(yīng)用,可以將元數(shù)據(jù)分成以下的若干中。

數(shù)據(jù)結(jié)構(gòu):數(shù)據(jù)集的名稱、關(guān)系、字段、約束等;

數(shù)據(jù)部署:數(shù)據(jù)集的物理位置;

數(shù)據(jù)流:數(shù)據(jù)集之間的流程依賴關(guān)系(非參照依賴),包括數(shù)據(jù)集到另一個(gè)數(shù)據(jù)集的規(guī)則;

質(zhì)量度量:數(shù)據(jù)集上可以計(jì)算的度量;

度量邏輯關(guān)系:數(shù)據(jù)集度量之間的邏輯運(yùn)算關(guān)系;

ETL過程:過程運(yùn)行的順序,并行、串行;

數(shù)據(jù)集快照:一個(gè)時(shí)間點(diǎn)上,數(shù)據(jù)在所有數(shù)據(jù)集上的分布情況;

星型模式元數(shù)據(jù):事實(shí)表、維度、屬性、層次等;

報(bào)表語義層:報(bào)表指標(biāo)的規(guī)則、過濾條件物理名稱和業(yè)務(wù)名稱的對應(yīng);

數(shù)據(jù)訪問日志:哪些數(shù)據(jù)何時(shí)被何人訪問;

質(zhì)量稽核日志:何時(shí)、何度量被稽核,其結(jié)果;

數(shù)據(jù)裝載日志:哪些數(shù)據(jù)何時(shí)被何人裝載;

五、元數(shù)據(jù)開發(fā)應(yīng)用的標(biāo)準(zhǔn)化框架

1、數(shù)字圖書館資源組織框架

2. 元數(shù)據(jù)開發(fā)應(yīng)用框架

2.1 元數(shù)據(jù)的基本意義 Metadata(元數(shù)據(jù))是“關(guān)于數(shù)據(jù)的數(shù)據(jù)”;

元數(shù)據(jù)為各種形態(tài)的數(shù)字化信息單元和資源集合提供規(guī)范、普遍的描述方法和檢索工具;

元數(shù)據(jù)為分布的、由多種數(shù)字化資源有機(jī)構(gòu)成的信息體系(如數(shù)字圖書館)提供整合的工具與紐帶。

離開元數(shù)據(jù)的數(shù)字圖書館將是一盤散沙,將無法提供有效的檢索和處理。

3. 元數(shù)據(jù)應(yīng)用環(huán)境

3.1 Metadata的應(yīng)用目的

(1)確認(rèn)和檢索(Discovery andentification),主要致力于如何幫助人們檢索和確認(rèn)所需要的資源,數(shù)據(jù)元素往往限于作者、標(biāo)題、主題、位置等簡單信息,Dublin Core是其典型代表。

(2)著錄描述(Cataloging),用于對數(shù)據(jù)單元進(jìn)行詳細(xì)、全面的著錄描述,數(shù)據(jù)元素囊括內(nèi)容、載體、位置與獲取方式、制作與利用方法、甚至相關(guān)數(shù)據(jù)單元方面等,數(shù)據(jù)元素?cái)?shù)量往往較多,MARC、GILS和FGDC/CSDGM是這類Metadata的典型代表。

(3)資源管理(Resource Administration),支持資源的存儲和使用管理,數(shù)據(jù)元素除比較全面的著錄描述信息外,還往往包括權(quán)利管理(Rights/Privacy Management)、電子簽名(Digital Signature)、資源評鑒(Seal of Approval/Rating)、使用管理(Access Management)、支付審計(jì)(Payment and Accounting)等方面的信息。

(4)資源保護(hù)與長期保存(Preservation and Archiving),支持對資源進(jìn)行長期保存,數(shù)據(jù)元素除對資源進(jìn)行描述和確認(rèn)外,往往包括詳細(xì)的格式信息、制作信息、保護(hù)條件、轉(zhuǎn)換方式(Migration Methods)、保存責(zé)任等內(nèi)容。

3.2 Metadata在不同領(lǐng)域的應(yīng)用 根據(jù)不同領(lǐng)域的數(shù)據(jù)特點(diǎn)和應(yīng)用需要,90年代以來,許多Metadata格式在各個(gè)不同領(lǐng)域出現(xiàn)

例如:

網(wǎng)絡(luò)資源:Dublin Core、IAFA Template、CDF、Web Collections

文獻(xiàn)資料:MARC(with 856 Field),Dublic Core

人文科學(xué):TEI Header

社會科學(xué)數(shù)據(jù)集:ICPSR SGML Codebook

博物館與藝術(shù)作品:CIMI、CDWA、RLG REACH Element Set、VRA Core

政府信息:GILS

地理空間信息:FGDC/CSDGM

數(shù)字圖像:MOA2 metadata、CDL metadata、Open Archives Format、VRA Core、NISO/CLIR/RLG Technical Metadata for Images

檔案庫與資源集合:EAD

技術(shù)報(bào)告:RFC 1807

連續(xù)圖像:MPEG-7

3.3 Metadata格式的應(yīng)用程度

不同領(lǐng)域的Metadata處于不同的標(biāo)準(zhǔn)化階段:

在網(wǎng)絡(luò)資源描述方面,Dublin Core經(jīng)過多年國際性努力,已經(jīng)成為一個(gè)廣為接受和應(yīng)用的事實(shí)標(biāo)準(zhǔn);

在政府信息方面,由于美國政府大力推動和有關(guān)法律、標(biāo)準(zhǔn)的實(shí)行,GILS已經(jīng)成為政府信息描述標(biāo)準(zhǔn),并在世界若干國家得到相當(dāng)程度的應(yīng)用,與此類似的還有地理空間信息處理的FGDC/CSDGM;

但在某些領(lǐng)域,由于技術(shù)的迅速發(fā)展變化,仍然存在多個(gè)方案競爭,典型的是數(shù)字圖像的Metadata,現(xiàn)在提出的許多標(biāo)準(zhǔn)都處于實(shí)驗(yàn)和完善的階段。

3.4 Metadata格式“標(biāo)準(zhǔn)化”程度問題

Metadata開發(fā)應(yīng)用經(jīng)驗(yàn)表明,很難有一個(gè)統(tǒng)一的Metadata格式來滿足所有領(lǐng)域的數(shù)據(jù)描述需要;即使在同一個(gè)領(lǐng)域,也可能為了不同目的而需要不同的但可相互轉(zhuǎn)換的Metadata格式。

同時(shí),統(tǒng)一的集中計(jì)劃式的Metadata格式標(biāo)準(zhǔn)也不適合Internet環(huán)境,不利于充分利用市場機(jī)制和各方面力量。

但在同一領(lǐng)域,應(yīng)爭取“標(biāo)準(zhǔn)化”,在不同領(lǐng)域,應(yīng)妥善解決不同格式的互操作問題。

4. 元數(shù)據(jù)結(jié)構(gòu)

4.1 總體結(jié)構(gòu)定義方式 一個(gè)Metadata格式由多層次的結(jié)構(gòu)予以定義:

(1)內(nèi)容結(jié)構(gòu)(Content Structure),對該Metadata的構(gòu)成元素及其定義標(biāo)準(zhǔn)進(jìn)行描述。

(2)句法結(jié)構(gòu)(Syntax Structure),定義Metadata結(jié)構(gòu)以及如何描述這種結(jié)構(gòu)。

(3)語義結(jié)構(gòu)(Semantic Structure),定義Metadata元素的具體描述方法。

4.2 內(nèi)容結(jié)構(gòu)

內(nèi)容結(jié)構(gòu)定義Metadata的構(gòu)成元素,可包括: 描述性元素、技術(shù)性元素、管理性元素、結(jié)構(gòu)性元素(例如與編碼語言、Namespace、數(shù)據(jù)單元等的鏈接)。

這些數(shù)據(jù)元素很可能依據(jù)一定標(biāo)準(zhǔn)來選取,因此元數(shù)據(jù)內(nèi)容結(jié)構(gòu)中需要對此進(jìn)行說明,例如MARC記錄所依據(jù)的ISBD,EAD所參照的ISAD(G),ICPSR所依據(jù)的ICPSR Data Preparation Manual。

4.3 句法結(jié)構(gòu)

句法結(jié)構(gòu)定義格式結(jié)構(gòu)及其描述方式,例如元素的分區(qū)分段組織、元素選取使用規(guī)則、元素描述方法(例如Dublin Core采用ISO/IEC 11179標(biāo)準(zhǔn))、元素結(jié)構(gòu)描述方法(例如MARC記錄結(jié)構(gòu)、SGML結(jié)構(gòu)、XML結(jié)構(gòu))、結(jié)構(gòu)語句描述語言(例如EBNF Notation)等。

有時(shí),句法結(jié)構(gòu)需要指出元數(shù)據(jù)是否與所描述的數(shù)據(jù)對象捆綁在一起、或作為單獨(dú)數(shù)據(jù)存在但以一定形式與數(shù)據(jù)對象鏈接,還可能描述與定義標(biāo)準(zhǔn)、DTD結(jié)構(gòu)和Namespace等的鏈接方式。

4.4 語義結(jié)構(gòu) 語義結(jié)構(gòu)定義元素的具體描述方法,例如 描述元素時(shí)所采用的標(biāo)準(zhǔn)、最佳實(shí)踐(Best Practices)或自定義的描述要求(Instructions)。

有些元數(shù)據(jù)格式本身定義了語義結(jié)構(gòu),而另外一些則由具體采用單位規(guī)定語義結(jié)構(gòu),例如Dublin Core建議日期元素采用ISO 8601、資源類型采用Dublin Core Types、數(shù)據(jù)格式可采用MIME、識別號采用URL或DOI或ISBN;

又如OhioLink在使用VRA Core時(shí)要求主題元素使用AAT、TGM和TGN,人名元素用ULAN。

5. 元數(shù)據(jù)編碼語言與制作方式

5.1 元數(shù)據(jù)編碼語言

元數(shù)據(jù)編碼語言(Metadata Encoding Languages)指對元數(shù)據(jù)元素和結(jié)構(gòu)進(jìn)行定義和描述的具體語法和語義規(guī)則,常稱為定義描述語言(DDL)。

在元數(shù)據(jù)發(fā)展初期人們常使用自定義的記錄語言(例如MARC)或數(shù)據(jù)庫記錄結(jié)構(gòu)(如ROADS等),但隨著元數(shù)據(jù)格式的增多和互操作的要求,人們開始采用一些標(biāo)準(zhǔn)化的DDL來描述元數(shù)據(jù),例如SGML和XML,其中以XML最有潛力。

5.2 元數(shù)據(jù)制作方式

(1)專門編制模塊(例如對MARC、GILS、FGDC等)

(2)數(shù)據(jù)處理時(shí)自動編制(例如對Dublin Core等)

(3)數(shù)據(jù)物理處理時(shí)自動編制(例如數(shù)字圖像掃描時(shí)的某些元數(shù)據(jù)參數(shù))

(4)共享元數(shù)據(jù)(例如OCLC/CORC、IMESH

6. 元數(shù)據(jù)互操作性

6.1 元數(shù)據(jù)互操作性問題

由于不同的領(lǐng)域(甚至同一領(lǐng)域)往往存在多個(gè)元數(shù)據(jù)格式,當(dāng)在用不同元數(shù)據(jù)格式描述的資源體系之間進(jìn)行檢索、資源描述和資源利用時(shí),就存在元數(shù)據(jù)的互操作性問題(Interoperability):

多個(gè)不同元數(shù)據(jù)格式的釋讀、轉(zhuǎn)換和由多個(gè)元數(shù)據(jù)格式描述的數(shù)字化信息資源體系之間的透明檢索。

6.2 元數(shù)據(jù)格式映射

利用特定轉(zhuǎn)換程序?qū)Σ煌獢?shù)據(jù)元格式進(jìn)行轉(zhuǎn)換,稱為元數(shù)據(jù)映射(Metadata Mapping/Crosswalking)。

目前已有大量的轉(zhuǎn)換程序存在,供若干流行元數(shù)據(jù)格式之間的轉(zhuǎn)化,例如

Dublin Core與USMARC; Dublin Core與EAD

Dublin Core與GILS; GILS與MARC TEI

Header與MARC FGDC與MARC

也可利用一種中介格式對同一格式框架下的多種元數(shù)據(jù)格式進(jìn)行轉(zhuǎn)換,例如UNIverse項(xiàng)目利用GRS格式進(jìn)行各種MARC格式和其它記錄格式的轉(zhuǎn)換。格式映射轉(zhuǎn)換準(zhǔn)確、轉(zhuǎn)換效率較高。不過,這種方法在面對多種元數(shù)據(jù)格式并存的開放式環(huán)境中的應(yīng)用效率明顯受到限制。

6.3 標(biāo)準(zhǔn)描述框架

解決元數(shù)據(jù)互操作性的另一種思路是建立一個(gè)標(biāo)準(zhǔn)的資源描述框架,用這個(gè)框架來描述所有元數(shù)據(jù)格式,那么只要一個(gè)系統(tǒng)能夠解析這個(gè)標(biāo)準(zhǔn)描述框架,就能解讀相應(yīng)的Metadata格式. 實(shí)際上,XML和RDF從不同角度起著類似的作用。

XML通過其標(biāo)準(zhǔn)的DTD定義方式,允許所有能夠解讀XML語句的系統(tǒng)辨識用XML_DTD定義的Metadata格式,從而解決對不同格式的釋讀問題。

RDF定義了由Resources、Properties和Statements等三種對象組成的基本模型,其中Resources和Properties關(guān)系類似于E-R模型,而Statements則對該關(guān)系進(jìn)行具體描述。

RDF通過這個(gè)抽象的數(shù)據(jù)模型為定義和使用元數(shù)據(jù)建立一個(gè)框架,元數(shù)據(jù)元素可看成其描述的資源的屬性。

進(jìn)一步地,RDF定義了標(biāo)準(zhǔn)Schema,規(guī)定了聲明資源類型、聲明相關(guān)屬性及其語義的機(jī)制,以及定義屬性與其它資源間關(guān)系的方法。另外,RDF還規(guī)定了利用XML Namespace方法調(diào)用已有定義規(guī)范的機(jī)制,

6.4 數(shù)字對象方式

建立包含元數(shù)據(jù)及其轉(zhuǎn)換機(jī)制的數(shù)字對象可能從另一個(gè)角度解決元數(shù)據(jù)互操作性問題。

Cornell/FEDORA項(xiàng)目提出由內(nèi)核(Structural Kernel)和功能傳播層(Disseminator Layer)組成的復(fù)合數(shù)字對象。

內(nèi)核里,可以容納以比特流形式存在的文獻(xiàn)內(nèi)容、描述該文獻(xiàn)的元數(shù)據(jù)、以及對這個(gè)文獻(xiàn)及元數(shù)據(jù)進(jìn)行存取控制的有關(guān)數(shù)據(jù)。

功能傳播層,主功能傳播器(PrimitiveDisseminator)支持有關(guān)解構(gòu)內(nèi)核數(shù)據(jù)類型和對內(nèi)核數(shù)據(jù)讀取的服務(wù)功能,還可有內(nèi)容類型傳播器(Content-Type Disseminators),它們可內(nèi)嵌元數(shù)據(jù)格式轉(zhuǎn)換機(jī)制。

例如,在一個(gè)數(shù)字對象的內(nèi)核中存有MARC格式的元數(shù)據(jù),在功能傳播層裝載有請求Dublin Core格式及其轉(zhuǎn)換服務(wù)的內(nèi)容類型傳播器。當(dāng)數(shù)字對象使用者要求讀取以Dublin Core表示的元數(shù)據(jù)時(shí),相應(yīng)的內(nèi)容類型傳播器將通過網(wǎng)絡(luò)請求存儲有Dublin Core及其轉(zhuǎn)換服務(wù)程序的數(shù)字對象,然后將被請求數(shù)字對象中的MARC形式元數(shù)據(jù)轉(zhuǎn)換為Dublin Core形式,在輸出給用戶。

7. 幾點(diǎn)建議

跟蹤元數(shù)據(jù)發(fā)展、積極參與制定元數(shù)據(jù)標(biāo)準(zhǔn)、加快元數(shù)據(jù)應(yīng)用、注意國際接軌。

加快研究有效利用元數(shù)據(jù)進(jìn)行檢索(包括異構(gòu)系統(tǒng)透明檢索)、相關(guān)性學(xué)習(xí)、個(gè)性化處理等的機(jī)制。

加快研究元數(shù)據(jù)與數(shù)字對象和數(shù)字化資源體系有機(jī)整合的途徑與方法。

推進(jìn)研究利用元數(shù)據(jù)進(jìn)行基于知識的數(shù)據(jù)組織和知識發(fā)現(xiàn)。

壯實(shí)學(xué)數(shù)據(jù)技術(shù)07:元數(shù)據(jù)

hi,米娜桑,我是大家的怪力少女趙壯實(shí)!

又是一個(gè)美好的周六的早上,今天我們來聊聊——元數(shù)據(jù)!

元數(shù)據(jù)也是近兩年才火熱起來的產(chǎn)品崗位和概念,因?yàn)槠蛴诤髠?cè),相比于數(shù)據(jù)分析、數(shù)據(jù)BI、用戶分層、歸因等酷炫的名詞下,元數(shù)據(jù)就像一朵白蓮花。

01?? 什么是元數(shù)據(jù)?

好吧,元數(shù)據(jù)為什么可以睥睨一切呢?因?yàn)樗恰霸睌?shù)據(jù)。

啥是“元數(shù)據(jù)”——metadata?

壯實(shí)見到這個(gè)詞語,第一次流下了久別重逢的淚水,甚至有點(diǎn)想笑,莫非,元數(shù)據(jù),是一位熟悉現(xiàn)代主義思潮的大佬起的名字?

好的,壯實(shí)先從人文視角解釋一下什么叫做“元”。

元,依舊指的是原始、原初的意思。我們那元敘事、元數(shù)據(jù)、元小說給大家講講什么是“元”。

1.“元”+“敘事”=元敘事

對于敘事的完整解釋,即對歷史的意義、經(jīng)歷和知識的敘述

2.“元”+“數(shù)據(jù)”=元數(shù)據(jù)

有關(guān)于數(shù)據(jù)的數(shù)據(jù)

3.“元”+“小說”=元小說

元小說,作家自覺地暴露小說的虛構(gòu)過程,產(chǎn)生間離效果,進(jìn)而讓接受者明白,小說就是虛構(gòu),不能把小說當(dāng)作現(xiàn)實(shí)。這樣,虛構(gòu)在小說中也就獲得了本體的意義。

好吧,簡單來說,元就是這個(gè)東西原始的框架、元素。在現(xiàn)代主義大工業(yè)的背景下,人類一切進(jìn)入了“秩序模式”,所以需要“元”。所以就有了萬物“元”化。

是的,大家是不是最近還會聽到一個(gè)詞,叫做“元認(rèn)知”。沒什么神奇的,套用概念,元認(rèn)識就是關(guān)于認(rèn)知的認(rèn)知,也許善友老師“第一性原理”和叫獸“時(shí)間的朋友”或許是“元認(rèn)知”?

那元數(shù)據(jù),我們就好理解了,就是“關(guān)于數(shù)據(jù)的數(shù)據(jù)”,有了元數(shù)據(jù),它可以讓我們的數(shù)據(jù)生產(chǎn)、使用更加秩序化。

數(shù)據(jù)生產(chǎn),有的人會叫做“后臺元數(shù)據(jù)”:指導(dǎo)數(shù)據(jù)清洗裝載工作。

數(shù)據(jù)使用,有的人會分為“前端元數(shù)據(jù)” :描述性、幫助我們更加流暢的使用報(bào)表和查詢工具。

對于元數(shù)據(jù)的分類,我們可以分為以下三類:

業(yè)務(wù)元數(shù)據(jù)? 從業(yè)務(wù)層面描述元數(shù)據(jù)。

技術(shù)元數(shù)據(jù)? 數(shù)據(jù)技術(shù)層面上的各種統(tǒng)計(jì)信息,包含數(shù)據(jù)類型、長度、血緣沿襲、數(shù)據(jù)剖析結(jié)果等。

處理過程元數(shù)據(jù)? ETL自身執(zhí)行結(jié)果統(tǒng)計(jì)信息,如多少行被加載、多少行數(shù)據(jù)被丟棄以及數(shù)據(jù)加載時(shí)間等。

02? ? 元數(shù)據(jù)核心理念和關(guān)鍵要素

話不多說,我們來上阿里云官方ppt:

好的,如果你們看不懂,壯實(shí)還畫了一個(gè)圖:

原來的數(shù)據(jù)生產(chǎn)-使用流程

涉及的相關(guān)的元數(shù)據(jù)

03? ? 元數(shù)據(jù)產(chǎn)品

目前國內(nèi)的元數(shù)據(jù)管理工具大概有三類。

一是像IBM、CA等公司都提供的專門工具,比如IBM收購Ascential得到的MetaStage,CA的DecisionBase;

二是像DAG的MetaCenter,開源產(chǎn)品Pentaho Metadata,它們不依托于某項(xiàng)BI產(chǎn)品,是一種第三方的元數(shù)據(jù)管理工具;

開源產(chǎn)品Pentaho Metadata示意圖

三是像普元、石竹這樣的集成商也有自己的元數(shù)據(jù)管理工具:普元MetaCube、新炬網(wǎng)絡(luò)元數(shù)據(jù)管理系統(tǒng)、石竹MetaOne等。

普元元數(shù)據(jù)驅(qū)動的微服務(wù)架構(gòu):

新炬網(wǎng)絡(luò)元數(shù)據(jù)管理系統(tǒng):

;c=indexa=listscatid=188

石竹MetaOne產(chǎn)品圖:

專門的元數(shù)據(jù)管理工具,對自家產(chǎn)品兼容較好,一旦涉及跨系統(tǒng)管理,就不盡如人意了。

04? ? 元數(shù)據(jù)的功能和價(jià)值

如果你問我,元數(shù)據(jù)的功能和價(jià)值在哪里?目前,業(yè)界開展了一些實(shí)踐:

1、血緣分析:向上、向下表級、字段級別的追溯數(shù)據(jù)。血緣分析可以讓您輕松知道:“我正在查看的報(bào)告數(shù)據(jù)來源是什么?”、“數(shù)據(jù)經(jīng)過哪些轉(zhuǎn)換處理?”、“銷售額”從包含稅費(fèi)更改為不包括稅費(fèi),哪些下游字段受到了影響。血緣分析可以滿足許多行業(yè)(包括醫(yī)療、金融、銀行和制造業(yè)等)對所呈現(xiàn)數(shù)據(jù)的特殊監(jiān)管及合規(guī)性要求。

?2、指標(biāo)一致性分析:定期分析指標(biāo)定義是否和實(shí)際情況一致。大佬會上對不齊數(shù)據(jù)是何等的尷尬。。。。

?3、實(shí)體關(guān)聯(lián)查詢:事實(shí)表與維度表的代理鍵自動關(guān)聯(lián)。

05? ? 后記

打破一切:從人文后現(xiàn)代主義到數(shù)據(jù)后現(xiàn)代主義。

20世紀(jì)60年代,德國、法國、美國等出現(xiàn)了反西方近現(xiàn)代體系哲學(xué)傾向的思潮,學(xué)術(shù)上稱之為“后現(xiàn)代主義”。你也許不知道啥是后現(xiàn)代主義,來一張圖感受一下:

對!就是達(dá)利的《記憶的永恒》。

后現(xiàn)代主義就是一種用無序反對有序,用個(gè)人囈語反對宏大敘事、用解構(gòu)反對結(jié)構(gòu)的一種精神。

當(dāng)代美國活躍的后現(xiàn)代主義者之一格里芬就說:“如果說后現(xiàn)代主義這一詞匯在使用時(shí)可以從不同方面找到共同之處的話, 那就是,它指的是一種廣泛的情緒,而不是一種共同的教條———即一種認(rèn)為人類可以而且必須超越現(xiàn)代的情緒?!?/p>

所有理論的背后,都是這個(gè)時(shí)代的主流認(rèn)知+情緒。數(shù)據(jù)也不例外。我們來看看《壯實(shí)學(xué)數(shù)據(jù)技術(shù)01》中的數(shù)據(jù)倉庫兩位大佬之爭,就知道人們在反復(fù)橫跳在秩序和速度中。

所以,我們今天要考慮,元數(shù)據(jù)在今天的合理性是什么?

在雜亂數(shù)據(jù)被管理起來之后,是不是在復(fù)雜、程式化上需要做做減法?

數(shù)據(jù)多≠信息多。如何把數(shù)據(jù)變?yōu)樾畔?,是每一個(gè)數(shù)據(jù)人需要持續(xù)思考的事情。


名稱欄目:php元數(shù)據(jù) php元字符
本文地址:http://weahome.cn/article/doepchh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部