71
http://research.microsoft.com/~gray/talks/c ern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research [email protected] http://research.microsoft.com/ ~gray/talks

Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research [email protected] gray/talks

Embed Size (px)

Citation preview

Page 1: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt1

Store Everything

OnlineIn A Database

Jim GrayMicrosoft Research

[email protected]://research.microsoft.com/~gray/talks

Page 2: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt2

Outline• Store Everything• Online (Disk not Tape)

• In a Database• A Federated DB• Two Examples

Page 3: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt3

How Much is Everything?• Soon everything can be

recorded and indexed• Most bytes will never be

seen by humans.• Data summarization, trend

detection anomaly detection are key technologies

See Mike Lesk: How much information is there: http://www.lesk.com/mlesk/ksg97/ksg.html

See Lyman & Varian:

How much informationhttp://www.sims.berkeley.edu/research/projects/how-much-info/

Yotta

Zetta

Exa

Peta

Tera

Giga

Mega

KiloA BookA Book

.Movie

All LoC books(words)

All Books MultiMedia

Everything!

Recorded

A PhotoA Photo

24 Yecto, 21 zepto, 18 atto, 15 femto, 12 pico, 9 nano, 6 micro, 3 milli

Page 4: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt4

1E+3

1E+4

1E+5

1E+6

1E+7

1988 1991 1994 1997 2000

disk TB growth: 112%/y

Moore's Law: 58.7%/y

ExaByte

Disk TB Shipped per Year1998 Disk Trend (J im Porter)

http://www.disktrend.com/pdf/portrpkg.pdf.

Storage capacity beating Moore’s law

2.3 k$/TB today (raw disk)

1k$/TB by end of 2002

Moores law 58.70% /year

Revenue 7.47%TB growth 112.30% (since 1993)

Price decline 50.70% (since 1993)

Page 5: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt5

Outline• Store Everything• Online (Disk not Tape)

• In a Database• A Federated DB• Two Examples

Page 6: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt6

Online Data

• Can build 1PB of NAS disk for 5M$ today

• Can SCAN (read or write) entire PB in 3 hours.• Operate it as a data pump: continuous sequential scan

• Can deliver 1PB for 1M$ over Internet– Access charge is 300$/Mbps bulk rate

• Need to Geoplex data (store it in two places).

• Need to filter/process data near the source,– To minimize network costs.

Page 7: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt7

The “Absurd” Disk

• 2.5 hr scan time (poor sequential access)

• 1 access per second / 5 GB (VERY cold data)

• It’s a tape!

1 TB100 MB/s

200 Kaps

Page 8: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt8

Disk vs Tape

Disk– 80 GB– 35 MBps– 5 ms seek time– 3 ms rotate latency– 2$/GB for drive

2$/GB for ctlrs/cabinet– 15 TB/rack

– 1 hour scan

Tape– 40 GB– 10 MBps– 10 sec pick time– 30-120 second seek time– 2$/GB for media

8$/GB for drive+library– 10 TB/rack

– 1 week scan

The price advantage of disk is growing the performance advantage of disk is huge!At 10K$/TB, disk is competitive with nearline tape.

GuestimatesCern: 200 TB3480 tapes2 col = 50GBRack = 1 TB=12 drives

Page 9: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt9

0

100

200

300

400

500

Premium SAN Dell/3ware DIY

Building a Petabyte Disk Store• Cadillac ~ 500k$/TB = 500M$/PB

plus FC switches plus… 800M$/PB• TPC-C SANs (Brand PC 18GB/…) 60M$/PB• Brand PC local SCSI 15M$/PB• Do it yourself ATA 5M$/PB

Page 10: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt10

Cheap Storage and/or Balanced System

• Low cost storage (2 x 3k$ servers) 5K$ TB2x ( 800 Mhz, 256Mb + 8x80GB disks + 100MbE)

raid5 costs 6K$/TB

• Balanced server (5k$/.64 TB)– 2x 1Ghz (2k$)– 512 MB – 8 x 80 GB drives (2K$)– Gbps Ethernet + switch (300$/port)– 9k$/TB 18K$/mirrored TB

2x1 Ghz512 MB

Page 11: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt11

Next step in the Evolution• Disks become supercomputers

– Controller will have 1bips, 1 GB ram, 1 GBps net– And a disk arm.

• Disks will run full-blown app/web/db/os stack

• Distributed computing

• Processors migrate to transducers.

Page 12: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt12

It’s Hard to Archive a PetabyteIt takes a LONG time to restore it.

• At 1GBps it takes 12 days!• Store it in two (or more) places online (on disk?).

A geo-plex• Scrub it continuously (look for errors)• On failure,

– use other copy until failure repaired, – refresh lost copy from safe copy.

• Can organize the two copies differently (e.g.: one by time, one by space)

Page 13: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt13

Outline• Store Everything• Online (Disk not Tape)

• In a Database• A Federated DB• Two Examples

Page 14: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt14

Why Not: file = object + GREP?• It works if you have thousands of objects

(and you know them all)

• But hard to search millions/billions/trillions with GREP

• Hard to put all attributes in file name.– Minimal metadata

• Hard to do chunking right.

• Hard to pivot on space/time/version/attributes.

Page 15: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt15

The Reality: it’s build vs buy

• If you use a file system you will eventually build a database system:– metadata, – Query, – parallel ops, – security,….– reorganize, – recovery, – distributed, – replication,

Page 16: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt16

OK: so I’ll put lots of objects in a fileDo It Yourself Database

• Good news: – Your implementation will be 10x faster (at least!)– easier to understand and use

• Bad news: – It will cost 10x more to build and maintain– Someday you will get bored maintaining/evolving it– It will lack some killer features:

• Parallel search• Self-describing via metadata• SQL, XML, … • Replication• Online update – reorganization• Chunking is problematic (what granularity, how to aggregate)

Page 17: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt17

Top 10 reasons to put Everything in a DB1. Someone else writes the million lines of code2. Captures data and Metadata,3. Standard interfaces give tools and quick learning4. Allows Schema Evolution without breaking old apps5. Index and Pivot on multiple attributes

space-time-attribute-version….6. Parallel terabyte searches in seconds or minutes7. Moves processing & search close to the disk arm

(moves fewer bytes (qestons return datons). 8. Chunking is easier (can aggregate chunks at server).9. Automatic geo-replication 10. Online update and reorganization. 11. Security 12. If you pick the right vendor, ten years from now, there will

be software that can read the data.

Page 18: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt18

DB Centric Examples

• TerraServer– All images and all data in the database (chunked as small

tiles).www.TerraServer.Microsoft.com/

– http://research.microsoft.com/~gray/Papers/MSR_TR_99_29_TerraServer.doc

• SkyServer & Virtual Sky– Both image and semantic data in a relational store.– Parallel search & NonProcedural access are important.– http://research.microsoft.com/~gray/Papers/MS_TR_99_30_Sloan_Digital_Sky_Survey.doc

– http://skyserver.sdss.org/getMosaic.asp?Z=1&A=1&T=4&H=1&S=10&M=30– http://virtualsky.org/servlet/Page?F=3&RA=16h+10m+1.0s&DE=

%2B0d+42m+45s&T=4&P=12&S=10&X=5096&Y=4121&W=4&Z=-1&tile.2.1.x=55&tile.2.1.y=20

Page 19: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt19

OK… Why don’t they use our stuff?

• Wrong metaphor: HDF with hyper-slab is better match.

• Impedance match: Getting stuff in/out of DB is too hard

• We sold them OODBs and they did not work (unreliable, poor performance, no tools).

• …

Page 20: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt20

So, why will the future be different?

• They have MUCH more data (109 files?)

• Java / C# eases impedance mismatch: rowsets == ragged arrays of objectsiterators, exceptions,.. built in language

• Tools are better– Optimizers are better– CPU and disk parallelism actually works now– Statistical packages are better.

Page 21: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt21

Outline• Store Everything• Online (Disk not Tape)

• In a Database• A Federated DB• Two Examples

Page 22: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt22

But… Distributed shared databases have failed

even on their home turf.

blocks, files, tables are wrong abstraction for networks.(too low level)

“Objects are the right abstraction”

So, UDDI / WSDL / SOAP is the solution (not SQL)

Replays the NAS is better than SAN argument:

methods > sql > file > diskXML is the wire format, XLANG is the workflow protocol, Query will be in there somewhere.

Page 23: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt23

DDB technology GREAT in a Cluster Beowulf

• Uniform architecture

• Trust among nodes

• High bandwidth-low latency communication

• Programs have single system image

• Queries run in parallel

• Global optimizer does query decomposition

Page 24: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt24

But in a Distributed System(a Grid vs Beowulf)

• Higher level abstraction give modularity

minimize round trips

• Change is constant: need modularity.

• Heterogeneous architecture makes query planning much harder

• No trust

• Communication is slow and expensive (minimize it).

Page 25: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt25

Federate Databases• Each Database exposes services

– Self describing

– Discoverable

– Easy for programs to use/understand

– Built on standards (W3C, IETF,..)

• Client-side or server-side apps– Integrate these services

– Combine information to produce answers

Page 26: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt27

Outline• Store Everything• Online (Disk not Tape)

• In a Database• A Federated DB• Two Examples

Page 27: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt28

How do we find information today?

• Human searches web (with an index)

• Human browses pages

Page 28: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt29

How do we find information tomorrow?

• Agents gather and digest it for us.

• Q: How?

• AW3C:

– Discovery: UDDI, DISCO, WSDL

– Use: • SOAP

My Agents

Digital Dashboard

Web Services

SOAPWSDL

Page 29: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt30

How do we publish information?• Get the data.

• Conceptualize the data schema • Provide methods that return data subsets.

– Challenge: how much processing on your server?

• Publish the schema and methods.

• We (you and I) are exploring these issues.

f, g, x, y…

Page 30: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt31

TerraServer Example• TerraServer

– 3TB Internet Map DB available since June 1998

– USGS photo and topo maps of the US

– Integrated with Home Advisor

– Shows off SQL Server availability & scalability

– Designed for thin clients and voice network

• TerraService

– A .NET web service

– Makes TerraServer data available to other apps

Page 31: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt32

Demo http://terraserver.microsoft.com

Show

photo

topo

gazetteer

demographics

Page 32: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt33

TerraServer Experience• Successful Web Site

– Top 1000 Web Site – continues to be popular– Met goals – interesting, big, real, public, fast,

easy, accessible, and free– High Availability – Windows Data Center &

Compaq SAN Technology

• New Feature Requests– Programmable access to meta-data– User selectable image sizes, i.e. “a map server”– Permission to use TerraServer data within

server applications

Page 33: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt34

What is a Web Service?

SOAPSOAPSOAPSOAP Web Service consumers can send and receive messages using XML

WSDLWSDLContract LanguageContract Language

WSDLWSDLContract LanguageContract Language

Web Services are defined in terms of the formats and ordering of messages

DISCODISCODiscoveryDiscoveryDISCODISCO

DiscoveryDiscovery You can ask a site for a description of the

Web Services it offers

All these capabilities are built using open Internet protocols XML & HTTPXML & HTTP

Open Internet Protocols

Web Web ServiceService

A programmable application component accessible via standard Web protocols

UDDIUDDIUniversal Description, Design, and IntegrationUniversal Description, Design, and Integration

UDDIUDDIUniversal Description, Design, and IntegrationUniversal Description, Design, and Integration

Provide a Directory of Services on the Internet

Page 34: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt35

TerraService Architecture

ExistingDB Server

SQL 2000

1.0 TB Db

SQL 2000

1.0 TB Db

SQL 2000

1.0 TB Db

705 m Rows705 m Rows

ADO.NETADO.NETADO.NETADO.NET

TerraServer TerraServer Web ServiceWeb Service

OLEDB

Map Server Map Server Http HandlerHttp Handler

Map UI Map UI Web FormsWeb FormsStandardStandard

BrowsersBrowsersStandardStandardBrowsersBrowsers

SmartSmartClientsClientsSmartSmartClientsClients

SOAP/XML

HTMLImage/jpeg

Image/jpeg

Page 35: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt36

Terra Services

• Query Gazetteer• Retrieve imagery

meta-data • Retrieve imagery • Simple Projection

conversions

• Geo-coded places, e.g. Schools, Golf Courses, Hospitals, etc.

• Place Polygons e.g. Zip Codes, Cities, etc.

Terra-Tile-Service Landmark-Service

allows “overlay” information for Terra-Tile-Service applications

Clients can present TerraServer imageryin new ways.

Page 36: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt37

Terra ServicesPlace Search

– GetPlaceFacts– GetPlaceList– GetPlaceListInRect– CountPlacesInRect

Projection– ConvertLonLatToUtm– ConvertUtmToLonLat– ConvertLonLatTo

NearestPlace – GetTheme– GetLatLonMetrics

• Tile– GetAreaFromPt

– GetAreaFromRect

– GetAreaFromTileId

– GetTileMetaFromLonLat

– GetTileMetaFromTileId

– GetTile (Image)

• Landmark– GetLandmarkTypes

– CountOfLandmarkPointsByRect

– GetLandmarkPointsByRect

– CountOfLandmarkShapesByRect

– GetLandmarkShapesByRect

http://terraservice.net

Page 37: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt38

Soil Viewer Uses TerraService

Page 38: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt39

Custom End ProductWeb Soil Data Viewer XML Soil ReportSoil Interpretation Map

Page 39: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt40

What You Saw• Converted a Web Server

–HTML get post

–Server returns pictures to people

• to a Web Service–SOAP service

–returns XML self-describing data

–Application integrates data (Agriculture and Geo data)

Page 40: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt42

SkyServer

Collaborating with:

Alex Szalay, Peter Kunszt, Ani Thakar @ JHURobert Brunner, Roy Williams @ Caltech

George Djorgovski, Julian Bunn @ CaltechFermiLab operates Sky Server

Compaq donated hardwareMicrosoft donated software and money

Page 41: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt43

Sky Server– Like TerraServer pictures of the sky.

– But also LOTS of data on each object

So a data mining web service• Luminosity (multi-spectra), morphology, spectrum• So, it is a data mining application• Cross-correlation is challenging because

–Multi-resolution–Data is dirty/fuzzy (error bars, cosmic rays, airplanes…)

–Time varying

+

•50 K Spectro Objects •~ 100 attributes + 30 lines

•15M Photo Objects ~ 400 attributes

Page 42: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt44

Astronomy Data• 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 year

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, 3000 in pixels.

Courtesy of

Alex Szalay

Page 43: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt45

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 400D space

• Data doubles every year.• Data is public after a year.• So, 50% of the data is public.• Some have private access to 5% more data.• So: 50% vs 55% access for everyone

Page 44: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt46

Astronomy Data• 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.• Publishing data “details” is difficult.

Astronomers want to do it but it is VERY hard.(What programs where used? what were the processing steps? How were errors treated?…)

• File is wrong abstraction.

Page 45: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt47

Virtual Observatoryhttp://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 (1 year 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.

Page 46: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt48

Virtual Observatory Golden Age of Mega-Surveys

• Many new surveys– multi-TB in size, 100 million objects or more– individual archives planned, or under way– Data publication an integral part of the survey– Software bill a major cost in the survey

• Multi-wavelength view of the sky– more than 13 wavelength coverage in 5 years

• Impressive early discoveries– finding exotic objects by unusual colors

• L,T dwarfs, high-z quasars

– finding objects by time variability• gravitational micro-lensing

MACHO2MASSDENISSDSSPRIMEDPOSSGSC-IICOBE MAPNVSSFIRSTGALEXROSATOGLE ...

MACHO2MASSDENISSDSSPRIMEDPOSSGSC-IICOBE MAPNVSSFIRSTGALEXROSATOGLE ...

Slide courtesy of Alex Szalay, modified by jim

Page 47: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt49

Virtual Observatory Federating the Archives

• 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• Data mining will lead to stunning new discoveries

• Federating these archives

Virtual Observatory

Slide courtesy of Alex Szalay

Page 48: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt50

The Multiwavelength Crab Nebula

Nova first sighted 1054 A.D. by

Chinese Astronomers

Now: Crab Nebula X-ray, optical,

infrared, and radio

Slide courtesy of Robert Brunner @ CalTech.

Crab star 1053 AD

Page 49: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt52

Virtual Observatory and Education• In the beginning science was empirical.

• Then theoretical branches evolved.

• Now, we have a computational branches.– The computational branch has been simulation– It is becoming data analysis/visualization

• The Virtual Observatory can be used to – Teach astronomy:

make it interactive, demonstrate ideas and phenomena

– Teach computational science skillsand the process of scientific discovery

Page 50: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt53

Sloan Digital Sky Survey http://sdss.org/

• A group of astronomers has been building a telescope (with 90M$ from Sloan Foundation, NSF, and a dozen universities). for the last 12 years

• Now data is arriving: – 250GB/nite (20 nights per year).– 100 M stars, 100 M galaxies, 1 M spectra.

• Public data at http://sdss.org/ – 5% of the survey, 600 sq degrees, 15 M objects 60GB.– This data includes most of the known high z quasars.– It has a lot of science left in it but… that is just the start.

Page 51: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt54

Demo of Sky ServerAlex built SkyServer (based on TerraServer design).

http://skyserver.sdss.org/

Demo: famous places navigator data shopping cart spectrum SQL? ?

Page 52: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt55

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 Meta-Data problem– Hard to publish data & programs– Hard to find/understand data & programs

• Current tools inadequate– new analysis & visualization tools

• Transition to the new astronomy– Sociological issues

Page 53: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt56

The Challenges• How to federate the Archives to make a VO?

• The hope: XML is the answer.• The reality: XML is syntax and tools:

FITS on XML will be good but….. Explaining the data will still be very difficult.

• Define Astronomy Objects and Methods.– Based on UDDI, WSDL, SOAP.– Each archive is a service

• http://TerraService.net/ shows the idea.– Working with Caltech (Brunner, Williams, Djorgovski, Bunn)

– But, how does data mining work?

Page 54: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt57

Three Steps to a VO 0.01

• Get SDSS and Palomar online– Alex Szalay, Jan Vandenberg, Ani Thakar….– Roy Williams, Robert Brunner, Julian Bunn

• Do queries and crossID matches with CalTech and SDSS to expose – Schema, Units,…– Dataset problems– the typical use scenarios.

• Implement WebServices at CalTech and SDSS

Page 55: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt58

Summary• All information at your fingertips.

• How do we publish information so that our agents can digest it?

• Example: TerraServer -> TerraService

• The Virtual Observatory Concept

– The Internet is worlds best telescope• For astronomy• For teaching astronomy and • For teaching computational science

Page 56: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt59

Outline• Store Everything• Online (Disk not Tape)

• In a Database• A Federated DB• Two Examples

Page 57: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt60

No time for what follows

Page 58: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt61

SDSS what I have been doing• Work with Alex Szalay, Don Slutz, and others

to define 20 canonical queries and 10 visualization tasks.

• Don Slutz did a first cut of the queries, I’m continuing that work.

• Working with Alex Szalay on building Sky Server and making data it public

(send out 80GB SQL DBs)

Page 59: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt62

Two kinds of SDSS data• 15M Photo Objects ~ 400 attributes

20K Spectra with ~10 lines/spectrum

Page 60: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt63

Spatial Data Access(Szalay, Kunszt, Brunner)

http://www.sdss.jhu.edu/ look at the HTM link

• Implemented Hierarchical Triangular Mesh (HTM) as table-valued function for spatial joins.

• Every object has a 20-deep Mesh ID.

• Given a spatial definition:Routine returns up to 500 covering triangles.

• Spatial query is then up to 500 range queries.

• Very fast: 1,000s of triangles per second.

Page 61: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt64

The 20 QueriesQ11: 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.

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.)

Also some good queries at: http://www.sdss.jhu.edu/ScienceArchive/sxqt/sxQT/Example_Queries.html

Page 62: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt65

An easy oneQ7: Provide a list of star-like objects that are 1% rare.

• Found 14,681 buckets, first 140 buckets have 99% time 104 seconds

• Disk bound, reads 3 disks at 68 MBps.

Select cast((u-g) as int) as ug, cast((g-r) as int) as gr, cast((r-i) as int) as ri, cast((i-z) as int) as iz,count(*) as Population

from starswhere (u+g+r+i+z) < 150group by cast((u-g) as int), cast((g-r) as int), cast((r-i) as int), cast((i-z) as int) order by count(*)

Page 63: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt66

Another easy oneQ15: Provide a list of moving objects consistent with an

asteroid. • Looks hard but there are 5 pictures of the

object at 5 different times (colors) and so can compute velocity.

• Image pipeline computes velocity.

• Computing it from the 5 color x,y would also be fast

• Finds 2167 objects in 7 minutes, 70MBps.select object_id, -- return object ID sqrt(power(rowv,2)+power(colv,2)) as velocity from sxPhotObj -- check each object.where (power(rowv,2) + power(colv, 2)) > 50 -- square of velocity and rowv >= 0 and colv >=0 -- negative values indicate error

Page 64: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt67

A Hard One Q14: Find stars with multiple measurements

that have magnitude variations >0.1. • This should work, but SQL Server does not

allow table values to be piped to table-valued functions.

• This should work, but SQL Server does not allow table values to be piped to table-valued functions.

select S.object_ID, S1.object_ID -- return stars that from Stars S, -- S is a star

getNearbyObjEq(s.ra, s.dec, 0.017) as N -- N within 1 arcsec (3 pixels) of S.

Stars S1 -- N == S1 (S1 gets the colors) where S.Object_ID < N.Object_ID -- S1 different from S == N and N.Type = dbo.PhotoType('Star') -- S1 is a star (an optimization) and N.object_ID = S1.Object_ID -- N == S1 and ( abs(S.u-S1.u) > 0.1 -- one of the colors is different. or abs(S.g-S1.g) > 0.1

or abs(S.r-S1.r) > 0.1or abs(S.i-S1.i) > 0.1or abs(S.z-S1.z) > 0.1

) order by S.object_ID, S1.object_ID -- group the answer by parent star.

Returns a table of nearby objects

Page 65: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt68

A Hard one: Second TryQ14: Find stars with multiple measurements that

have magnitude variations >0.1. --------------------------------------------------------------------------------- Table-valued function that returns the binary stars within a certain radius -- of another (in arc-minutes) (typically 5 arc seconds).-- Returns the ID pairs and the distance between them (in arcseconds).create function BinaryStars(@MaxDistanceArcMins float)returns @BinaryCandidatesTable table(

S1_object_ID bigint not null, -- Star #1S2_object_ID bigint not null, -- Star #2distance_arcSec float) -- distance between them

as begin declare @star_ID bigint, @binary_ID bigint;-- Star's ID and binary ID declare @ra float, @dec float; -- Star's position declare @u float, @g float, @r float, @i float,@z float; -- Star's colors  ----------------Open a cursor over stars and get position and colors declare star_cursor cursor for select object_ID, ra, [dec], u, g, r, i, z from Stars; open star_cursor;  while (1=1) -- for each star

begin -- get its attribuesfetch next from star_cursor into @star_ID, @ra, @dec, @u, @g, @r, @i, @z;if (@@fetch_status = -1) break; -- end if no more starsinsert into @BinaryCandidatesTable -- insert its binaries

select @star_ID, S1.object_ID, -- return stars pairs sqrt(N.DotProd)/PI()*10800 -- and distance in arc-seconds

from getNearbyObjEq(@ra, @dec, -- Find objects nearby S.@MaxDistanceArcMins) as N, -- call them N.

Stars as S1 -- S1 gets N's color valueswhere @star_ID < N.Object_ID -- S1 different from S

and N.objType = dbo.PhotoType('Star') -- S1 is a starand N.object_ID = S1.object_ID -- join stars to get colors of S1==N

and (abs(@u-S1.u) > 0.1 -- one of the colors is different. or abs(@g-S1.g) > 0.1

or abs(@r-S1.r) > 0.1 or abs(@i-S1.i) > 0.1 or abs(@z-S1.z) > 0.1

) end; -- end of loop over all stars

-------------- Looped over all stars, close cursor and exit. close star_cursor; -- deallocate star_cursor; return; -- return tableend -- end of BinaryStarsGOselect * from dbo.BinaryStars(.05)

• Write a program with a cursor, ran for 2 days

Page 66: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt69

A Hard one: Third TryQ14: Find stars with multiple measurements that

have magnitude variations >0.1.

• Use pre-computed neighbors table.

• Ran in 17 minutes, found 31k pairs.

==================================================================================-- Plan 2: Use the precomputed neighbors table select top 100 S.object_ID, S1.object_ID, -- return star pairs and distance

str(N.Distance_mins * 60,6,1) as DistArcSec from Stars S, -- S is a star

Neighbors N, -- N within 3 arcsec (10 pixels) of S.Stars S1 -- S1 == N has the color attibutes

where S.Object_ID = N.Object_ID -- connect S and N. and S.Object_ID < N.Neighbor_Object_ID -- S1 different from S and N.Neighbor_objType = dbo.PhotoType('Star')-- S1 is a star (an optimization) and N.Distance_mins < .05 -- the 3 arcsecond test and N.Neighbor_object_ID = S1.Object_ID -- N == S1 and ( abs(S.u-S1.u) > 0.1 -- one of the colors is different. or abs(S.g-S1.g) > 0.1

or abs(S.r-S1.r) > 0.1or abs(S.i-S1.i) > 0.1or abs(S.z-S1.z) > 0.1

) -- Found 31,355 pairs (out of 4.4 m stars) in 17 min 14 sec.

Page 67: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt70

The Pain of Going Outside SQL(its fortunate that all the queries are single statements)

• Count parent objects • 503 seconds

for 14.7 M objects in 33.3 GB

• 66 MBps• IO bound (30% of one cpu)

• 100 k records/cpu sec

• Use a cursor• No cpu parallelism• CPU bound • 6 MBps, 2.7 k rps• 5,450 seconds (10x slower)

select count(*) from sxPhotoObj where nChild > 0

declare @count int;declare @sum int;set @sum = 0;declare PhotoCursor cursor for select nChild from sxPhotoObj; open PhotoCursor;while (1=1) begin fetch next from PhotoCursor into @count; if (@@fetch_status = -1) break; set @sum = @sum + @count; endclose PhotoCursor;deallocate PhotoCursor;

print 'Sum is: '+cast(@sum as varchar(12))

Page 68: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt71

Summary of Current Status

• All 20 queries run(still checking science)

• Also 15 “user” queries• Run times: on 3k$ PC

(2 cpu, 4 disk, 256MB)

0.01

0.1

1

10

100

1000

10000

Q01 Q02: Q03 Q04 Q05: Q06 Q07 Q08 Q09 Q10 Q10A Q11 Q12*** Q13 Q14 Q15 Q16 Q17 Q18 Q19* Q20 QSX01

cpu

elapsed

cpu vs IO

1E+0

1E+1

1E+2

1E+3

1E+4

1E+5

1E+6

1E+7

0.01 0.1 1. 10. 100. 1,000. 10,000.

CPU sec

IO c

ount

100 IOs/cpu sec

~100 IO/cpu sec ~5MB/cpu sec

Page 69: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt72

Summary of Current Status

• 16 of the queries are simple

• 2 are iterative, 2 complex

• Many are sequential one-pass and two-pass over data

• Covering indices make scans run fast

• Table valued functions are wonderful but limitations on parameters are a pain.

• Counting is VERY common.

• Binning (grouping by some set of attributes) is common

• Did not request cube, but that may be cultural.

Page 70: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt73

Reflections on the 20 Queries • Data loading/scrubbing is labor intensive & tedious

– AUTOMATE!!!

• This is 5% of the data, and some queries take an hour.• But this is not tuned (disk bound).• All queries benefit from parallelism (both disk and cpu)

(if you can state the query right, e.g. inside SQL).• Parallel database machines will do great on this:

– Hash machines – Data pumps– See paper in word or pdf on my web site.

• SQL looks good. The answers, need visualization

Page 71: Http://research.microsoft.com/~gray/talks/cern_2001.ppt 1 Store Everything Online In A Database Jim Gray Microsoft Research Gray@Microsoft.com gray/talks

http://research.microsoft.com/~gray/talks/cern_2001.ppt74

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 astronomy educational outreach

here is a tool for you.• The astronomy folks are very good, and very

smart, and a pleasure to work with, and the questions are cosmic, so …