We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

CubeSats, FOSS4G, and cubesatdata.com

00:00

Formal Metadata

Title
CubeSats, FOSS4G, and cubesatdata.com
Alternative Title
How open-source software made CubeSatData.com possible
Title of Series
Number of Parts
295
Author
Contributors
License
CC Attribution 3.0 Germany:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
Over the last several years, Element 84 has been centrally involved in NASA’s transition to the cloud, supporting their Earth Observing System (EOS) and Earthdata programs representing over 20PBs of remote sensing data and preparing for an order of magnitude increase with upcoming missions. Based on this experience, and backed by a variety of great open-source software, we have created a self-service remote sensing data management platform for smaller projects and teams. Cubesatdata.com is designed to support data management following downlink of L0 data and includes end-to-end system architecture, cloud archive optimization, data pipeline processing and archives of convenience, as well as a robust user-interface for search, discovery, and visualizations. This managed service provides a lower cost of entry for academic institutions, nonprofits, and other small businesses who lack the domain expertise or the desire to support an end-to-end data management system. This talk will focus on how the Cubesatdata.com service works and what open-source software made it possible.
Keywords
129
131
137
139
Thumbnail
28:17
Set (mathematics)BitLecture/ConferenceComputer animation
MassMereologySatelliteCubeLatent heatSpacetimeUniverse (mathematics)Probability density functionCubeSatelliteXML
MassSatelliteMaxima and minimaMassOrbitOrder (biology)CubeRange (statistics)Term (mathematics)SatelliteQuicksortMechanism designShape (magazine)Multiplication signQueue (abstract data type)BitMetropolitan area networkExecution unitFrequencyComputer animation
Software engineeringDiameterCubeIterationElement (mathematics)SatelliteComputer hardwareMathematical analysisSoftwareComputer configurationFaktorenanalyseForm (programming)Computer configurationBitPhysical systemVideoconferencingMultiplication signWindowSatelliteSpecial unitary groupSoftware developerOrbitMedical imagingComputerComputer hardwareQuantum stateMaxima and minimaSeries (mathematics)Latent heatExterior algebraSoftwareStreaming mediaQuicksortSpacetimeCubeUniverse (mathematics)Vapor barrierAlgorithmSet (mathematics)Standard deviationVideo game consoleMathematical analysisComputer animation
SpacetimeEstimationSatelliteCollisionObject (grammar)Vapor barrierNumberArithmetic meanProcess (computing)SatelliteDreizehnStudent's t-testCubeUniverse (mathematics)Set (mathematics)OrbitSpecial unitary groupEntire functionComputer animationSource code
Variety (linguistics)Multiplication signBuildingSpacetimeArithmetic meanSatelliteUniverse (mathematics)OpticsProcess (computing)Computer simulationComputer animation
Drop (liquid)Standard deviationDigital rights managementData storage deviceProcess (computing)Function (mathematics)Scale (map)Software frameworkDistribution (mathematics)Point cloudProjective planePhysical systemSoftware developerProcess (computing)QuicksortSoftware frameworkLibrary (computing)Band matrixDrop (liquid)Pattern languageOrder of magnitudeOpen setDemosceneComponent-based software engineeringDebuggerFunctional (mathematics)SynchronizationOpen sourceService (economics)Distribution (mathematics)Data centerStandard deviationBuildingAdditionSatelliteData storage deviceOrder (biology)DataflowPoint cloudFlow separationDiagramWebsiteRule of inferenceMetadataElement (mathematics)Operator (mathematics)Internet service providerGame controllerPredictabilityCubeMassCASE <Informatik>File archiverInstance (computer science)Workstation <Musikinstrument>Uniform resource locatorComputer hardwareDigital rights managementGravitationFreewareComputerLibrary catalogRight angleComputer animation
Lambda calculusServer (computing)Cluster samplingScaling (geometry)CodeSoftware developerElement (mathematics)Order of magnitudeService (economics)Slide ruleLevel (video gaming)Fiber bundleDrop (liquid)SatelliteProcess (computing)QuicksortExtreme programmingDebuggerSatelliteMultiplication signTask (computing)CodeAlgorithmCASE <Informatik>Order of magnitudeProcess (computing)Functional (mathematics)Open sourceStandard deviationMereologyBasis <Mathematik>Point cloudAlpha (investment)Lambda calculusBuildingLibrary catalogStack (abstract data type)PrototypeWeb browserSoftware developerElement (mathematics)Queue (abstract data type)GeometryData storage deviceClient (computing)Operator (mathematics)Cloud computingSoftwareForcing (mathematics)Medical imagingPoint (geometry)BitComputer animation
Physical systemSpacetimeProper mapBitBuildingCloud computingStandard deviationInternet service providerOperator (mathematics)Right angleSoftwareOpen sourceDependent and independent variablesMultiplication signProcess (computing)Arithmetic meanSatelliteTerm (mathematics)CubeComputer animation
Dependent and independent variablesMultiplication signSource codeComputer animationLecture/Conference
Multiplication sign
Transcript: English(auto-generated)
Okay. Hello, everyone. Welcome, Phosphor G. I'm going to talk about CubeSats today, and specifically Phosphor G and something that we've put together called CubeSatData.com.
So first off, let's just talk a little bit about CubeSats. So there's actually this great PDF that NASA put out called CubeSat 101. So if you're interested in launching your own CubeSat, this is a great resource to check out. It'll tell you everything that you need to know about the CubeSat specification.
So what is a CubeSat exactly? So the CubeSat is actually a specification that, again, was released by the PDF was put out by NASA, but it's actually was put out by the some university.
I can't remember. And they put out the specification so that CubeSats could be more easily mass produced and launched easier and put up into space for a much lower cost. And the design specification, you can also, it's freely downloadable.
Here, some of the, something didn't come out there, but satellites are categorized by the mass. Now, CubeSats, what we're talking about here, are actually in the nano satellite range. So when we mention CubeSats, we're generally talking about satellites that are about one kilogram
to 10 kilograms at the most. Most of them are gonna be about perhaps two to three kilograms. That size can have an impact on the lifespan and the exact orbit of the CubeSat. But generally, we're talking about the nanoSats.
The FEMTO, ATTO, and ZEPTO satellites, those are generally like not, those are really, if those have been successfully launched, they would generally last a very short period of time, perhaps on the order of days. Oh, there we go, nano satellites, okay.
So CubeSats are specified by their size in terms of U, that's one unit. And it's a cube, CubeSats, but you're not limited to just a single one U cube. You can actually put those together in any sort of shape that you want,
down to a quarter of a U, and up to 16 U, and we're actually, I believe, gonna have 20 U deployment mechanisms available fairly soon. So when it comes to launching these things, the way that things used to be done, now things are a little bit more advanced,
but you used to put them up to the space station, and they literally would open up a window and throw them outside. So there's a space station, then you can watch it, there's some great videos of Planet putting out their early satellites, and that's essentially what they did, throw them out the window. But the CubeSat specification and the sizes,
this is pretty much like a container ship, allows you to pack a lot of stuff into one container, everything is exactly the same size, and so we have a better way to do it, we have these dispenser systems, and they're kind of just bolted on to whatever
isn't gonna fall off, and the launch vehicle says when to release these, and the door opens up, and they sort of all just stream out in whatever orbit it is that they're in at the time. What you're seeing here is a Landsat 8 versus a CubeSat,
so we see that the CubeSats are, of course, much, much smaller than the Landsat, but the CubeSats don't cost billions of dollars, but they have different goals, right? You're not gonna replace the Landsat series of satellites with CubeSats.
Landsat, Sentinel, these are science-quality data, whereas CubeSats are really made for shorter lifetimes, experimentation, rapid development of algorithms, and also, as we see, what Planet has done
is that they can put together a cheap constellation and image the Earth in a much faster revisit time than we can with Landsat at a much lower cost. The CubeSats, of course, have a much lower lifespan. They're in a much lower Earth orbit. This is actually interesting, it's cheaper
because they're in that low Earth orbit because they're not as subjected to the damaging rays of the sun. With Landsat and satellites that are higher up in orbit, they need to have much more protective shielding, and they have, of course, expensive star trackers, and much better hardware for the quality of the data.
The CubeSats will last weeks to months, it says here, perhaps 18 months. Planet, I believe, has some in orbit that are four years old now, but you're generally not gonna get much more than four to five years. So, when you wanna now take your data from your CubeSat
and make it analysis-ready, that cheaper hardware means relying on a lot more intelligent, complicated software for the calibration and the correction. There's actually a great talk, it's not available yet, but it should be in the coming weeks from this ARD conference that was at Menlo Park in California earlier this month, and he talks about how software systems can be used
to substitute for much more expensive hardware systems and the challenges involved with making analysis-ready data from cheaper quality CubeSats. So, you can actually go to cubesatshop.com.
So, if you wanna get a CubeSat, here you go. This is where you start. You can go there, you buy your satellite, you can buy an instrument, you can put that together, okay, and you can even go to spaceflight.com or other alternatives and you can get your CubeSat launched. So, $350,000 is about the minimum
that it's gonna cost you, which is quite reasonable. Now, this makes it much more accessible for universities, small businesses, the standardized buses, the standardized instruments. It means that buying commercial off-the-shelf CubeSats
is a really legitimate option and we have a much reduced barrier to entry, and we see that with the number of launches of nano satellites just since when they really started taking off in 2013, and we have a great increase that we're expecting
over the next four to five years. And if you look at the institutions that are actually launching these, we see that there's a huge number of universities launching these things. These are great educational tools, a university for fairly cheap can launch a satellite,
they can keep that in orbit for a couple years, and students can learn a great deal from that entire process and collecting the data off of that. Of course, this means space debris is a potential problem.
Now, when CubeSats are launched into low Earth orbit, they don't actually, when they reach the end of their lifespan, their orbits do degrade and they burn up in the atmosphere. It's true, so they don't, so space debris created by these nano satellites aren't so much of a problem in and among themselves, but while they're up there,
they do create a great number of possible obstacles for other satellites. And so you see here that each of the LEO satellites operated by ESA has to perform a maneuver at least once a year just to avoid other stuff. And you saw that the increase in nano satellites is gonna go up,
and so this is going to become a major problem. So there's a wide variety of instruments available for these CubeSats, and so we're not just talking necessarily about optical. Capella Space is putting up small sats
that have a SAR on board. There's really a wide variety of instruments that are available, and so these require more diverse needs for processing the data. So you can imagine, though, that you're a university, you don't necessarily wanna spend your whole entire time working on building these processing pipelines.
You really just want the data. That's the important thing. You can build a processing pipeline with simulated data. So that's not really all that novel. And so we created cubesatdata.com, and it's a managed pipeline for processing and distributing, archiving the data from CubeSats
using something we call FilmDrop. So the name, of course, FilmDrop comes from back in the early days when satellites used to actually take film and then drop it to the Earth, where it would then be processed. So we start off with the CubeSat.
That data goes down to a ground station. This could be AWS has a new managed service called AWS Ground Stations, or it could be another ground station provider. This data is then picked up in FilmDrop. It's archived, it's stored, and it goes through a processing pipeline, and ultimately we have the discovery
and access to the end user. So the data is stored and indexed, and we use open standards for data wherever possible.
So this means stack. If you've not heard of stack, I'll be giving a talk about that on Friday morning. And with the processing pipeline, which I'll get into in a minute, you only write the processing functions. You don't have to actually worry about any of the scaling or any of the deployment.
You just write the processing functions, and FilmDrop will automatically, we can deploy that and scale that depending on how many scenes and the bandwidth of the data. For processing, we use a library and open source project called Cumulus, which is something that NASA is currently working on.
So NASA has 12 data centers throughout the United States, and that's where all of the NASA data gets processed through and distributed. They generally have themes like PODAC is a physical oceanography, so all of the oceanographic data for NASA goes processed through there.
GHRC is for hydrology, and so on. And so NASA used to maintain these data centers, but logistically, there's all sorts of challenge there. You have to predict data usage, the hardware, you have to maintain the hardware, and so NASA is slowly moving to the cloud. And so the Cumulus framework is something
that has been developed with element 84 and development C. And it's open source project. You can go to it. It is, I do warn you, it's quite complicated, but when it's all working, it works pretty well.
And so here we see Cumulus offers several benefits. There's a dashboard built in so that operators, this is a diagram for how Cumulus works within the NASA framework, but we have taken this and modified it to use within cubesatdata.com on film drop.
So the operator has a dashboard. They can set up rules and set up collections in order to process data and control the flow of that data through the system, and also be able to monitor it, rerun data when it fails, and be able to monitor failures as well. The data gets ingested, it's cataloged,
and everything uses an API through it. So the dashboard is simply linking up to an API on the back end. So you can build additional tools off of this, and you're not relying just on necessarily the dashboard here. You can build whatever tools you want to on top of the system.
And the workflow there is, that's where the user is ultimately just gonna provide the processing functions into the system. So Cumulus is made up of several different steps, three of these reusable components. So for instance, you can sync a granule, which means move it from one place,
like bring it into the system. You process it, you move it to some sort of storage location, long-time storage, perhaps it's Glacier, depending on the data access patterns. You move that granule to maybe a distribution site or something like that. And then here, it says post to CMR,
but in our case, we actually post that to SAT API, which is a stack compliant API. But the idea is the same, is that you're posting this metadata into your catalog so that now you can access that from the front end. Failures are all handled and logged throughout the system and accessible by the operator.
So we have a pretty robust scaling through the workflow. It handles edge cases, in fact, that's actually one of the major efforts in Cumulus, as you can imagine. NASA processes a lot of data, and so really a lot of the work has been
in being able to handle all sorts of really extreme edge cases and special cases so that failures are well understood. The processing itself could run in a Lambda function if you meet the requirements of the Lambda, so within 15 minutes and you don't need
more than X amount of storage, or you can use clusters as well. You deploy, you write your function, it's deployed as a Docker image, and then that's automatically scaled up depending on how many tasks are in the queue, depending on the wait time of the queue, and so on. So here we have science developers, again,
that can focus on just writing the actual processing code and not have to worry about building and deploying the entire pipeline. So finally we get to discovery and access. So, and this is really the important part that the end users are gonna be interested in for searching, discovering, and visualizing this data.
And so we use Sat API for that. Sat API is a stack compliant endpoint, and I'll be talking about that on Friday. If you've not heard of stack, you can use this yourself. It's open source. You can deploy this and ingest catalogs, stack catalogs fairly easily,
and even keep them up to date by subscribing to SNS topics that provide new data. So then with everything in an API that's stack compliant, we can build all sorts of tools off this. So now we can have a front end. In this case, this is a Sat API browser,
which is just, it's recently released. It's just an alpha prototype by DevelopmentSeed. So this could be your front end if you so choose. We've also, at Element, have developed various NASA tools like On Earth, and these could prove as the basis
for integrating into the API as well for the discovery, search, and access to the data, or the Earth data search plan, which we are also involved in. Another interesting thing, I will actually be talking about this tomorrow morning,
is there's Pangeo is a community of scientists and stuff, but what I wanted to get across here is that you can also, the front end could be also JupyterHub, where you're accessing cloud native data, you're accessing the API, and you can run algorithms and scale those up because everything is using these open standards.
And there we have Filmdrop. So we can see that most of this is based on free and open source software. Really, the bits that aren't are essentially what we use to deploy this into the cloud infrastructure.
And this really allows operators to focus on the mission and not have to worry about anything else. And it's critical, the open standards are critical to this entire process, as it really allows us to build this out and build APIs and systems that can be easily integrated and built upon and expanded.
Thank you. And also, I have stickers too, so you can ask them. And I'm right on time, we're actually back on time here, so do we have any questions? Right here.
Well, that's a great question. I have no idea what the answer is. The question was what responsibility to CubeSat data providers
launches have on this. And of course, you can't launch anything into space just on your own. You need proper licensing, and places like Space Flight will help you with that, and everything is licensed through NOAA, is who handles all the licensing when things are launched.
But as far as the responsibility, I mean, I guess that's the responsibility, is you have to go through a governing agency in the US, but long-term, I don't know, maybe we all have a greater responsibility to work harder and think about what could be done
to alleviate this problem, because it's only gonna become a bigger problem in the future. Any other questions? Thank you again. May you get plenty of time to get to the next talk.
Thanks.

Recommendations

Thumbnail
Thumbnail
Thumbnail
  Series of 53 media
Thumbnail
Thumbnail
Thumbnail
  Series of 95 media
Thumbnail
Thumbnail
Thumbnail
  Series of 183 media
Thumbnail
Thumbnail
Thumbnail
  Series of 295 media
Thumbnail
Thumbnail
Thumbnail
  Series of 193 media