Mining the Sky The World-Wide Telescope Jim Gray Microsoft Research Collaborating with: Alex Szalay, Peter Kunszt, Ani Thakar @ JHU Robert Brunner, Roy Williams @ Caltech George Djorgovski, Julian Bunn @ Caltech1 Outline • The revolution in Computational Science • The Virtual Observatory Concept == World-Wide Telescope • The Sloan Digital Sky Survey & DB technology 2 Computational Science The Third Science Branch is Evolving • In the beginning science was empirical. • Then theoretical branches evolved. • Now, we have computational branches. – Has primarily been simulation – Growth area data analysis/visualization of peta-scale instrument data. • Analysis & Visualization tools – Help both simulation and instruments. – Are primitive today. 3 Computational Science • Traditional Empirical Science – Scientist gathers data by direct observation – Scientist analyzes data • Computational Science – Data captured by instruments Or data generated by simulator – Processed by software – Placed in a database / files – Scientist analyzes database / files 4 Exploring Parameter Space Manual or Automatic Data Mining • There is LOTS of data – people cannot examine most of it. – Need computers to do analysis. • Manual or Automatic Exploration – Manual: person suggests hypothesis, computer checks hypothesis – Automatic: Computer suggests hypothesis person evaluates significance • Given an arbitrary parameter space: – – – – – – Data Clusters Points between Data Clusters Isolated Data Clusters Isolated Data Groups Holes in Data Clusters Isolated Points Nichol et al. 2001 Slide courtesy of and adapted from5 Robert Brunner @ CalTech. Challenge to Data Miners: Rediscover Astronomy • Astronomy needs deep understanding of physics. • But, some was discovered as variable correlation then “explained” with physics. • Famous example: Hertzsprung-Russell Diagram star luminosity vs color (=temperature) • Challenge 1 (the student test): How much of astronomy can data mining discover? • Challenge 2 (the Turing test): Can data mining discover NEW correlations? 6 What’s needed? (not drawn to scale) Miners Scientists Science Data & Questions Data Mining Algorithms Plumbers Database To store data Execute Queries Question & Answer Visualization Tools 7 Data Mining: Science vs Commerce • Data in files • FTP a local copy /subset. ASCII or Binary. • Each scientist builds own • analysis toolkit • Analysis is tcl script of • toolkit on local data. • Some simple visualization • tools: x vs y Data in a database Standard reports for standard things. Report writers for non-standard things GUI tools to explore data. – Decision trees – Clustering – Anomaly finders 8 But…some science is hitting a wall FTP and GREP are not adequate • • • • You can GREP 1 MB in a second You can GREP 1 GB in a minute You can GREP 1 TB in 2 days You can GREP 1 PB in 3 years. • • • • You can FTP 1 MB in 1 sec You can FTP 1 GB / min (= 1 $/GB) … 2 days and 1K$ … 3 years and 1M$ • Oh!, and 1PB ~10,000 disks • At some point you need indices to limit search parallel data search and analysis • This is where databases can help 9 Why is Science Behind? • Inertia: – Science started earlier (Fortran,…) – Science culture works (no big incentive to change) • Energy – Commerce is about profit: better answers translate to better profits – So companies to build tools. • Impedance Mismatch – Databases don’t accommodate analysis packages – Scientist’s analysis needs to be inside the dbms. 10 Goal: Easy Data Publication & Access • Augment FTP with data query: Return intelligent data subsets • Make it easy to – Publish: Record structured data – Find: • Find data anywhere in the network • Get the subset you need – Explore datasets interactively • Realistic goal: – Make it as easy as publishing/reading web sites today. 11 Web Services: The Key? • Web SERVER: – Given a url + parameters – Returns a web page (often dynamic) Your program Web Server • Web SERVICE: – Given a XML document (soap msg) – Returns an XML document – Tools make this look like an RPC. • F(x,y,z) returns (u, v, w) – Distributed objects for the web. – + naming, discovery, security,.. • Internet-scale distributed computing Your program Data In your address space Web Service 12 Data Federations of Web Services • Massive datasets live near their owners: – – – – Near the instrument’s software pipeline Near the applications Near data knowledge and curation Super Computer centers become Super Data Centers • Each Archive publishes a web service – Schema: documents the data – Methods on objects (queries) • Scientists get “personalized” extracts • Uniform access to multiple Archives Federation – A common global schema 13 Grid and Web Services Synergy • I believe the Grid will have many web services • IETF standards Provide – Naming – Authorization / Security / Privacy – Distributed Objects Discovery, Definition, Invocation, Object Model – Higher level services: workflow, transactions, DB,.. • Synergy: commercial Internet & Grid tools 14 Outline • The revolution in Computational Science • The Virtual Observatory Concept == World-Wide Telescope • The Sloan Digital Sky Survey & DB technology 15 Why Astronomy Data? IRAS 25m •It has no commercial value –No privacy concerns –Can freely share results with others –Great for experimenting with algorithms 2MASS 2m •It is real and well documented –High-dimensional data (with confidence intervals) –Spatial data –Temporal data •Many different instruments from many different places and many different times •Federation is a goal •The questions are interesting IRAS 100m WENSS 92cm NVSS 20cm –How did the universe form? •There is a lot of it (petabytes) DSS Optical 16 ROSAT ~keV GB 6cm Time and Spectral Dimensions The Multiwavelength Crab Nebulae Crab star 1053 AD X-ray, optical, infrared, and radio views of the nearby Crab Nebula, which is now in a state of chaotic expansion after a supernova explosion first sighted in 1054 A.D. by Chinese Astronomers. 17 Slide courtesy of Robert Brunner @ CalTech. Even in “optical” images are very different Optical Near-Infrared Galaxy Image Mosaics BJ RF IN J H K BJ RF IN J H K One object in 6 different “color” bands 18 Slide courtesy of Robert Brunner @ CalTech. Astronomy Data Growth • • • • • In the “old days” astronomers took photos. Starting in the 1960’s they began to digitize. New instruments are digital (100s of GB/nite) Detectors are following Moore’s law. Data avalanche: double every 2 years 1000 100 Courtesy of Alex Szalay 10 1 0.1 1970 1975 1980 1985 1990 1995 2000 CCDs Glass Total area of 3m+ telescopes in the world in m2, total number of CCD pixels in megapixel, as a function of time. Growth over 25 years is a factor of 30 in glass, 300019 in pixels. Universal Access to Astronomy Data • Astronomers have a few Petabytes now. – 1 pixel (byte) / sq arc second ~ 4TB – Multi-spectral, temporal, … → 1PB • They mine it looking for new (kinds of) objects or more of interesting ones (quasars), density variations in 400-D space correlations in 400-D space • • • • • Data doubles every 2 years. Data is public after 2 years. So, 50% of the data is public. Some have private access to 5% more data. So: 50% vs 55% access for everyone 20 The Age of Mega-Surveys • Large number of new surveys – multi-TB in size, 100 million objects or more – Data publication an integral part of the survey – Software bill a major cost in the survey • The next generation mega-surveys are different – – – – top-down design large sky coverage sound statistical plans well controlled/documented data processing • Each survey has a publication plan MACHO 2MASS DENIS SDSS PRIME DPOSS GSC-II COBE MAP NVSS FIRST GALEX ROSAT OGLE ... • Federating these archives Slide courtesy of Alex21Szalay, Virtual Observatory modified by Jim Data Publishing and Access • But….. • How do I get at that 50% of the data? • Astronomers have culture of publishing. – FITS files and many tools. http://fits.gsfc.nasa.gov/fits_home.html – Encouraged by NASA. – FTP what you need. • But, data “details” are hard to document. Astronomers want to do it but it is VERY hard. (What programs where used? What were the processing steps? How were errors treated?…) • And by the way, few astronomers have a spare petabyte of storage in their pocket. • THESIS: Challenging problems are publishing data providing good query & visualization tools 22 Virtual Observatory http://www.astro.caltech.edu/nvoconf/ http://www.voforum.org/ • Premise: Most data is (or could be online) • So, the Internet is the world’s best telescope: – – – – It has data on every part of the sky In every measured spectral band: optical, x-ray, radio.. As deep as the best instruments (2 years ago). It is up when you are up. The “seeing” is always great (no working at night, no clouds no moons no..). – It’s a smart telescope: links objects and data to literature on them. 23 Demo of VirtualSky • Roy Williams @ Caltech Palomar Data with links to NED. • Shows multiple themes, shows link to other sites (NED, VizeR, Sinbad, …) • http://virtualsky.org/servlet/Page?T=3&S=21&P=1&X=0&Y=0&W=4&F=1 And NED @ http://nedwww.ipac.caltech.edu/index.html 24 Demo of Sky Server Alex Szalay of Johns Hopkins built SkyServer (based on TerraServer design). http://skyserver.sdss.org/ 25 Virtual Observatory Challenges • Size : multi-Petabyte 40,000 square degrees is 2 Trillion pixels – One band (at 1 sq arcsec) 4 Terabytes – Multi-wavelength 10-100 Terabytes – Time dimension >> 10 Petabytes – Need auto parallelism tools • Unsolved MetaData problem – Hard to publish data & programs – How to federate Archives – Hard to find/understand data & programs • Current tools inadequate – new analysis & visualization tools – Data Federation is problematic • Transition to the new astronomy – Sociological issues 26 Steps to Virtual Observatory Prototype • Get SDSS and Palomar data online – Alex Szalay, Jan Vandenberg, Ani Thacker…. – Roy Williams, Robert Brunner, Julian Bunn,… • Do local queries and crossID matches to expose – Schema, Units,… – Dataset problems – Typical use scenarios. • Define a set of Astronomy Objects and methods. – Based on UDDI, WSDL, SOAP. – Started this with TerraService http://TerraService.net/ ideas. – Working with Caltech (Brunner, Williams, Djorgovski, Bunn) and JHU (Szalay et al) on this – Each archive is a web service • Move crossID app to web-service base 27 Virtual Observatory and Education • The Virtual Observatory can be used to – Teach astronomy: make it interactive, demonstrate ideas and phenomena – Teach computational science skills 28 Outline • The revolution in Computational Science • The Virtual Observatory Concept == World-Wide Telescope • The Sloan Digital Sky Survey & DB technology 29 Sloan Digital Sky Survey http://www.sdss.org/ • For the last 12 years a group of astronomers has been building a telescope (with funding from Sloan Foundation, NSF, and a dozen universities). 90M$. • Y2000: engineer, calibrate, commission: now public data. – 5% of the survey, 600 sq degrees, 15 M objects 60GB, ½ TB raw. – This data includes most of the known high z quasars. – It has a lot of science left in it but…. • New the data is arriving: – 250GB/nite (20 nights per year) = 5TB/y. – 100 M stars, 100 M galaxies, 1 M spectra. • http://www.sdss.org/ and http://www.sdss.jhu.edu/ 30 Two kinds of SDSS data in an SQL DB (objects and images all in DB) • 15M Photo Objects ~ 400 attributes 50K Spectra with ~30 lines/ spectrum 31 Spatial Data Access – SQL extension (Szalay, Kunszt, Brunner) http://www.sdss.jhu.edu/htm • Added Hierarchical Triangular Mesh (HTM) table-valued function for spatial joins. • Every object has a 20-deep Mesh ID. 2 2,3,0 2,0 2,3,1 2,3,2 2,1 2,3,3 2,2 2,3 • Given a spatial definition: Routine returns up to ~10 covering triangles. • Spatial query is then up to ~10 range queries. • Very fast: 10,000 triangles / second / cpu.32 Data Loading • JavaScript of DB loader (DTS) • Web ops interface & workflow system • Data ingest and scrubbing is major effort – Test data quality – Chase down bugs / inconsistencies • Other major task is data documentation – Explain the data – Explain the schema and functions. • If we supported users, … 33 Scenario Design • Astronomers proposed 20 questions • Typical of things they want to do • Each would require a week of programming in tcl / C++/ FTP • Goal, make it easy to answer questions • DB and tools design motivated by this goal – Implementd utility prodecures – JHU Built GUI for Linux clients 34 The 20 Queries Q1: Find all galaxies without unsaturated pixels within 1' of a given point of ra=75.327, dec=21.023 Q2: Find all galaxies with blue surface brightness between and 23 and 25 mag per square arcseconds, and -10<super galactic latitude (sgb) <10, and declination less than zero. Q3: Find all galaxies brighter than magnitude 22, where the local extinction is >0.75. Q4: Find galaxies with an isophotal surface brightness (SB) larger than 24 in the red band, with an ellipticity>0.5, and with the major axis of the ellipse having a declination of between 30” and 60”arc seconds. Q5: Find all galaxies with a deVaucouleours profile (r¼ falloff of intensity on disk) and the photometric colors consistent with an elliptical galaxy. The deVaucouleours profile Q6: Find galaxies that are blended with a star, output the deblended galaxy magnitudes. Q7: Provide a list of star-like objects that are 1% rare. Q8: Find all objects with unclassified spectra. Q9: Find quasars with a line width >2000 km/s and 2.5<redshift<2.7. Q10: Find galaxies with spectra that have an equivalent width in Ha >40Å (Ha is the main hydrogen spectral line.) Q11: Find all elliptical galaxies with spectra that have an anomalous emission line. Q12: Create a grided count of galaxies with u-g>1 and r<21.5 over 60<declination<70, and 200<right ascension<210, on a grid of 2’, and create a map of masks over the same grid. Q13: Create a count of galaxies for each of the HTM triangles which satisfy a certain color cut, like 0.7u-0.5g-0.2i<1.25 && r<21.75, output it in a form adequate for visualization. Q14: Find stars with multiple measurements and have magnitude variations >0.1. Scan for stars that have a secondary object (observed at a different time) and compare their magnitudes. Q15: Provide a list of moving objects consistent with an asteroid. Q16: Find all objects similar to the colors of a quasar at 5.5<redshift<6.5. Q17: Find binary stars where at least one of them has the colors of a white dwarf. Q18: Find all objects within 30 arcseconds of one another that have very similar colors: that is where the color ratios u-g, g-r, r-I are less than 0.05m. Q19: Find quasars with a broad absorption line in their spectra and at least one galaxy within 10 arcseconds. Return both the quasars and the galaxies. Q20: For each galaxy in the BCG data set (brightest color galaxy), in 160<right ascension<170, -25<declination<35 count of galaxies within 30"of it that have a photoz within 0.05 of that galaxy. Also some good queries at: http://www.sdss.jhu.edu/ScienceArchive/sxqt/sxQT/Example_Queries.html 35 An Easy One Q15: Provide a list of moving objects consistent with an asteroid. • Sounds hard but there are 5 pictures of the object at 5 different times (color filters) and so can “see” velocity. • Image pipeline computes velocity. • Computing it from the 5 color x,y would also be fast • Finds 1,303 objects in 3 minutes, 140MBps. (could go 2x faster with more disks) select objId, dbo.fGetUrlEq(ra,dec) as url --return object ID & url sqrt(power(rowv,2)+power(colv,2)) as velocity from photoObj -- check each object. where (power(rowv,2) + power(colv, 2)) -- square of velocity between 50 and 1000 -- huge values =error 37 Q15: Fast Moving Objects • Find near earth asteroids: SELECT r.objID as rId, g.objId as gId, dbo.fGetUrlEq(g.ra, g.dec) as url FROM PhotoObj r, PhotoObj g WHERE r.run = g.run and r.camcol=g.camcol and abs(g.field-r.field)<2 -- nearby -- the red selection criteria and ((power(r.q_r,2) + power(r.u_r,2)) > 0.111111 ) and r.fiberMag_r between 6 and 22 and r.fiberMag_r < r.fiberMag_g and r.fiberMag_r < r.fiberMag_i and r.parentID=0 and r.fiberMag_r < r.fiberMag_u and r.fiberMag_r < r.fiberMag_z and r.isoA_r/r.isoB_r > 1.5 and r.isoA_r>2.0 -- the green selection criteria and ((power(g.q_g,2) + power(g.u_g,2)) > 0.111111 ) and g.fiberMag_g between 6 and 22 and g.fiberMag_g < g.fiberMag_r and g.fiberMag_g < g.fiberMag_i and g.fiberMag_g < g.fiberMag_u and g.fiberMag_g < g.fiberMag_z and g.parentID=0 and g.isoA_g/g.isoB_g > 1.5 and g.isoA_g > 2.0 -- the matchup of the pair and sqrt(power(r.cx -g.cx,2)+ power(r.cy-g.cy,2)+power(r.cz-g.cz,2))*(10800/PI())< 4.0 and abs(r.fiberMag_r-g.fiberMag_g)< 2.0 • Finds 3 objects in 11 minutes – (or 52 seconds with an index) • Ugly, 38 but consider the alternatives (c programs an files and…) – 39 40 41 Performance (on current SDSS data) IO count • Run times: on 15k$ COMPAQ Server (2 cpu, 1 GB , 8 disk) cpu vs IO 1E+7 • Some take 10 minutes 1E+6 1E+5 • Some take 1 minute 100 IOs/cpu sec 1E+4 1E+3 • Median ~ 22 sec. 1E+2 • Ghz processors are fast! 1E+1 – (10 mips/IO, 200 ins/byte) – 2.5 m rec/s/cpu seconds 1000 1E+0 0.01 1. 10. 100. 1,000. CPU sec 10 1 0.1 time vs queryID cpu elapsed 100 ~1000 IO/cpu sec ~ 70 MB IO/cpu sec ae Q08 Q01 Q09 Q10A Q19 Q12 Q10 Q20 Q16 Q02 Q13 Q04 Q06 Q11 Q15B Q17 Q07 Q14 Q15A Q05 Q03 42 Q18 Summary of Queries • All have fairly short SQL programs -a substantial advance over (tcl, C++) • Many are sequential one-pass and two-pass over data • Covering indices make scans run fast • Table valued functions are wonderful but limitations are painful. • Counting, Binning, Histograms VERY common • Spatial indices helpful, • Materialized view (Neighbors) helpful. 43 Call to Action • If you do data visualization: we need you (and we know it). • If you do databases: here is some data you can practice on. • If you do distributed systems: here is a federation you can practice on. • If you do data mining here are datasets to test your algorithms. • If you do astronomy educational outreach here is a tool for you. • The astronomers are very good, and very smart, and a pleasure to work with, and 44 the questions are cosmic, so … 45 SDSS what I have been doing • Work with Alex Szalay, Don Slutz, and others to define 20 canonical queries and 10 visualization tasks. • Working with Alex Szalay on building Sky Server and making data it public (send out 80GB SQL DBs) 54