Find Jobs
Hire Freelancers

In-memory Result set caching - Java, Java Spring

$10-200 USD

Tamamlandı
İlan edilme: 6 yıldan fazla önce

$10-200 USD

Teslimde ödenir
We are working on reporting tool. the purpose of the tool is simply visualising the data from underlying database. Although the basic functionality work; the challenges we face is when the query is executed multiple times it's slows down the performance. (Please find attachment for the high level architecture) What we plan to achieve is below 1. A Query executed from frontend reporting layer; the query will be bring the results from underlying database (postgresql) 2. The query results should be cached in memory layer (should be a open source technology) 3. When the same query is executed again the data should be fetched from result set cache rather than getting data from database 4. If the underlying data changed in database than result set should purge and new data should be fetched from database and cached in-memory; meaning the data in cache should be consistant with database 5. Should be able to filter from query results. 6. The cached results should never exceed the memory. 7. There should be a time out for every cached query so that we can clear the cache periodically. 8. We need to have an option to either cache the query or not 9. Any suggestions or improvements are welcome; We don't prefer REDIS or Other commercial software for Caching. Usecase how it should: 1. USER1 runs the query for the first time from Application Layer (example select * from emp; (100 records)) 2. Application layer checks in caching layer if the query data exist; if not than goes to database and cache the data in caching layer and results sent to Application layer 3. USER2 runs a query (select * from emp where dept_no=10) returns 15 records This query should get the data from the cache rather than database : FILTERING 4. Database updates with new inserts now we have 18 records for dept 10 5. User3 runs the same query the data should be fetched from database replace the old cache with new caching data. 6. Once the data is in Cache any user running the same query should get data from Cache rather than database unless the underlying database records changes.
Proje No: 15841068

Proje hakkında

5 teklif
Uzaktan proje
Son aktiviteden bu yana geçen zaman 6 yıl önce

Biraz para mı kazanmak istiyorsunuz?

Freelancer'da teklif vermenin faydaları

Bütçenizi ve zaman çerçevenizi belirleyin
Çalışmanız için ödeme alın
Teklifinizin ana hatlarını belirleyin
Kaydolmak ve işlere teklif vermek ücretsizdir
Seçilen:
Kullanıcı Avatarı
As the work involves some benchmarking and learning a new DB. It takes more time and effort than what I thought initialy. So, I'm updating the bid to $170.
$170 USD 7 gün içinde
0,0 (0 değerlendirme)
0,0
0,0
5 freelancers are bidding on average $189 USD for this job
Kullanıcı Avatarı
Hi, Thanks for giving detail requirement, it's pretty clear. I suggest to use in memory database such as hsqldb or mysql (using in memory table) for caching purpose. Things to do in this project : - Reconcile module, this module has responsibility to sync data. It will compare two data like you mentioned and ensure those data are sync. - Data Manager module, this module has responsibility to ensure the caching database is not full. Need detail scenario for this module. - Data Access module, this module has responsibility to serve query request. Please feel free to discuss more detail. Thank you. Best Regards, Dhian Wicaksana Putra
$200 USD 21 gün içinde
5,0 (2 değerlendirme)
2,7
2,7
Kullanıcı Avatarı
A proposal has not yet been provided
$166 USD 5 gün içinde
0,0 (0 değerlendirme)
0,0
0,0
Kullanıcı Avatarı
A proposal has not yet been provided
$188 USD 7 gün içinde
0,0 (0 değerlendirme)
0,0
0,0
Kullanıcı Avatarı
We can look into the problem first and then provide the solution. I have almost 13 years of experience in design/develop java based services and we mostly deploy in Aws. We can have in memory data storage in java Map object for faster data returns or have Redis cluster for distributed caching.I’m not sure why Redis is not a requirement in this project but I’ll recommend it. If you don’t want to use Redis, then we have to manage all caching features by ourself in code and it may increase complexity and future maintenance. Let me know if you want to discuss further.
$222 USD 5 gün içinde
0,0 (0 değerlendirme)
0,0
0,0

Müşteri hakkında

   UNITED KINGDOM bayrağı
London, United Kingdom
5,0
10
Ödeme yöntemi onaylandı
May 31, 2017 tarihinden bu yana üye

Müşteri Doğrulaması

Teşekkürler! Ücretsiz kredinizi talep etmeniz için size bir bağlantı gönderdik.
E-postanız gönderilirken bir şeyler yanlış gitti. Lütfen tekrar deneyin.
Kayıtlı Kullanıcı İlan Edlien Toplam İş
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Ön izleme yükleniyor
Coğrafik konum için izin verildi.
Giriş oturumunuzun süresi doldu ve çıkış yaptınız. Lütfen tekrar giriş yapın.