Answer the question
In order to leave comments, you need to log in
Location of parts of a distributed database
Could you please tell us how to optimize the location of parts of a distributed database? Interested in more or less ready-made software products and examples of problem solving.
That is, for example :
there are several connected servers for a distributed database throughout the country, which are also clients of this database.
The database has many tables.
There are statistics on requests from clients to specific tables.
There is some cost of storing data on a particular server.
There is some transfer cost known for each server-client pair.
Task : spread tables (or parts of tables) across servers in the most optimal way.
Various heuristic algorithms can be used to solve the problem: genetic algorithms, evolutionary strategies, ant colony algorithms, etc.
But I could not find any more or less ready-made software tools that would implement these algorithms.
Whether there are such means for the decision of this task in relation to any DB (Oracle or others)?
Or is a highly specialized tool implemented for each system?
Or does no one just take a steam bath with the solution of this problem, and the data is scattered by eye?
And does anyone have examples of distributed database systems that have been optimized this way?
Thank you!
Answer the question
In order to leave comments, you need to log in
The task is, of course, very interesting in the abstract...
In practice, there is one BIG BUT... Based on your wording, you want to _initially_ make an assessment and distribute the base, but in fact, where is the guarantee that an imbalance will occur during the operation of the system and the cost of storage will increase somewhere MULTIPLE ... Then, in a good way, it is necessary to re-optimize storage, but IMHO, with sufficiently large amounts of data, this is not done ...
IMHO, you still need to distribute the database based on the LOGIC of work, which only a person knows ...
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question