unified search and information integration for the iss mission control center richard m. keller,...

46
Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration Intelligent Systems Division NASA Ames Research Center August 16, 2011

Upload: gervase-boone

Post on 17-Dec-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Unified Search and Information Integration for the ISS Mission Control Center

Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Intelligent Systems Division

NASA Ames Research Center

August 16, 2011

Page 2: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Outline• Motivation: Search for Mission Control• XSearch System: Functionality & Architecture

– Data Integration Subsystem– Link Generation Subsystem– Interface

• Wrap-up– Status– User Acceptance– Related Work– Lessons Learned– Summary

Page 3: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Primary Customer

International Space Station (ISS) Mission Control Center

ISS Flight Controllers• Monitor ISS systems

• Troubleshoot

• Perform routine maintenance procedures

• Initiate ISS system changes via telemetry commands

• Document status and actions taken

• Coordinate and execute complex operations tasks (e.g. docking, boosting)

Page 4: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Why is SEARCH fundamental to International Space Station operations?

• 24x7 Space Station operations staff generates huge volume of operations workflow records in multiple databases

• Flight controllers must access large number of engineering & operations documents and manuals

• Flight controllers search with very high frequency while on console; search is essential to accomplishing almost every type of operations activity

• Finding information quickly is critical for

– effective decision making

– mission safety and assurance

Page 5: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Search in the Mission Control Center

Page 6: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

• Information fragmented across many systems

• Each search interface is different

• Searching is labor intensive, time-consuming, error prone

• Interrelated information across systems is not linked and therefore difficult to access

• Information fragmented across many systems

• Each search interface is different

• Searching is labor intensive, time-consuming, error prone

• Interrelated information across systems is not linked and therefore difficult to access

What are the problems?

Page 7: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Why is interlinked information important?• Obtaining a search result

is just the first step in information gathering

• The next step is to explore key related information needed to interpret the result

• Must understand the context and relationships among data to make effective decisionsLinking Open Data cloud diagram,

by Richard Cyganiak and Anja Jentzsch. http://lod-cloud.net/

Page 8: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Anomaly Report

Procedure

PartFlight Rule

Example: Mission Control Center Search

Chit

Search the Mission Action Request Tracking System(a.k.a. the “Chits” System) for:

“ALS heater”

Interlinked information provides context for decision-making

Page 9: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Outline• Motivation: Search for Mission Control• XSearch System: Functionality & Architecture

– Data Integration Subsystem– Link Generation Subsystem– Interface

• Wrap-up– Status– User Acceptance– Related Work– Lessons Learned– Summary

Page 10: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

XSearch Functionality

• Consolidates search – searches multiple databases & displays integrated results

• Standardizes & improves search – uniform search interface – improved search functionality

• full text search, conjunctive search, acronyms, synonyms

• Interlinks & contextualizes search results

Page 11: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

XSearch Components1. Data Integration System:

– integrates and warehouses ISS information to be searched on a single server

2. Information Web:– interlinks the warehoused information

3. Link Generation Engine: – dynamically scans new and revised information to detect

links and insert into web of data

4. Search Interface: – searches information stored in the warehouse and

displays both results and linked data

Page 12: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

XSearch Architecture

Data Integration Subsystem

XSearch Web Interface

Link Generation Subsystem

Page 13: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Outline• Motivation: Search for Mission Control• XSearch System: Functionality & Architecture

– Data Integration Subsystem– Link Generation Subsystem– Interface

• Wrap-up– Status– User Acceptance– Related Work– Lessons Learned– Summary

Page 14: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Data Integration Subsystem

• Data warehousing approach

• “Core” data fields extracted, normalized & stored

• Highly configurable approach accommodates changes in data sources

Data sources Replicated sources Data Warehouse

periodic replication extract and normalize

XSearch server

databases

documents

web pages

web services

Page 15: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Normalization ExampleTARGET:

Anomaly Database

Core Fields• RecordType• RecordID• Title*• DisplayDate• Content*• ContentType• Status• DisplayName• OriginatorName• Org• Discipline• Activity

XSearch Warehouse

tblAnomaly• ItemID• RequestTitle• WhenModified• StatusText• ControlNumber• OriginatorNetID• RequestOrg• RequestDiscipline• Activity

tblAnomalyBody• DocumentPart• DocumentSect• ErrDescription• ErrImpact• ErrWorkaround• ErrResolution• ItemID tblAnomalyAttachment

• ATTKEY• UserFileName

SOURCE:

*Full-text indexed

Mapping Rules

Page 16: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Mapping Table

for Anomaly Database

RecordType SrcXForm CacheTable CacheCol FixCyrillic AddBOM FixMarkupANOMALY Activity tblARCHIT_Common Activity 0 0 0ANOMALY {CAT select '<div class="ANOMALY_Body" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '">' + case when len(cast(isnull(ErrDescription,'') as nvarchar(max))) < 1 then '' else '<div class="ANOMALY_Body_Column" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '_ErrDescription">' + cast(isnull(ErrDescription,'') as nvarchar(max)) + '</div>' end + case when len(cast(isnull(ErrImpact,'') as nvarchar(max))) < 1 then '' else '<div class="ANOMALY_Body_Column" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '_ErrImpact">' + cast(isnull(ErrImpact,'') as nvarchar(max)) + '</div>' end + case when len(cast(isnull(ErrWorkaround,'') as nvarchar(max))) < 1 then '' else '<div class="ANOMALY_Body_Column" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '_ErrWorkaround">' + cast(isnull(ErrWorkaround,'') as nvarchar(max)) + '</div>' tblARCHIT_Common Content 1 1 0ANOMALY '.htm' tblARCHIT_Common ContentType 0 0 0ANOMALY requestDiscipline tblARCHIT_Common Discipline 0 0 0ANOMALY WhenModified tblARCHIT_Common DisplayDate 0 0 0ANOMALY ControlNumber tblARCHIT_Common DisplayName 0 0 0ANOMALY RequestOrg tblARCHIT_Common Org 0 0 0ANOMALY OriginatorNetID tblARCHIT_Common OriginatorName 0 0 0ANOMALY ITEMID tblARCHIT_Common RecordID 0 0 0ANOMALY 'ANOMALY' tblARCHIT_Common RecordType 0 0 0ANOMALY statusText tblARCHIT_Common Status 0 0 0ANOMALY RequestTitle tblARCHIT_Common Title 1 0 0ANOMALY WhenModified tblARCHIT_Common UpdateDate 0 0 0

SourceDatabase

MappingRule

TargetDatatable

TargetField

• source field• constant• SQL

statement

Page 17: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Mapping Table

for Anomaly Database

RecordType SrcXForm CacheTable CacheCol FixCyrillic AddBOM FixMarkupANOMALY Activity tblARCHIT_Common Activity 0 0 0ANOMALY {CAT select '<div class="ANOMALY_Body" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '">' + case when len(cast(isnull(ErrDescription,'') as nvarchar(max))) < 1 then '' else '<div class="ANOMALY_Body_Column" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '_ErrDescription">' + cast(isnull(ErrDescription,'') as nvarchar(max)) + '</div>' end + case when len(cast(isnull(ErrImpact,'') as nvarchar(max))) < 1 then '' else '<div class="ANOMALY_Body_Column" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '_ErrImpact">' + cast(isnull(ErrImpact,'') as nvarchar(max)) + '</div>' end + case when len(cast(isnull(ErrWorkaround,'') as nvarchar(max))) < 1 then '' else '<div class="ANOMALY_Body_Column" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '_ErrWorkaround">' + cast(isnull(ErrWorkaround,'') as nvarchar(max)) + '</div>' tblARCHIT_Common Content 1 1 0ANOMALY '.htm' tblARCHIT_Common ContentType 0 0 0ANOMALY requestDiscipline tblARCHIT_Common Discipline 0 0 0ANOMALY WhenModified tblARCHIT_Common DisplayDate 0 0 0ANOMALY ControlNumber tblARCHIT_Common DisplayName 0 0 0ANOMALY RequestOrg tblARCHIT_Common Org 0 0 0ANOMALY OriginatorNetID tblARCHIT_Common OriginatorName 0 0 0ANOMALY ITEMID tblARCHIT_Common RecordID 0 0 0ANOMALY 'ANOMALY' tblARCHIT_Common RecordType 0 0 0ANOMALY statusText tblARCHIT_Common Status 0 0 0ANOMALY RequestTitle tblARCHIT_Common Title 1 0 0ANOMALY WhenModified tblARCHIT_Common UpdateDate 0 0 0

Fill DisplayDate in the warehouse record with the WhenModified field from the Anomaly database

WhenModified DisplayDatea field in Anomaly DB in Warehouse

Page 18: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

a string constant in Warehouse

Mapping Table

for Anomaly Database

RecordType SrcXForm CacheTable CacheCol FixCyrillic AddBOM FixMarkupANOMALY Activity tblARCHIT_Common Activity 0 0 0ANOMALY {CAT select '<div class="ANOMALY_Body" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '">' + case when len(cast(isnull(ErrDescription,'') as nvarchar(max))) < 1 then '' else '<div class="ANOMALY_Body_Column" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '_ErrDescription">' + cast(isnull(ErrDescription,'') as nvarchar(max)) + '</div>' end + case when len(cast(isnull(ErrImpact,'') as nvarchar(max))) < 1 then '' else '<div class="ANOMALY_Body_Column" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '_ErrImpact">' + cast(isnull(ErrImpact,'') as nvarchar(max)) + '</div>' end + case when len(cast(isnull(ErrWorkaround,'') as nvarchar(max))) < 1 then '' else '<div class="ANOMALY_Body_Column" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '_ErrWorkaround">' + cast(isnull(ErrWorkaround,'') as nvarchar(max)) + '</div>' tblARCHIT_Common Content 1 1 0ANOMALY '.htm' tblARCHIT_Common ContentType 0 0 0ANOMALY requestDiscipline tblARCHIT_Common Discipline 0 0 0ANOMALY WhenModified tblARCHIT_Common DisplayDate 0 0 0ANOMALY ControlNumber tblARCHIT_Common DisplayName 0 0 0ANOMALY RequestOrg tblARCHIT_Common Org 0 0 0ANOMALY OriginatorNetID tblARCHIT_Common OriginatorName 0 0 0ANOMALY ITEMID tblARCHIT_Common RecordID 0 0 0ANOMALY 'ANOMALY' tblARCHIT_Common RecordType 0 0 0ANOMALY statusText tblARCHIT_Common Status 0 0 0ANOMALY RequestTitle tblARCHIT_Common Title 1 0 0ANOMALY WhenModified tblARCHIT_Common UpdateDate 0 0 0

Fill RecordType in the warehouse record with the string ‘ANOMALY’

‘ANOMALY’ RecordType

Page 19: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Mapping Table

for Anomaly Database

RecordType SrcXForm CacheTable CacheCol FixCyrillic AddBOM FixMarkupANOMALY Activity tblARCHIT_Common Activity 0 0 0ANOMALY {CAT select '<div class="ANOMALY_Body" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '">' + case when len(cast(isnull(ErrDescription,'') as nvarchar(max))) < 1 then '' else '<div class="ANOMALY_Body_Column" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '_ErrDescription">' + cast(isnull(ErrDescription,'') as nvarchar(max)) + '</div>' end + case when len(cast(isnull(ErrImpact,'') as nvarchar(max))) < 1 then '' else '<div class="ANOMALY_Body_Column" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '_ErrImpact">' + cast(isnull(ErrImpact,'') as nvarchar(max)) + '</div>' end + case when len(cast(isnull(ErrWorkaround,'') as nvarchar(max))) < 1 then '' else '<div class="ANOMALY_Body_Column" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '_ErrWorkaround">' + cast(isnull(ErrWorkaround,'') as nvarchar(max)) + '</div>' tblARCHIT_Common Content 1 1 0ANOMALY '.htm' tblARCHIT_Common ContentType 0 0 0ANOMALY requestDiscipline tblARCHIT_Common Discipline 0 0 0ANOMALY WhenModified tblARCHIT_Common DisplayDate 0 0 0ANOMALY ControlNumber tblARCHIT_Common DisplayName 0 0 0ANOMALY RequestOrg tblARCHIT_Common Org 0 0 0ANOMALY OriginatorNetID tblARCHIT_Common OriginatorName 0 0 0ANOMALY ITEMID tblARCHIT_Common RecordID 0 0 0ANOMALY 'ANOMALY' tblARCHIT_Common RecordType 0 0 0ANOMALY statusText tblARCHIT_Common Status 0 0 0ANOMALY RequestTitle tblARCHIT_Common Title 1 0 0ANOMALY WhenModified tblARCHIT_Common UpdateDate 0 0 0

{CAT select '<div class="ANOMALY_Body" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '">' + case when len(cast(isnull(ErrDescription,'') as nvarchar(max))) < 1 then '' else '<div class="ANOMALY_Body_Column" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '_ErrDescription">' + cast(isnull(ErrDescription,'') as nvarchar(max)) + '</div>' end + case when len(cast(isnull(ErrImpact,'') as nvarchar(max))) < 1 then '' else '<div class="ANOMALY_Body_Column" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '_ErrImpact">' + cast(isnull(ErrImpact,'') as nvarchar(max)) + '</div>' end + case when len(cast(isnull(ErrWorkaround,'') as nvarchar(max))) < 1 then '' else '<div class="ANOMALY_Body_Column" id="ANOMALY_' + cast(documentpart as nvarchar(max)) + '_' + cast(documentsect as nvarchar(max)) + '_ErrWorkaround">' + cast(isnull(ErrWorkaround,'') as nvarchar(max)) + '</div>' end + case when len(cast(isnull(ErrResolution,'') as nvarchar(max))) < 1 then '' else '<div class="ANOMALY_Body_Column" id="ANOMALY_' + …

Fill Content in the warehouse record with multiple fields concatenated from the Anomaly database

in Anomaly DB in Warehousemultiple fields Content

Page 20: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Outline• Motivation: Search for Mission Control• XSearch System: Functionality & Architecture

– Data Integration Subsystem– Link Generation Subsystem– Interface

• Wrap-up– Status– User Acceptance– Related Work– Lessons Learned– Summary

Page 21: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Link Generation Subsystem

• links generated by analyzing textual information in warehouse records and documents

• links and warehouse records are displayed in interface

Data Warehouse Information Web

XSearch Interface

link generationlinks

Page 22: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Link Generation Methods

Method 1 (for explicit cross-references): XSearch analyzes document/record text to identify citations to other documents

Method 2 (for implicit cross-references): XSearch performs cross-document text analysis to determine similarities among documents

• Pairs of documents in the corpus are compared for similarity – over 10 billion comparisons!

Page 23: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

What do flight control documents/records look like?

• Combination of structured and free text fields authored by Space Station flight controllers while on duty

• Free text fields cross-reference other documents/records using established naming and numbering conventions

• NO markup used to identify cross-references in text

• Difficult to spot cross-references visually

Page 24: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Sanitized Excerpt from an ISS “Flight Note”“The purpose of this note is to outline the hazards to the EVA crew associated with the EVA repair of the SWFPF, for 22A EVA 7. Dynamic events may affect structural integrity of the damaged component – this hazard cause will be controlled by implementation of chit 5452, “Update to Docked Loads Constraints for SWFPF during XPF rotations”, currently open for review. Analysis has shown the Solar Array… …Crew-induced loads on the WIF extender are generally controlled by Flight Rule 22A_C2-D, “Electrical Load Constraints [HC] [RI]”; loads constraints for EVA Articulating Portable Foot Restraint (APFR) and Worksite Interface (WIF) Extender are defined in table 22A_C2-86-F. APFR/WIF loads constraints for EVA 4 have been updated in CHIT 5480. Note that for contingency use of the WIF Extender for EV work on P6, the only approved attitude control is SRM QFMT NO DTP as detailed in EFN F012457A. VRCS loads during LoAC recovery are acceptable as detailed in AR 001767. This hazard control must continue to be observed, to prevent structural failure of the WIF Extender.”

Page 25: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Cross-reference Detection: Mining for links

Chit 004361

Time

...This chit implements aResolution to the primaryALS heater failure described in Anomaly #447...Based oninformation described in FN F0121902,temperature instability began on GMT 125.

Chit 004374

...This chit revisesthe policy establishedin Chit 004361

...temperature instabilitywas observed shortly afterthe primary ALS heater failure was detected...

EFN F013094EFN F0121902

AR 00447

CITESx-reference

CITED-BYx-reference

similar terms SIMILAR-TOx-reference

Search for “ALS heater”

Analyze each search result to determine three types of cross-references hidden in the text

Page 26: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Method 1: Explicit Cross-reference Detection via Pattern Matching

• Step 1: Cross-reference Candidate Identification

Find the cross-references in the text

• Step 2: Cross-reference Validation

Make sure the cross-referenced records exist in the specified database

Page 27: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Step 1: Cross-reference Candidate Identification

1. For regularized naming schemes: Use specialized BNF Grammars to recognize cross-reference citation patterns

• ‘Anomaly Report 001245’, ‘Anomaly 1245’, ‘AR #1245’

• ‘Flight Note F013457B’, ‘EFN F013457B’, ‘F013457B’

2. For irregular naming schemes: Use exhaustive match against database of defined record identifiers:

• ‘SPS cable assembly’

Page 28: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Anomaly Reports XRef Detection GrammarARpattern ::= AnomalyTrigger {Digit,1,6}AnomalyTrigger ::= AnomalyReport | ARAnomalyReport ::= Anomaly Report{‘s’,0,1}Anomaly = “Anomaly” | “anomaly”Report = “Report” | “report”AR = “AR” | “ar”

“Anomaly” “anomaly” “Report” “report”

“AR” “ar”

{Digi,1,6}

OR OR ?

OR

OR

ANDBNF Grammar

Example Citations:

• ‘Anomaly Report 001245’

• ‘Anomaly 1245’

• ‘AR #1245’AND

Page 29: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Step 2: Cross-reference Validation

• Check that cross-referenced record actually existsto avoid creating dead-end links

• Query appropriate database to confirm

Page 30: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Method 2: Implicit Cross-Reference Detection via Similarity Analysis

• Model each record as a point in a multi-dimensional vector space • Each dimension represents a word (found within some record) • Each rec is described by a vector:

<w1, w2, w3, w4, …. wn> • Dimensions normalized by frequency of occurrence• Similarity between two points is measured by the cosine of the

angle between their two vectors.

TF-IDF Vector Space Method

Page 31: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Outline• Motivation: Search for Mission Control• XSearch System: Functionality & Architecture

– Data Integration Subsystem– Link Generation Subsystem– Interface

• Wrap-up– Status– User Acceptance– Related Work– Lessons Learned– Summary

Page 32: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

XSearch Interface

DetailsPane

SearchQueryPane

SearchResultsPane

Page 33: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

XSearch Interface: Query Pane

Time Period Selection

Information Sources to be Searched

Search Term(s)

Search Field Selection

“ALS heater”

Page 34: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

XSearch Interface: Results Pane

Cross-References Summary (Line 2)

Identifying Information (Line 1)

Common set of fields displayed across all data sources

Individual Search Result

Record Type

Page 35: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

XSearch Interface: Details PaneRecord Preview

Cross-References Detail Tabs

Identifying Information

Page 36: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Outline• Motivation: Search for Mission Control• XSearch System: Functionality & Architecture

– Data Integration Subsystem– Link Generation Subsystem– Interface

• Wrap-up– Status– User Acceptance– Related Work– Lessons Learned– Summary

Page 37: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Status

• Deployed in Space Station Mission Control Center since July 2008

• Integrates 15 Mission Control information sources containing >1M records, total

• In use daily• User base: 2200 Space Station & Space

Shuttle personnel

Page 38: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

User Acceptance• Informal evaluation performed using search log files

and user interviews• Documented cases of value during problem solving• Strongest & most enthusiastic adoption by those

w/cross-cutting flight control responsibilities:– Group leads, management personnel, multi-functional

consolidated flight control positions

• Preference for legacy tool-specific search capabilities over XSearch in the absence of cross-cutting analysis needs

• Training environment challenging

Page 39: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Related Systems1. Search:

- Google Search Appliance, Lucene/Solr, Autonomy Search

2. Enterprise integration:- IBM’s InfoSphere, Informatica’s PowerCenter

3. Bibliographic Citation Analysis: CiteSeer, Google Scholar, Scopus

4. Linked data: Link Discovery Systems, Named Entity Resolution, DB Record Linkage

XSearch uniquely combines capabilities, while addressing specific Space Station Mission Control Center needs:

– Fine-grained access control– Negligible indexing latency

Page 40: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Lessons Learned

• Architect for ease of system reconfigurability• Mitigate impact of ‘data politics’ w/negotiated

data service agreements• Ensure adequate systems health monitoring• Understand user needs thoroughly• Guard against “requirements creep”

Page 41: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Summary• XSearch integrates Space Station Mission Control

data from multiple sources and enables cross-source search

• Text mining & information retrieval techniques are used to create linked “document networks” connecting related mission control documents

• Interconnected “document networks” provide Flight Controllers with rapid access to related documents, thus decreasing incident response times and improving overall situational awareness

Page 42: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Acknowledgments: XSearch Team

Ames Research Center

Design /Development :Intelligent Systems

Division

Dan BerriosMohana Gurram

Rich Keller*Chris Knight

Steve LinMay WindremShawn Wolfe

Infrastructure / Operations

Support:MCC Web Tools

Team

James HartTim Hall*

Jason ToschlogBrian UlmanJenny Yang

Customers & Requirements

Brian Kelly*ISS/STS Flight Controllers

ISS EngineeringISS Program Staff

ISS

Ames Research Center Johnson Space Center

Johnson Space Center

Page 43: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Questions?

?

R.M. Keller and C.D. Knight, "XSearch: A Unified Search and Cross-Reference Detection Engine for the ISS Mission Control Center", IEEE Aerospace Conference, Big Sky, MT, March 2011

R.M. Keller, S.R. Wolfe, M.N.Windrem, and D.C. Berrios, "XSearch: A System for Searching and Interrelating NASA Mission Operations Data", AIAA Space Ops 2008 Conference, Heidelberg, Germany, May 2008..

References

Page 44: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Backup

Page 45: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Authorization and Access Control

• Only users belonging to a flight controller group can access portal where XSearch resides

• XSearch is a read-only interface

• Most sources were read-accessible by all flight controllers

• Where required, flight controller groups utilized as a basis for access control (console logs, flight notes)

• Exceptions for flight director and “private” notes

• Multi-group users have union of permissions

Page 46: Unified Search and Information Integration for the ISS Mission Control Center Richard M. Keller, Ph.D. Group Lead for Information Sharing and Integration

Why not buy the Google Search Appliance?

• We analyzed pros & cons of GSA• GSA cannot provide contextual cross-references

– No commercial search product provides this capability

• GSA can handle basic search and cross-source integration– But GSA is not magic and requires configuration (firewalls, security) and

ongoing maintenance (index, database reconfiguration)

• GSA solution does not meet NASA needs in some key areas: – access control – privacy and restricted information– latency of indexing– interface customizability– indexing methods are ‘black box’