Find Jobs
Hire Freelancers

In-memory Result set caching - Java, Java Spring

$10-200 USD

Đã hoàn thành
Đã đăng vào hơn 6 năm trước

$10-200 USD

Thanh toán khi bàn giao
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.
Mã dự án: 15841068

Về dự án

5 đề xuất
Dự án từ xa
Hoạt động 6 năm trước

Bạn muốn kiếm tiền?

Lợi ích khi chào giá trên Freelancer

Thiết lập ngân sách và thời gian
Nhận thanh toán cho công việc
Phác thảo đề xuất của bạn
Miễn phí đăng ký và cháo giá cho công việc
Đã trao cho:
Avatar người dùng
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 trong 7 ngày
0,0 (0 nhận xét)
0,0
0,0
5 freelancer chào giá trung bình $189 USD cho công việc này
Avatar người dùng
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 trong 21 ngày
5,0 (2 nhận xét)
2,7
2,7
Avatar người dùng
A proposal has not yet been provided
$166 USD trong 5 ngày
0,0 (0 nhận xét)
0,0
0,0
Avatar người dùng
A proposal has not yet been provided
$188 USD trong 7 ngày
0,0 (0 nhận xét)
0,0
0,0
Avatar người dùng
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 trong 5 ngày
0,0 (0 nhận xét)
0,0
0,0

Về khách hàng

Cờ của UNITED KINGDOM
London, United Kingdom
5,0
10
Phương thức thanh toán đã xác thực
Thành viên từ thg 5 31, 2017

Xác thực khách hàng

Cảm ơn bạn! Chúng tôi đã gửi email chứa đường link để bạn lấy tín dụng miễn phí.
Đã xảy ra lỗi trong khi gửi email của bạn. Hãy thử lại.
Người Dùng Đã Đăng Ký Tổng Số Việc Đã Đăng
Freelancer ® is a registered Trademark of Freelancer Technology Pty Limited (ACN 142 189 759)
Copyright © 2024 Freelancer Technology Pty Limited (ACN 142 189 759)
Đang tải xem trước
Đã cấp quyền truy cập vị trí.
Phiên đăng nhập của bạn đã hết hạn và bạn đã bị đăng xuất. Hãy đăng nhập lại.