Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Staging deployment and Railway statistics #157

Merged
merged 24 commits into from
Oct 1, 2019

Conversation

jpolchlo
Copy link
Collaborator

@jpolchlo jpolchlo commented Aug 1, 2019

We've been somewhat primitive in the way that we deploy and test different versions of OSMesa. A request arrived where we finally could not ignore the fact that a staging environment was needed, as it showed our terrible lack of sophistication in the way that we were storing and dealing with statistics. Previously, every small change to the stats would require a change in table schema, which required a complex backfill process into an existing and actively used DB table. Following which, we would need to restart a streaming update process and then infill. All because we were amending a live table that was feeding a process visible to end users.

This PR will split our deployments into staging and production environments. This considerably simplifies changes, as they can be private to a development team. Rolling out a new stat will then be accomplished by deleting the contents of any existing tables, repopulating the tables, restarting a streaming process (which can take as long as needed to catch up), and then redeploying dependent services.

This split was prompted by the need for railway statistics reporting which are also added to this PR.

The changes here are mirrored by those in azavea/osmesa-stat-server#22.

@jpolchlo
Copy link
Collaborator Author

jpolchlo commented Aug 1, 2019

Managed a successful ingest of the basic stats. These are currently populating the staging DB. Will take the time to see that we have identified any railway stats, but seems like the JSON stuff works, after slight modification (see last commit). I'll try and fire up the streaming job in the morning.

@jpolchlo
Copy link
Collaborator Author

jpolchlo commented Aug 6, 2019

Can positively report that railway stats are in the table. Also, we are now automatically adding checkpoints to the DB so that we can more smoothly start up the streaming update process

@jpolchlo jpolchlo changed the title Railway statistics Staging deployment and Railway statistics Aug 23, 2019
@jpolchlo
Copy link
Collaborator Author

jpolchlo commented Sep 25, 2019

This now depends on geotrellis/vectorpipe#109. I'll need to merge that PR and cut a new minor release prior to merging this contribution.

@@ -0,0 +1,88 @@
[
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this needed?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Used here. Perhaps it's not needed? I may have just included this as a test. I don't entirely recall.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When I've run things in the past, I haven't needed this, fwiw. It looks like it may be GT boilerplate for EMR.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's probably not needed. I was throwing whatever at the wall to get things to run to completion, so I think I can drop it now that things are all sussed out.

}
)

object MergeChangesetUtils {
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since this is used elsewhere, should it be outside of the oneoffs package?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is so much reorganization of this repo that needs to happen. I can see breaking out oneoffs into streaming, batch, and utilities.

@jpolchlo
Copy link
Collaborator Author

jpolchlo commented Oct 1, 2019

Seems like the long chain of discussion here has finally played out. Merging.

@jpolchlo jpolchlo merged commit 96b1de0 into azavea:develop Oct 1, 2019
jpolchlo added a commit to jpolchlo/osmesa that referenced this pull request Nov 20, 2019
Staging deployment and Railway statistics
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants