Comments (4)
Hey @gedw99 and thanks for reaching out.
The underlying schemas specification is "generic" (language agnostic), and HCL was started as a first experiment for implementing it. We plan to provide also support for JSON, SQL, TypeScript, and a Go API for defining the schema as well. You can find more about it on atlas/schemaspec.
Normally a developer would create a migration script as they work.
Alternatively, they can also diff two databases later to produce a migration script.
Both options will be supported in the upcoming releases. A way to move from the current database state to the desired state (defined in HCL for example), and a way to generate a migration spec/script.
I ask this because i am facing this issue many databases at the moment. The databases are NOT controlled by a DBA or DEV; but have new data schemas being developed at runtime by users, and so using HCL provides a way to determine the difference between the actual schema of the database and the intended one.
Also JSON Schema is used by the User to describe what they want the DB to model. These JSON Schema are then translated at runtime into DB Migration scripts. So i could then instead create a HCL script and then compare that against the actual DB, and then find the diff of what needs to be applied at runtime. Very useful.
We plan to provide more than this. Please, if you have time to discuss this, let me know how I can contact you. I'll be happy to share with you the project roadmap and get your feedback
Please, feel free to ping me on ent's Slack channel or email.
from atlas.
thanks @a8m
Yeah i am really interested in what Atlas provides, and would love to discuss things and find out more
Telegram: http://t.me/gedw99
I also messaged you on slack too.
so take your pick :)
from atlas.
Hey @gedw99 and sorry for the delay. Let's continue the discussion on Slack.
from atlas.
No probs . Yep see you there sometime
from atlas.
Related Issues (20)
- Support of views and functions HOT 1
- When using "atlas migrate lint" on PostgreSQL, it shows concurrent index violations, but there are none HOT 4
- alpine build error HOT 2
- invalid userinfo when use password include special characters HOT 6
- Atlas Kubernetes Operator, getting error when migration has "CREATE INDEX CONCURRENTLY" HOT 6
- Integration of AtlasGo with an existing target database HOT 1
- Unable to apply changes if schema contains ENUM HOT 3
- Create Nix package HOT 4
- operator: improve logging and explain what the operator does
- external_schema doesn't work with `atlas schema diff` HOT 2
- Atlas cannot parse 'double unsigned zerofill' correctly on MySQL HOT 7
- Add support for NULLS NOT DISTINCT
- Postgres: missing FK constraints for non-owner
- CLI: atlasgo.sh installer ignoring `ATLAS_FLAVOR="community"` HOT 5
- Support libsql+ws:// scheme for local environment libSQL databases HOT 7
- `AUTO_INCREMENT` do not work with `atlas schema diff` in mysql
- Unexpected view definition on v0.13.0 HOT 16
- when use schema_diff with error executing "schema_diff" at <sql $>: error calling sql: alter table "xxx": unexpected attribute change (expect IDENTITY): [] HOT 3
- Generating migration for time field with default value is not working HOT 1
- duplicate table names breaks schema inspect HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from atlas.