博碩士論文 102552006 詳細資訊




以作者查詢圖書館館藏 以作者查詢臺灣博碩士 以作者查詢全國書目 勘誤回報 、線上人數:11 、訪客IP:3.137.218.215
姓名 張昱珩(Yu-Heng Chang)  查詢紙本館藏   畢業系所 資訊工程學系在職專班
論文名稱 物聯網下嵌入式系統之軟體資料儲存格式改進
(An Improvement to the Data Storage Format of Embedded Systems in the IoT World)
相關論文
★ 影片指定對象臉部置換系統★ 以單一攝影機實現單指虛擬鍵盤之功能
★ 基於視覺的手寫軌跡注音符號組合辨識系統★ 利用動態貝氏網路在空照影像中進行車輛偵測
★ 以視訊為基礎之手寫簽名認證★ 使用膚色與陰影機率高斯混合模型之移動膚色區域偵測
★ 影像中賦予信任等級的群眾切割★ 航空監控影像之區域切割與分類
★ 在群體人數估計應用中使用不同特徵與回歸方法之分析比較★ 以視覺為基礎之強韌多指尖偵測與人機介面應用
★ 在夜間受雨滴汙染鏡頭所拍攝的影片下之車流量估計★ 影像特徵點匹配應用於景點影像檢索
★ 自動感興趣區域切割及遠距交通影像中的軌跡分析★ 基於回歸模型與利用全天空影像特徵和歷史資訊之短期日射量預測
★ Analysis of the Performance of Different Classifiers for Cloud Detection Application★ 全天空影像之雲追蹤與太陽遮蔽預測
檔案 [Endnote RIS 格式]    [Bibtex 格式]    [相關文章]   [文章引用]   [完整記錄]   [館藏目錄]   [檢視]  [下載]
  1. 本電子論文使用權限為同意立即開放。
  2. 已達開放權限電子全文僅授權使用者為學術研究之目的,進行個人非營利性質之檢索、閱讀、列印。
  3. 請遵守中華民國著作權法之相關規定,切勿任意重製、散佈、改作、轉貼、播送,以免觸法。

摘要(中) 隨著網路的普及,做為物聯網一環的嵌入式系統也愈發融入日常生活中。嵌入式系統對資料儲存的可靠性要求極高,因嵌入式系統的操作介面有限,錯誤或毀損的資料可能會造成嵌入式系統永久性地毀損。大多數的嵌入式系統都不具備電源供應的保護,因此嵌入式系統的軟體設計要項之一便是在電源可能隨時中斷的情況下,仍確保資料儲存的正確性。現今雖已可透過選擇較長壽命的承載硬體、日誌檔案系統(Journaling File System)和資料庫的交易(Transaction)性質來確保儲存資料的正確性,但硬體和檔案系統的改進,對他們的操作方式無任何影響,而資料庫的操作方式卻有別於程式語言對物件資料的操作習慣。
本論文旨在探討,在保有相同可靠性的前提下,如何讓儲存與載入靜態資料的操作方式與程式語言中對物件資料的操作習慣一致。本論文改進了既有物件關聯對映(Object-Relational Mapping, ORM)的對映方式使其具備更廣的資料描述能力,除描述改進後對映方式與既有各對映方式的差異外,也提供了Python版本的函式庫實作來證明可行性,同時亦搜集程式設計師的使用經驗來證明此格式改進促成的操作方式一致性提升所帶來的正面效果。
摘要(英) With the popularity of the internet, embedded devices as part of the Internet of Things are also being much more involved in people’s lives. The necessity of the correctness of the stored data in embedded devices is vital, as the interface provided is usually limited, bad or broken stored data may cause permanent damage to devices. Given the fact that uninterruptible power source is not a requirement in usual embedded systems, one of the required characteristics of embedded devices is the resistance to the power outage regarding the data storing. Although there is already high durability hardware storage, journaling file system and database transaction that can be used for ensuring the correctness of the stored data, the improvements to the hardware and file system didn’t change the way they are used. However, it is notably different between storing data in a database and an object of programming languages.
The goal of the research is finding a way to make the operations of loading/saving data from/to databases and objects consistent while keeping the same reliability of the correctness of the data. The thesis shows an improved object-relational mapping (ORM) format that increases the data able to be described. In addition to comparing the difference of the improvement from this thesis with others, a Python library based on the improved format was also created as the material for the survey of the positive impacts to programmers whose data operation work turned into the same with object operation.
關鍵字(中) ★ 軟體資料儲存格式
★ 物聯網
★ 嵌入式系統
關鍵字(英) ★ Software data storage format
★ Internet of Things
★ Embedded system
論文目次 中文摘要 i
英文摘要 ii
誌謝 iii
目錄 iv
圖目錄 vi
表目錄 vii
一、 緒論 1
1-1 動機 1
1-2 目的 2
1-3 架構 2
二、 背景及相關技術介紹 3
2-1 背景 3
2-2 相關技術 4
2-3 物件關聯對映與物件文件對映 6
2-3-1 物件關聯對映(Object-Relational Mapping) 6
2-3-2 物件文件對映(Object-Document Mapping) 8
2-3-3 物件關聯對映與物件文件對映之不足 9
三、 轉置型物件關聯對映 13
3-1 資料結構 13
3-2 載入 14
3-3 儲存 16
3-3-1 重複物件 16
3-3-2 複合物件 16
3-3-3 多型物件 18
四、 結果驗證與討論 23
4-1 內部驗證 23
4-2 公開驗證 26
4-3 討論 27
五、 結論與未來展望 28
5-1 結論 28
5-2 未來展望 28
參考文獻 30
附錄一 使用經驗問卷調查 33
參考文獻 〔1〕Z. You, "The reliability analysis of embedded systems", 2013 International Conference on Information Science and Cloud Computing Companion, pp. 458-462, IEEE, 2013
〔2〕M. Eriksson and V. Hallberg, "Comparison between JSON and YAML for data serialization", The School of Computer Science and Engineering Royal Institute of Technology, pp. 1-25, 2011.
〔3〕B. Lin, Y. Chen, X. Chen, and Y. Yu, "Comparison between JSON and XML in Applications Based on AJAX", 2012 International Conference on Computer Science and Service System, pp. 1174-1177, IEEE, 2012
〔4〕T. Sheard and D. Stemple, "Automatic verification of database transaction safety", ACM Transactions on Database Systems (TODS), vol. 14, no. 3, pp. 322-368, 1989.
〔5〕R. K. Kodali and V. S. K. Gorantla, "Weather tracking system using MQTT and SQLite", 2017 3rd International Conference on Applied and Theoretical Computing and Communication Technology (iCATccT), pp. 205-208, IEEE, 2017
〔6〕G. Sivathanu, C. P. Wright, and E. Zadok, "Ensuring data integrity in storage: Techniques and applications", Proceedings of the 2005 ACM workshop on Storage security and survivability, pp. 26-36, 2005
〔7〕S. Verma, "U-boot environment variables", Linux Journal, vol. 2014, no. 246, p. 2, 2014.
〔8〕K. M. Lofgren, R. D. Norman, G. B. Thelin, and A. Gupta, "Wear leveling techniques for flash EEPROM systems", ed: Google Patents, 2001
〔9〕S. A. Gorobets, A. D. Bennett, P. J. Smith, A. W. Sinclair, K. M. Conley, and P. D. Royall, "Cyclic flash memory wear leveling", ed: Google Patents, 2008
〔10〕S. Kulkarni and P. Jisha, "Study of Bad block management and Wear leveling in NAND flash memories", 2013.
〔11〕M. Machado, C. Van Genderen, P. Lee, and J. Park, "Serial flash integrated circuit having error detection and correction", ed: Google Patents, 2004
〔12〕V. Prabhakaran, A. C. Arpaci-Dusseau, and R. H. Arpaci-Dusseau, "Analysis and Evolution of Journaling File Systems", USENIX Annual Technical Conference, General Track, pp. 196-215, vol. 194, 2005
〔13〕S. Tuli, S. Tuli, U. Jain, and R. Buyya, "APEX: Adaptive Ext4 File System for Enhanced Data Recoverability in Edge Devices", arXiv preprint arXiv:1910.01642, 2019.
〔14〕D. Chen, X. Han, and W. Wang, "Use of sqlite on embedded system", 2010 International Conference on Intelligent Computing and Cognitive Informatics, pp. 210-213, IEEE, 2010
〔15〕S. W. Dietrich and S. D. Urban, "Fundamentals of object databases: Object-oriented and object-relational design", Synthesis lectures on data management, vol. 2, no. 1, pp. 1-173, 2010.
〔16〕J. Han, E. Haihong, G. Le, and J. Du, "Survey on NoSQL database", 2011 6th international conference on pervasive computing and applications, pp. 363-366, IEEE, 2011
〔17〕S. K. Gajendran, "A survey on nosql databases", University of Illinois, 2012.
〔18〕W. Keller, "Mapping objects to tables", Proc. of European Conference on Pattern Languages of Programming and Computing, Kloster Irsee, Germany, p. 207, vol. 206, Citeseer, 1997
〔19〕L. Cabibbo, "Ondm: an object-nosql datastore mapper", Faculty of Engineering, Roma Tre University. Retrieved June 15th, 2013.
〔20〕B. Carpenter, G. Fox, S. H. Ko, and S. Lim, "Object serialization for marshaling data in a Java interface to MPI", Concurrency: Practice and Experience, vol. 12, no. 7, pp. 539-553, 2000.
〔21〕A. Sumaray and S. K. Makki, "A comparison of data serialization formats for optimal efficiency on a mobile platform", Proceedings of the 6th international conference on ubiquitous information management and communication, pp. 1-6, 2012
〔22〕H. Ishikawa, Y. Yamane, Y. Izumida, and N. Kawato, "An object-oriented database system Jasmine: implementation, application, and extension", IEEE Transactions on Knowledge and Data Engineering, vol. 8, no. 2, pp. 285-304, 1996.
〔23〕D. Barry and T. Stanienda, "Solving the Java object storage problem", Computer, vol. 31, no. 11, pp. 33-40, 1998.
〔24〕C. Richardson, "ORM in dynamic languages", Communications of the ACM, vol. 52, no. 4, pp. 48-55, 2009.
〔25〕L. Cardelli and P. Wegner, "On understanding types, data abstraction, and polymorphism", ACM Computing Surveys (CSUR), vol. 17, no. 4, pp. 471-523, 1985.
〔26〕M. Abadi and L. Cardelli, A theory of objects. Springer Science & Business Media, 2012.
〔27〕S. Sharify, A. Lu, J. Chen, A. Bhattacharyya, A. Hashemi, N. Koudas, and C. Amza, "An Improved Dynamic Vertical Partitioning Technique for Semi-structured Data", 2019 IEEE International Symposium on Performance Analysis of Systems and Software (ISPASS), pp. 243-256, IEEE, 2019
〔28〕B. Stroustrup, "C++ glossary", ed, 2007
〔29〕R. M. Amadio and L. Cardelli, "Subtyping recursive types", ACM Transactions on Programming Languages and Systems (TOPLAS), vol. 15, no. 4, pp. 575-631, 1993.
〔30〕R. C. Martin, "The Liskov substitution principle", C++ Report, vol. 8, no. 3, p. 14, 1996.
〔31〕"tormdb", https://github.com/changyuheng/tormdb
〔32〕「物聯網嵌入式系統應用軟體開發經驗問卷調查」,https://www.surveycake.com/s/aQKBr
指導教授 鄭旭詠(Hsu-Yung Cheng) 審核日期 2020-8-20
推文 facebook   plurk   twitter   funp   google   live   udn   HD   myshare   reddit   netvibes   friend   youpush   delicious   baidu   
網路書籤 Google bookmarks   del.icio.us   hemidemi   myshare   

若有論文相關問題,請聯絡國立中央大學圖書館推廣服務組 TEL:(03)422-7151轉57407,或E-mail聯絡  - 隱私權政策聲明