The tool aims to compare data at schema level between two databases.
For instance, if we compare two dataset with a data difference on a single line, we may end up with a result like:
1/3 NOK tgt hash:(6E12FA362B03456CC7601ABEBD454F35) (in 4532.164ms) 40%
src:(50, 60, 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ')
tgt:(50, 60, 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNO')
2/3 OK src hash:(5D1FE7284E48A7F751672C7096F3FE98) (in 163.449ms) 79%
Dataset are different
Today, postgresql and oracle databases are supported.
Here a global concept overview: Scribedb in gdoc
You can check the example.
If you want to launch scribedb you can also use the docker image:
# We assume the configuration file in /working/dir/config.yaml reference the password DB1_PASS and DB2_PASS
$ docker run --rm -v /working/dir/config.yaml:/config.yaml -e DB1_PASS=xxxxx -e DB2_PASS=xxxxx decathlon/scribedb:2.0 -f /config.yaml
New features are always welcome (but first, you should open an issue to discuss new idea)
Please read contributing and our code of conduct, to check the process for submitting improvements/new features.
We use SemVer for versioning. For the versions available, see the tags on this repository.
- Pierre-Marie Petit - Initial work
See also the list of contributors who participated in this project.
- Hat tip to anyone whose code was used
- Inspiration
Copyright 2019-2022 Decathlon.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.