我正在使用 apacite 包在我的代码中引用,但它不起作用。当我运行它时它们显示问号。这是 .tex 和 .bib。我正在使用 texmaker。
\documentclass[a4paper,12pt]{article}
\usepackage{apacite}
\usepackage{pbox}
\usepackage{longtable}
\usepackage[a4paper]{geometry}
\geometry{a4paper,tmargin=2.0cm,bmargin=2.0cm,lmargin=0.5cm,rmargin=0.5cm,headheight=3em,headsep=1.5cm,footskip=1cm}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{mathptmx}
\begin{document}
\bibliographystyle{apacite}
{\renewcommand{\arraystretch}{2}
\renewcommand{\tabcolsep}{0.1cm}
\begin{longtable}{|l|l|}
\hline
Paper Title & \parbox{15cm} {A middle layer solution to supoort ACID properties for NoSQL database }\\
\hline
Author(s) & \parbox{15cm} {Ayman E.Lofty, Ahmed I.Saleh, Haitham A.El-Ghareeb, and Hesham A.Ali.\\ }
\\
\hline
Problem Solved & \parbox{14.5cm} {The problem is that both RDBMSs and NoSQL DBMSs are lacking in certain properties that could possibly expand their usage elsewhere. The most important feature that RDBMS maintains is the ACID properties in order to execute transactions ~\cite{wei2012}. Atomicity is a type of operation that ensures that the transaction is executed completely or not at all. Consistency is when a transaction is complete, it brings the database to a valid state. The isolation property ensures that as long as a transaction is not committed, no other transaction can access it. Finally, to prevent loss of data in case of a system failure, the durability property is responsible to save any committed data in its correct state. However, sometimes consistency is not always needed, the size of data is too big, or the data is to be distributed among multiple servers, which is a difficulty.On the other hand, NoSQL DBMS depends on the BASE properties. Basically Available simply means that the database is working all the time. Soft-state sees that the data base doesn't have to be consistent all the time, and Eventual consistency says that the database will be consistent eventually. These properties allow for higher horizontal scaling, which is useful for expanding a network. This means that NoSQL DBMS handle big data much better than RDMS. However, BASE properties lack data consistency compared to ACID properties, and as the data increases in size and distribution, the ability to quickly search for them decreases.\\
}\\
\hline
Related work& \parbox{14.5cm}{Google Megastore ~\cite{baker2011} is a transactional indexed record manager on the top of Big table which supports ACID properties and blends in the scalability of NoSQL DBMS. It has been used internally by Google. Megastore handles more than 3 billion write and 20 billion transactions daily, and store a petabyte of data across global data centers. However, Megastore requires a manual partitioning of data into group, and ACID properties work only on these groups through Multi Version Concurrency Control.Scalable Transactions across Heterogeneous NoSQL KeyValue Data Stores defines a client API that provides multi-item transactions across heterogeneous distributed data stores. It depends on a client clock which could yield inaccurate results, and it has a central layer where data is available for clients to retrieve, which also is a single point of failure.CloudTPS (Wei,2012) is a middle layer between client web application and cloud storage that makes use of ACID properties. It divides each transaction further into sub-transactions, where each sub-transaction deals with one key for reading or writing. Each transaction is executed if and only if all sub-transactions are executed successfully. Otherwise, the transaction is aborted and is restarted again from the beginning. One of the problems with CloudTPS is it doesn't address the problem of deadlocks. It also doesn't have a process for ordering execution of data transactions.
}\\
\hline
Methodology & \parbox{14.5cm}{Methodology
Now, the purpose of this paper is to show if the proposed middle layer can actually retain ACID properties while proving availability. The web application issues an instruction to the middle layer. The middle layer uses a 4-Phase commit protocol which collects data, executes transaction, migrates updates, and returns data to web application. An experiment was conducted to see if this is possible. A NoSQL database was built using mongo DB, where it stored 10,000 records of students including first name, last name, and other data. The data was stored in one data server and replicated onto another data server. The experiment also included two middle layers written in c\# to maintain the ACID properties.The first experiment measured the throughput using one middle layer. The web application can issue up to 4 requests at the same time, given one request processes about 3000 transactions. Starting with one request and then increasing each times, and using performance measurements based on the ratio of read to write, and increasing the write each time as write operations take more time to process than read operations. The same goes for the second experiment, but two middle layers are used instead of one.
The third experiment is done to check the availability of the system using one layer and two layers. The time where the execution of a transaction fails is calculated in ms.\\ }\\
\hline
Claimed Contributions & \parbox{14.5cm}{The first experiment showed that as the number of requests increase, the number of transactions executed per second (TPS) increases, and that the data are eventually consistent. However, when the ratio of writing is increased the throughput is decreased compared to using no middle layers. In the second experiment, the results showed that when the number of requests are under two requests, the throughput is higher in the first experiment. However, as the number of requests increase from two requests and above, the throughput of the second experiment is higher than the first one. Finally, the third experiment showed that the availability of the system is higher when two middle layers are used instead of one. \\
}\\
\hline
Conclusion & \parbox{14.5cm}{In conclusion, the paper has shown what are the advantages and disadvantages of RDBMSs and NoSQL DBMSs. Also a new solution has been proposed to allow for NoSQL DBMSs to maintain the ACID properties associated with RDBMSs in the form of a middle layer which uses a 4 phase commit protocol. The results that were shown by the experiments showed that the middle layer allowed the system to enhance availability and maintaining the ACID properties. \\}\\
\hline
Future work & \parbox{14.5cm}{If the system uses multiple layers, it increases the computational power. Furthermore, if only one middle layer is used, it is considered as a center point of failure, which could compromise the entire system. This is the main problem that needs to be improved in the future. Another fix would be to improve the framework to be used over different kinds of NoSQL databases.\\ }\\
\hline
\end{longtable}
\bibliography{Ref}{}
\end{document}
。围兜
@article{wei2012,
author = {Wei Zhou,
Pierre Guillame,Chi Chi-Hung},
title = {CloudTPS: Scalable Transactions for Web Applications in the Cloud.},
journal = {IEEE Transactions on Services Computing.},
volume = {},
number = {},
year = {2012},
pages = {}
}
@article{baker2011,
author = {Baker J., Bond C., Corbett J.C., FurmanJ., Khorlin A., Larson J., Leon J.-M., Li Y., Lloyd A., Yushprakh V.},
title = {Megastore: Providing Scalable, Highly Available Storage for Interactive Services.},
journal = {Proc. Conf. Innovative Data Systems Research (CIDR).},
volume = {},
number = {},
year = {2012},
pages = {}
}
@article{kanwar2013,
author = {Kanwar Renu, Trivedi Prakriti, Singh Kuldeep,},
title = {NoSQL, a Solution for Distributed Database Management System},
journal = {International Journal of Computer Applications (0975–8887)},
volume = {67},
number = {2},
year = {2012},
pages = {}
}
答案1
主要错误在于author
包含多位作者的字段的语法。首先,author
字段中的各个作者必须用关键字分隔and
,而不是用逗号。其次,如果您想将名字(全名或首字母)放在姓氏后面,则必须在姓氏后插入逗号。
作者的中文名字还可能引发另一个问题:一定要确定名字是按照中国习俗(姓在前)还是西方习俗(姓在后)输入的。实际上,确定作者的Wei
名字Wei Zhou
还是姓氏可能有点棘手。如有疑问,请查看论文的参考书目,检查作者是否引用过早期出版物。例如,字符串“Z. Wei, G. Pierre, and C.-H. Chi”(参见文章参考书目中的条目 14)强烈表明“Wei”、“Pierre”和“Chi”是三位作者的姓氏。(附言:即使是西方名字——例如“Guillaume Pierre”——有时也不清楚哪部分是姓氏,哪部分是名字!)一定要花时间确定作者姓名应如何在字段中输入author
。
此外,在title
字段中,大写字母(第一个字母除外)必须用花括号括起来,不能小写。因此,请写成{CloudTPS}
和,{NoSQL}
以确保“TPS”和“SQL”片段不会小写。
我添加了一个\nocite{*}
命令,将所有参考资料放在末尾,即使它们没有明确引用。
修正.bib
文件:
@article{wei2012,
author = {Wei, Zhou and Pierre, Guillaume and Chi, Chi-Hung},
title = {Cloud{TPS}: Scalable {T}ransactions for {W}eb {A}pplications in the {C}loud.},
journal = {IEEE Transactions on Services Computing},
volume = {},
number = {},
year = {2012},
pages = {} }
@article{baker2011,
author = {Baker, J. and Bond, C. and Corbett, J.C. and Furman, J. and Khorlin, A. and Larson, J. and Leon, J.-M. and Li, Y. and Lloyd, A. and Yushprakh, V.},
title = {Megastore: {P}roviding {S}calable, {H}ighly {A}vailable {S}torage for {I}nteractive {S}ervices.},
journal = {Proc. Conf. Innovative Data Systems Research (CIDR)},
volume = {},
number = {},
year = {2012},
pages = {} }
@article{kanwar2013,
author = {Kanwar, Enu and Trivedi, Prakriti and Singh, Kuldeep},
title = {{NoSQL}, a {S}olution for {D}istributed {D}atabase {M}anagement {S}ystem},
journal = {International Journal of Computer Applications (0975–8887)},
volume = {67},
number = {2},
year = {2012},
pages = {} }