From 308c2822a2c1944b5aad8cee96f30cf524a792af Mon Sep 17 00:00:00 2001 From: "hannes.kuchelmeister" Date: Mon, 27 Apr 2020 10:37:27 +0200 Subject: [PATCH] add reference to acid principles --- .../sections/50_design_and_implementation.tex | 2 +- 30_Thesis/thesis.bib | 53 ++++++++++++++----- 2 files changed, 41 insertions(+), 14 deletions(-) diff --git a/30_Thesis/sections/50_design_and_implementation.tex b/30_Thesis/sections/50_design_and_implementation.tex index 1cdcef3..e57b703 100644 --- a/30_Thesis/sections/50_design_and_implementation.tex +++ b/30_Thesis/sections/50_design_and_implementation.tex @@ -55,7 +55,7 @@ Data is stored and retrieved using a data access objects therefore the currently \section{Database} \label{sec:DesignImplementation:Database} -The choice among database systems has to be made between \emph{non-relational} and \emph{relational} databases. Relational databases are great at the four ACID (atomicity, consistency, isolation, durability) principles. Moreover, if the data structures are not changing it provides a solid basis that keeps the data reliable. A non-relational database on the other hand is ideal for rapid agile development. Moreover, it excels if data requirements are not entirely clear and if a large amount of unstructured data has to be stored. Moreover, non-relational databases allows the system to store the data in any kind of structure. This proves as an advantage as it allows to use the same data structure to be stored that also has to be fed out through the api. Therefore parsing methods for the API can be reused and changed upon changing requirements. Moreover, the data used for the recommender is mostly not interconnected, therefore a relational databases main strength, the data structure, does not really come into play here. Thus, in this thesis a NoSQL database is used. +The choice among database systems has to be made between \emph{non-relational} and \emph{relational} databases. Relational databases are great at the four ACID (atomicity, consistency, isolation, durability) principles \cite{chrysanthis1998recovery, cookACIDBASEDatabase2009}. Moreover, if the data structures are not changing it provides a solid basis that keeps the data reliable. A non-relational database on the other hand is ideal for rapid agile development. Moreover, it excels if data requirements are not entirely clear and if a large amount of unstructured data has to be stored. Moreover, non-relational databases allows the system to store the data in any kind of structure. This proves as an advantage as it allows to use the same data structure to be stored that also has to be fed out through the api. Therefore parsing methods for the API can be reused and changed upon changing requirements. Moreover, the data used for the recommender is mostly not interconnected, therefore a relational databases main strength, the data structure, does not really come into play here. Thus, in this thesis a NoSQL database is used. \section{Scoring Functions} \label{sec:DesignImplementation:ScroingFunctions} diff --git a/30_Thesis/thesis.bib b/30_Thesis/thesis.bib index 00b612f..908a5bf 100644 --- a/30_Thesis/thesis.bib +++ b/30_Thesis/thesis.bib @@ -21,6 +21,14 @@ file = {C\:\\Users\\Hannes.Kuchelmeister\\Zotero\\storage\\YXJISA5R\\Abdollahpouri et al_2019_Beyond Personalization.pdf} } +@article{al-houmailyRecoveryPerformanceAtomic, + title = {Recovery and {{Performance}} of {{Atomic Commit Processs}}}, + author = {Al-houmaily, Yousef J and Samaras, George}, + pages = {49}, + abstract = {A transaction is traditionally de ned so as to provide the properties of atomicity, consistency, integrity, and durability (ACID) for any operation it performs. In order to ensure the atomicity of distributed transactions, an atomic commitprotocol needs to be followed by all sites participating in a transaction execution to agree on the nal outcome, that is, commit or abort. A variety of commit protocols have been proposed that either enhance the performance of the classical two-phase commit protocol during normal processing or reduce the cost of recovery processing after a failure. In this chapter, we survey a number of two-phase commit variants and optimizations, including some recent ones, providing an insight in the performance trade-o between normal and recovery processing. We also analyze the performance of a representative set of commit protocols both analytically as well as empirically using simulation.}, + langid = {english} +} + @article{aminiDiscoveringImpactKnowledge2011, title = {Discovering {{The Impact Of Knowledge In Recommender Systems}}: {{A Comparative Study}}}, shorttitle = {Discovering {{The Impact Of Knowledge In Recommender Systems}}}, @@ -49,7 +57,7 @@ @article{article, title = {Collaborative Product Configuration: Formalization and Efficient Algorithms for Dependency Analysis.}, - author = {Mendon{\c c}a, Marc\'ilio and Cowan, Donald and Malyk, William and Oliveira, Toacy}, + author = {Mendon\c{c}a, Marc\'ilio and Cowan, Donald and Malyk, William and Oliveira, Toacy}, date = {2008-01}, journaltitle = {JSW}, volume = {3}, @@ -294,6 +302,26 @@ langid = {english} } +@article{chrysanthis1998recovery, + title = {Recovery and Performance of Atomic Commit Processing in Distributed Database Systems}, + author = {Chrysanthis, PK and Samaras, G and Al-Houmaily, YJ}, + date = {1998}, + journaltitle = {Recovery Mechanisms in Database Systems}, + pages = {370--416}, + publisher = {{Prentice-Hall}}, + file = {C\:\\Users\\Hannes.Kuchelmeister\\Zotero\\storage\\XBEKIEQ9\\Al-houmaily and Samaras - 311 PUBLICATIONS 4,738 CITATIONS SEE PROFILE.pdf} +} + +@online{cookACIDBASEDatabase2009, + title = {{{ACID}} versus {{BASE}} for Database Transactions}, + author = {Cook, John D.}, + date = {2009-07-06}, + journaltitle = {John D. Cook Consulting}, + url = {https://www.johndcook.com/blog/2009/07/06/brewer-cap-theorem-base/}, + urldate = {2020-04-27}, + file = {C\:\\Users\\Hannes.Kuchelmeister\\Zotero\\storage\\NEN4DCZV\\brewer-cap-theorem-base.html} +} + @inproceedings{cosley2003seeing, title = {Is Seeing Believing?: How Recommender System Interfaces Affect Users' Opinions}, booktitle = {Proceedings of the {{SIGCHI}} Conference on {{Human}} Factors in Computing Systems}, @@ -437,8 +465,8 @@ @incollection{felfernigAlgorithmsGroupRecommendation2018, title = {Algorithms for {{Group Recommendation}}}, booktitle = {Group {{Recommender Systems}} : {{An Introduction}}}, - author = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal{\v c}i{\v c}, Marko}, - editor = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal{\v c}i{\v c}, Marko}, + author = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal\v{c}i\v{c}, Marko}, + editor = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal\v{c}i\v{c}, Marko}, date = {2018}, pages = {27--58}, publisher = {{Springer International Publishing}}, @@ -454,8 +482,8 @@ @incollection{felfernigBiasesGroupDecisions2018, title = {Biases in {{Group Decisions}}}, booktitle = {Group {{Recommender Systems}} : {{An Introduction}}}, - author = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal{\v c}i{\v c}, Marko}, - editor = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal{\v c}i{\v c}, Marko}, + author = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal\v{c}i\v{c}, Marko}, + editor = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal\v{c}i\v{c}, Marko}, date = {2018}, pages = {145--155}, publisher = {{Springer International Publishing}}, @@ -482,8 +510,8 @@ @incollection{felfernigDecisionTasksBasic2018, title = {Decision {{Tasks}} and {{Basic Algorithms}}}, booktitle = {Group {{Recommender Systems}} : {{An Introduction}}}, - author = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal{\v c}i{\v c}, Marko}, - editor = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal{\v c}i{\v c}, Marko}, + author = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal\v{c}i\v{c}, Marko}, + editor = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal\v{c}i\v{c}, Marko}, date = {2018}, pages = {3--26}, publisher = {{Springer International Publishing}}, @@ -510,8 +538,8 @@ @incollection{felfernigGroupRecommenderApplications2018, title = {Group {{Recommender Applications}}}, booktitle = {Group {{Recommender Systems}} : {{An Introduction}}}, - author = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal{\v c}i{\v c}, Marko}, - editor = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal{\v c}i{\v c}, Marko}, + author = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal\v{c}i\v{c}, Marko}, + editor = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal\v{c}i\v{c}, Marko}, date = {2018}, pages = {75--89}, publisher = {{Springer International Publishing}}, @@ -527,7 +555,7 @@ @book{felfernigGroupRecommenderSystems2018, title = {Group {{Recommender Systems An Introduction}}}, shorttitle = {Group Recommender Systems}, - author = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal{\v c}i{\v c}, Marko}, + author = {Felfernig, Alexander and Boratto, Ludovico and Stettinger, Martin and Tkal\v{c}i\v{c}, Marko}, date = {2018}, abstract = {This book presents group recommender systems, which focus on the determination of recommendations for groups of users. The authors summarize different technologies and applications of group recommender systems. They include an in-depth discussion of state-of-the-art algorithms, an overview of industrial applications, an inclusion of the aspects of decision biases in groups, and corresponding de-biasing approaches. The book includes a discussion of basic group recommendation methods, aspects of human decision making in groups, and related applications. A discussion of open research issues is included to inspire new related research. The book serves as a reference for researchers and practitioners working on group recommendation related topics.}, file = {C\:\\Users\\Hannes.Kuchelmeister\\Zotero\\storage\\HC6C7C89\\Felfernig et al. - 2018 - Group recommender systems an introduction.pdf}, @@ -1037,7 +1065,7 @@ procedure.}, @article{mendoncaCollaborativeProductConfiguration2008, title = {Collaborative {{Product Configuration}}}, - author = {Mendon{\c c}a, Marc\'ilio and Cowan, Donald and Malyk, William and Oliveira, Toacy}, + author = {Mendon\c{c}a, Marc\'ilio and Cowan, Donald and Malyk, William and Oliveira, Toacy}, date = {2008-01}, journaltitle = {Journal of Software}, shortjournal = {JSW}, @@ -1292,8 +1320,7 @@ procedure.}, urldate = {2020-04-09}, abstract = {The official home of the Python Programming Language}, file = {C\:\\Users\\Hannes.Kuchelmeister\\Zotero\\storage\\ZKIC9FPT\\www.python.org.html}, - langid = {english}, - note = {Library Catalog: www.python.org} + langid = {english} } @article{qiuInfluenceGroupConfiguration2015,