出于与此无关的原因,一家公司购买了一架Exadata8Rack。一些管理人员认为这将提高当前应用程序的性能。问题是,几乎没有任何应用程序能够进行密集的数据库工作(是的,这是查看facepalm动画gifs的好时机)。因此,目前,移民证明并没有什么好处。
问题是显而易见的。大多数应用程序都是用Java编写的,其中一些应用程序大量使用Solr和Cassandra。据我所知,Exadata是为了存储数据,而Exalogic也可以保存应用程序。总之,我想知道是否有什么方法可以利用所提到的基础设施。
发布于 2013-09-19 17:29:16
将Solr替换为Oracle文本。
在我被否决之前:通常我不会建议用一个流行的开源程序来代替现有的代码,而是使用一个很少使用的专有产品。但是,如果您想在数据库服务器上使用大量的空间和CPU,那么Oracle文本肯定会有所帮助。
作为更一般的建议,数据库的主要作用不是存储数据。文件系统可以做到这一点。建立数据库是为了连接数据。如果应用程序正在读取大量数据并进行临时联接,则需要将这些作业移到数据库中。
发布于 2013-09-20 05:55:42
Exadata数据库的极限性能。Exalogic ->融合中间件的极端性能。(Java就在这里)
最好的方法是重构应用程序,以便尽可能多地将工作负载放在DB (PL/SQL)上。
我能想到的另一件事,但这将是一个激进的方法,我从来没有真正尝试过(是的,我也和Exadatas一起工作),也许你可以试一试,让我们知道.
如何在Exadata上使用所有这些GBs并开始调优Java应用程序的延迟?我的意思是,有了这么多可怕的内存,您可以尝试设置一个非常好的堆,并避免垃圾收集引发的延迟。请在这里告诉我,如果你真的尝试这个,会有什么结果。
发布于 2013-09-25 15:43:56
Java应用程序用于连接到Oracle的协议是什么?
如果不是IPC (进程间通信,也就是遗留的,也就是共享内存),但也许TCP和您有许多快速和微小的往返,这将是您的低挂水果-消除网络堆栈。
编辑:刚刚意识到在默认情况下不能运行java应用程序(只有官方发展援助才能运行)--因此不可能使用IPC。但是,也许您可以使用以前的基础结构在应用程序中测试IPC的影响?
https://stackoverflow.com/questions/18898240
复制相似问题