999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于NoSQL的XBRL數(shù)據(jù)存儲研究與應(yīng)用

2015-07-05 15:54:59曾志勇劉建業(yè)
中國管理信息化 2015年19期
關(guān)鍵詞:分類

曾志勇,劉建業(yè)

(云南財經(jīng)大學(xué)信息管理中心,昆明 650221)

基于NoSQL的XBRL數(shù)據(jù)存儲研究與應(yīng)用

曾志勇,劉建業(yè)

(云南財經(jīng)大學(xué)信息管理中心,昆明 650221)

XBRL是XML語言在商務(wù)報告領(lǐng)域的擴展和應(yīng)用,隨著XBRL在世界范圍內(nèi)的大規(guī)模普及,加入XBRL組織的公司越來越多,每年產(chǎn)生的XBRL報表數(shù)量成倍增長。面對海量XBRL數(shù)據(jù),探索和研究了在NoSQL環(huán)境下對XBRL數(shù)據(jù)的進(jìn)行有效的存儲、查詢和分析等問題。

可擴展商業(yè)報告語言;醞葬灶早燥閱月;月澤燥灶文檔;數(shù)據(jù)轉(zhuǎn)換

0 引言

XBRL是XML語言在商務(wù)報告領(lǐng)域的擴展和應(yīng)用,其最主要的思想是將XML語言中的元素標(biāo)簽實例化,給出所有出現(xiàn)在XML文件中的元素名稱定義和屬性定義,使其符合商務(wù)報告的要求。伴隨著XBRL在商務(wù)報告領(lǐng)域的成功,越來越多的XBRL組織相繼成立,經(jīng)過國際上大約450個主要公司、組織和政府機構(gòu)組成的非營利組織對XBRL標(biāo)準(zhǔn)的發(fā)展,XBRL現(xiàn)已成為一個統(tǒng)一的、開放的、免費的標(biāo)準(zhǔn),并被很多國際和地區(qū)投入使用。隨著XBRL在世界范圍內(nèi)的大規(guī)模普及,加入XBRL組織的公司越來越多,每年產(chǎn)生的XBRL報表數(shù)量成倍增長。面對如此龐大的數(shù)據(jù)量,無疑會大大增加投資者和分析師搜尋和處理信息的成本,因此,如何有效的對XBRL數(shù)據(jù)進(jìn)行存儲、查詢、分析,是一個值得探索和研究的問題。

XBRL數(shù)據(jù)具有結(jié)構(gòu)類似、數(shù)據(jù)量大、更新速度快的特點,要想實時地提取和分析數(shù)據(jù),傳統(tǒng)的集中式數(shù)據(jù)存儲方式很難滿足這方面的要求,因此,采用分布式的存儲和計算成為處理該類型數(shù)據(jù)的必然選擇。

MongoDB屬于NoSQL數(shù)據(jù)庫的一種,由C++語言編寫,是由MongoDB公司提供的一個開源的、模式自由的、面向文檔存儲的、分布式的數(shù)據(jù)庫,是一個介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間的產(chǎn)品,旨在為Web應(yīng)用提供可擴展的高性能數(shù)據(jù)存儲解決方案。MongoDB支持一種類似Json的Bson格式的數(shù)據(jù)結(jié)構(gòu),這種松散的數(shù)據(jù)結(jié)構(gòu)可以存儲比較復(fù)雜的數(shù)據(jù)類型,與XML數(shù)據(jù)有著天然的對應(yīng)關(guān)系,非常適合文檔化格式數(shù)據(jù)的存儲和查詢。同時,Bson相比XML更輕量級,轉(zhuǎn)換代價較小,因此,研究在MongoDB中對海量的XBRL數(shù)據(jù)的存儲和計算問題有著重要的意義。

1 XBRL財務(wù)報告

XBRL是eXtensible Business Reporting Language的縮寫,中文譯作“可擴展商業(yè)報告語言”,是一種基于XML(eXtensible Markup Language,可擴展標(biāo)記語言),用于財務(wù)報告編制、披露和使用的計算機語言,目前用于非結(jié)構(gòu)化信息處理,是一套公開、免費的標(biāo)準(zhǔn),也是財務(wù)信息交換和處理的最新公認(rèn)的標(biāo)準(zhǔn)和技術(shù)。XBRL主要應(yīng)用于財務(wù)報告的自動化處理,為財務(wù)報告信息的準(zhǔn)備、生成、分析和傳輸提供了便利,有助于商業(yè)信息的編制、分類和交流。與傳統(tǒng)的財務(wù)報告方式(如PDF文檔)相比,基于XBRL分類標(biāo)準(zhǔn)的財務(wù)報告可以改善財務(wù)報告的披露效率,提高財務(wù)信息的準(zhǔn)確性、可比性以及透明性,從而有利于數(shù)據(jù)的分析和決策的制定。XBRL財務(wù)報告主要由分類標(biāo)準(zhǔn)(Taxonomy)與報告實例(Instance)組成。XBRL分類標(biāo)準(zhǔn)整體相當(dāng)于商業(yè)信息的詞典,企業(yè)根據(jù)這一詞典,以符合XBRL分類標(biāo)準(zhǔn)語法約束的數(shù)據(jù)信息對詞典中定義的元素進(jìn)行賦值,從而創(chuàng)建出XBRL特殊格式的報告文檔,即為報告實例。

2 MongoDB簡介

MongoDB是一個功能強大的、靈活的、可擴展的通用數(shù)據(jù)庫系統(tǒng),它具有二級索引,范圍查詢,排序,聚合以及地理空間索引等功能。為了更好的實現(xiàn)擴展性,MongoDB拋棄了關(guān)系模型。因此,MongoDB是一個面向文檔的數(shù)據(jù)庫。在MongoDB里,使用“文檔”這種更容易擴展的模型代替了關(guān)系數(shù)據(jù)庫里中“行”的概念。MongoDB的文檔(document)結(jié)構(gòu)中,允許嵌套的文檔和數(shù)組,這種面向文檔的方式使得在單一的記錄里面表示復(fù)雜的層級關(guān)系成為可能。

總體而言,MongoDB是一個介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間的產(chǎn)品,他支持的數(shù)據(jù)結(jié)構(gòu)是類似Json的Bson這種松散的數(shù)據(jù)格式,因此可以比較方便的存儲較為復(fù)雜的數(shù)據(jù)類型。MongoDB支持的查詢語言非常強大,其語法有點類似于面向?qū)ο蟮牟樵冋Z言,幾乎可以實現(xiàn)類似關(guān)系數(shù)據(jù)庫單表查詢的絕大部分功能,同時支持對數(shù)據(jù)建立索引。

3 XBRL-Bson數(shù)據(jù)轉(zhuǎn)換引擎

使用MongoDB存儲XBRL實例文件,首先需要將XBRL文件轉(zhuǎn)換成MongoDB能夠存儲的Bson格式的數(shù)據(jù)類型,本文設(shè)計并開發(fā)XBRL-Bson數(shù)據(jù)轉(zhuǎn)換引擎,用于將XBRL文件轉(zhuǎn)換成Bson格式的文檔并存儲到MongoDB數(shù)據(jù)庫中。

3.1 XBRL驗證

在對XBRL數(shù)據(jù)進(jìn)行轉(zhuǎn)換之前,首先需要對其進(jìn)行驗證。驗證的主要目的是檢查XBRL相關(guān)文件(包括分類標(biāo)準(zhǔn)文件與實例文件)是否符合XBRL規(guī)范。因此,XBRL驗證的主要工作包括兩個步驟:首先需要按照XBRL分類標(biāo)準(zhǔn)模式定義文件(Schema)來校驗XBRL實例文件的語法,該步驟先對提交的XBRL文檔是否滿足基本的XML格式要求進(jìn)行檢查,然后根據(jù)XBRL分類標(biāo)準(zhǔn)模式定義文件對XBRL實例文件中的元素進(jìn)行校驗,主要驗證XBRL分類文件中的元素定義是否與模式定義文件中定義的元素相符合,目前,XML驗證工具的發(fā)展已較為成熟,常用的XML分析器包括:SAX、Xerces、MSXML等,本文選用微軟公司的MSXML工具實現(xiàn)XML文檔的解析;完成XBRL的結(jié)構(gòu)校驗之后,需要對提交的XBRL實例文件進(jìn)行語法校驗,驗證XBRL實例文件是否符合分類標(biāo)準(zhǔn)鏈接庫的語義要求,該步驟按照XBRL分類標(biāo)準(zhǔn)鏈接庫(Link base)來校驗XBRL實例文件的語義。

3.2 XBRL-Bson數(shù)據(jù)轉(zhuǎn)換引擎

MongoDB的文件存儲格式為Bson,使用了類似于Json風(fēng)格語法。XBRL文檔轉(zhuǎn)Bson文檔的轉(zhuǎn)換規(guī)則定義:

規(guī)則一:XBRL元素中的文本內(nèi)容轉(zhuǎn)換成Bson文檔對應(yīng)的值類型。

規(guī)則二:既無屬性又無子元素的單個XBRL元素轉(zhuǎn)換為含有一個鍵值對的Bson文檔(document),元素名稱為鍵(key),元素中的文本內(nèi)容為值(value)。

規(guī)則三:具有屬性但無子元素的單個XBRL元素轉(zhuǎn)換為含有一個鍵值對的Bson文檔(document),元素名稱為鍵(key),元素的屬性及元素中的文本內(nèi)容構(gòu)成的Bson文檔為值(value)。

規(guī)則四:既具有屬性又具有子元素的單個XBRL元素轉(zhuǎn)換為含有一個鍵值對的Bson文檔(document),元素名稱為鍵(key),元素的屬性及其子元素構(gòu)成的Bson文檔為值(value)。

規(guī)則五:屬于同一層級的所有具有相同名稱的多個XBRL元素,轉(zhuǎn)換為含有一個鍵值對的Bson文檔(document),元素名稱為鍵(key),元素屬性及其子標(biāo)簽構(gòu)成的Bson文檔數(shù)組(array)為值(value)。

基于上述XBRL-Bson轉(zhuǎn)換規(guī)則,設(shè)計轉(zhuǎn)換算法,算法偽代碼如下:

算法:CreateBsonFromXbrlElement,根據(jù)XBRL元素創(chuàng)建Bson文檔。

輸入:XBRL元素,xElement。

輸出:Bson文檔,bsonElement。

方法:

(1)創(chuàng)建一個空的Bson元素bsonElement;

(2)創(chuàng)建標(biāo)識isDocValue,用于標(biāo)識轉(zhuǎn)換后的Bson元素的值部分為文檔(document)還是普通值(value);

(3)創(chuàng)建一個表示Bson元素的值部分為Bson文檔:ocumentValue;

(4)ifxElement有屬性,將其所有屬性加入到Bson元素的值部文檔documentValue中;

(5)ifxElement有子元素,then;

(6)for xElement的每個子元素child;

(7)if child不存在于同級別文檔中,then;

(8)遞歸:child轉(zhuǎn)換為Bson文檔后直接追加到父XBRL元素的Bson元素的值部文檔documentValue中;

(9)else遞歸:將child轉(zhuǎn)換為Bson文檔后添加到父XBRL元素的Bson元素的值部文檔中相應(yīng)的文檔數(shù)組(BsonArray)中;

(10)endfor;

(11)if xElement無子元素,但有屬性,then;

(12)將xElement中的文本內(nèi)容追加到Bson元素的值部文檔(document)中;

(13)ifxElement既無子元素,又無屬性,then;

(14)設(shè)置標(biāo)識isDocValue=false;

(15)根據(jù)當(dāng)前XBRL元素的情況(是否有子元素與屬性),建立當(dāng)前XBRL元素對應(yīng)的Bson元素并返回bsonElement。

XBRL-Bson數(shù)據(jù)轉(zhuǎn)換工具運行界面如圖1所示。

圖1 XBRL-Bson數(shù)據(jù)轉(zhuǎn)換工具運行界面

4 結(jié)語

使用MongoDB存儲XBRL數(shù)據(jù),可充分利用MongoDB分布式的存儲與計算特性,解決海量XBRL數(shù)據(jù)的存儲與計算問題。本文通過對XBRL文檔進(jìn)行分析,設(shè)計并實現(xiàn)了XBRL-Bson數(shù)據(jù)轉(zhuǎn)換工具,通過該工具,可方便的將XBRL文檔轉(zhuǎn)換成MongoDB所需要的Bson格式數(shù)據(jù),實現(xiàn)XBRL數(shù)據(jù)到MongoDB的存儲。

[1]呂志明.XBRL財務(wù)報告研究[M].北京:經(jīng)濟科學(xué)出版社,2012:20-38.

[2]吳忠生,張?zhí)煳鳎?基于領(lǐng)域本體的XBRL財務(wù)報告轉(zhuǎn)換研究[J].計算機應(yīng)用研究,2013,12(30):3643-3646.

[3]葛永琪,呂科.基于.NET的XBRL數(shù)據(jù)轉(zhuǎn)換引擎研究與實現(xiàn)[J].計算機技術(shù)與發(fā)展,2009,2(19):148-150.

[4][美]霍多羅夫.MongoDB權(quán)威指南[M].第2版(影印版).南京:東南大學(xué)出版社,2014:50-98.

[5]郭遠(yuǎn)威.大數(shù)據(jù)存儲MongoDB實戰(zhàn)指南[M].北京:人民郵電出版社,2015:61-89.

10.3969/j.issn.1673-0194.2015.19.027

F232

A

1673-0194(2015)19-0049-02

2015-08-13

教育部人文社會科學(xué)研究青年基金(10YJCZH004);云南財經(jīng)大學(xué)校科研基金重點項目(YC10A003)。

猜你喜歡
分類
2021年本刊分類總目錄
分類算一算
垃圾分類的困惑你有嗎
大眾健康(2021年6期)2021-06-08 19:30:06
星星的分類
我給資源分分類
垃圾分類,你準(zhǔn)備好了嗎
分類討論求坐標(biāo)
數(shù)據(jù)分析中的分類討論
按需分類
教你一招:數(shù)的分類
主站蜘蛛池模板: 狠狠干综合| 99热这里只有精品5| 十八禁美女裸体网站| 亚洲天堂久久久| 人妻免费无码不卡视频| 99视频在线免费看| 色偷偷av男人的天堂不卡| 亚洲无卡视频| 欧美日韩免费| 国产91久久久久久| 日韩国产亚洲一区二区在线观看 | 三上悠亚在线精品二区| 女人爽到高潮免费视频大全| 伊人精品视频免费在线| 成人久久18免费网站| 国内精品视频区在线2021| 又粗又大又爽又紧免费视频| 国产精品手机在线观看你懂的| 日本午夜三级| 伦伦影院精品一区| 丁香六月激情综合| 玖玖精品在线| 欧美日韩第三页| 色精品视频| 日本人又色又爽的视频| 色呦呦手机在线精品| 91欧洲国产日韩在线人成| 美女扒开下面流白浆在线试听| 日韩一区二区三免费高清| 天天综合网色中文字幕| 91系列在线观看| 国产精品吹潮在线观看中文| 国产97公开成人免费视频| 欧美精品成人一区二区视频一| 国产成人综合亚洲欧洲色就色| 国产第一页屁屁影院| 手机精品福利在线观看| 国产在线拍偷自揄观看视频网站| 久久99国产视频| 2024av在线无码中文最新| 成人综合网址| 激情综合图区| 亚洲 欧美 中文 AⅤ在线视频| 国产精品jizz在线观看软件| 播五月综合| 亚洲成人精品在线| 在线观看精品自拍视频| 国产国产人在线成免费视频狼人色| 在线另类稀缺国产呦| 欧美精品在线看| 国产精品网拍在线| 一级毛片在线播放免费观看| 青草免费在线观看| 色综合a怡红院怡红院首页| 亚洲日韩国产精品综合在线观看| 欧美成人第一页| 国产精女同一区二区三区久| 久久中文字幕av不卡一区二区| 黄色网页在线观看| 污视频日本| 一区二区三区四区精品视频 | 亚洲无线视频| 91青青视频| 欧美.成人.综合在线| 午夜毛片福利| 国产精品护士| 噜噜噜综合亚洲| 女人18毛片一级毛片在线| 免费毛片网站在线观看| 欧美国产视频| 四虎精品黑人视频| 免费无码一区二区| 国产农村妇女精品一二区| 色噜噜在线观看| 亚洲欧洲国产成人综合不卡| 国产在线观看一区精品| 天天躁夜夜躁狠狠躁躁88| 91国内外精品自在线播放| 日本精品视频| 国产爽爽视频| 亚洲综合在线网| 日韩欧美国产区|