[midPoint] Blog: Introducing MidScale
Radovan Semancik
radovan.semancik at evolveum.com
Mon Oct 19 19:27:54 CEST 2020
Dear midPoint community,
Ladies and gentlemen, please welcome midScale
<https://docs.evolveum.com/midpoint/midscale/>. MidScale is a project to
significantly improve scalability of midPoint. The goal is to support
midPoint deployments with millions or tens of millions of identities.
MidPoint is almost 10 years old. When we started midPoint project, the
primary goal was a mid-size enterprise. We designed midPoint components
to fit that evironment. Also, that was early 2010s. The world was a
different place. We have to prioritize support for many databases. We
need to write a generic code that would fit several databases, which
means we were not able to fully utilize the power of any of them. We had
to make compromises and trade-offs. And, of course, we also did some
mistakes in early design.
Over the years midPoint grew, the deployments got bigger and more
ambitious. Fortunately, we expected that this could happen.
Therefore the repository layer in midPoint is replaceable. The plan for
midScale is to replace the generic multi-database implementation with a
code that will be written specifically for PostgreSQL. We also plan to
redesign the structure of database tables to make them more scalable.
This should give us a lot of boost in performance and scalability.
Database-related improvements are at the heart of midScale project.
However, there is so much more to do to make the entire system scalable.
We will need to review user interface code to improve performance.
Prism, the data modeling foundation of midPoint, needs to be improved as
well. Task management needs to be made much more “cluster native”. And
there is a huge effort that we need to invest in testing and the
infrastrucuture to make sure that we have reached our goals.
MidScale project offically started few days ago. MidScale is mid-term
project that will span two midPoint releases: 4.3 and 4.4. Some of the
improvements will be delivered in midPoint 4.3 release, but all the work
will be finished in midPoint 4.4. MidPoint 4.4 is also meant to be a
long-term support (LTS) release, therefore the plan seems to fit nicely.
We will be publishing all the midScale material on project web pages
<https://docs.evolveum.com/midpoint/midscale/> for anyone to follow the
progress of the project.
This is significant project that we have planned for several years.
However, we were not able to secure sufficient funding up until now.
Fortunately, we have been successful in NGI_TRUST open call, which
provided partial funding for the project. We are very grateful to NGI
and European Union for this opportunity. Even though most of the cost of
this project will be covered by Evolveum, this project would not be
possible without European community money. Creating and maintaining open
source projects is a hard work, yet it provides value to a broad
community. We are glad that European Union recognizes the value of open
source software and contributes to its development.
This project has received funding from the European Union’s Horizon 2020
research and innovation programme under the NGI_TRUST grant agreement no
825618.
(Reposted from Evolveum blog <https://evolveum.com/introducing-midscale/>)
--
Radovan Semancik
Software Architect
evolveum.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.evolveum.com/pipermail/midpoint/attachments/20201019/4b648c19/attachment.htm>
More information about the midPoint
mailing list