Show your appreciation for Deephaven by starring us on GitHub.

  • Docs
  • Blog
  • ContactRequest Demo
Try Sandbox
Core EngineUI & DashboardsPlottingEnterprise
  • Introduction
  • Deephaven Overview
    • Quickstart
      • Get Started
      • Architecture Overview
      • Create Tables
      • Table Operations
      • Query Strings
      • Real-time Plots
      • Data I/O
      • Configure your Instance
      • Wrapping Up
      • Docker
      • Source code
      • Production application
      • Deephaven's design
      • Incremental update model
      • Live DAG
      • Table types
      • Core API design
        • Static tables
        • Ring tables
        • Time tables
        • Input Tables
        • Convert add-only tables to blink tables
        • Write data to a real-time table
        • Generate tables with Groovy functions
        • Import CSV files
        • Export CSV files
        • The Deephaven CSV library
      • Arrow Flight
      • Iceberg
        • Kafka Overview
        • Basic terms
        • Connect to a Kafka stream
        • Supported Parquet formats
        • Import Parquet files
        • Export to Parquet
        • Parquet instructions
      • URI
        • Table listeners
      • Iterate over tables
      • Replay
      • Metadata
      • Select and create columns
      • Drop, move, and rename columns
      • Apply color formatting to columns
      • Filter
      • Sort
      • Merge
        • Dedicated aggregations
        • Multi-aggregation
        • Group and ungroup data
        • updateBy
        • Cumulative, rolling, and moving statistics
        • Other rolling utilities
        • Exact and Relational Joins
        • Inexact, time-series, and range joins
      • Partition
      • Snapshot
        • Work with time
        • Downsample data
      • Built-in query language functions
      • Arrays
      • Formulas and filters
      • Nulls, infs, and NaNs
      • Objects
      • Strings
      • Ternary-if
      • User-defined functions
      • Variables and functions in query strings
      • Groovy data types
      • Execution Context
      • Liveness Scopes
      • Variables in query strings
      • Built-in plotting API
        • Navigate the GUI
        • Set date-time format
        • Set table density
        • Create and organize notebooks
        • Markdown widgets
          • Format tables in the UI
          • Plot without writing queries
          • Filter without writing queries
          • Clickable links
            • Tree tables
            • Rollup tables
          • Custom themes
          • Use IFrames
          • JS API
        • Extract data with a Java client
        • Protocol Buffers
      • Copilot extension
      • Think like a Deephaven ninja
        • Use performance tables
        • Dial down the update frequency of ticking tables
        • Data Indexes
        • Predicate Pushdown Filtering
        • Parallelization
        • Synchronization and locking
        • Barrage metrics
        • Interpret Barrage metrics
        • Troubleshoot query performance
        • Application Mode configuration
        • Auto-imported functions
        • Triage errors in queries
        • Attach a JVM debugger
        • Get version information
        • Retrieve logs
      • Extract table values
      • Update Deephaven
        • Pre-shared key
        • Anonymous
        • Keycloak
        • mTLS
        • Username/password
        • Docker data volumes
        • Adjust heap size
        • Deephaven console service
        • Deephaven Docker application
        • Periodic Update Graph configuration
        • Query table configuration
          • Application Mode
          • Application Mode libraries
          • Application Mode scripts
        • JS plugins
        • Install packages
        • Install and use Java packages
        • Production application
        • Deephaven configuration files
        • Web Defaults
        • Custom environmental variables
      • AWS EC2
      • GCP
    • Ultimate cheat sheet
      • Simple table constructors
      • CSV
      • Parquet
      • URI
    • Performance tables
    • Time operations
    • Pydoc (client)
    • Pydoc (server)
      • Javascript
    • Javadoc (client/server)
    • Godoc
    • C++ (client)
    • C++ (examples)
    • R (client)
    • Barrage (Deephaven's Arrow Flight extension
    • gRPC
    • Protobuf
    • Install and use plugins
    • Create your own plugin
      • awaitUpdate
      • LivenessScope
      • hasDataIndex
      • getDataIndex
      • getOrCreateDataIndex
          • emptyTable
          • newTable
          • timeTable
          • Input Table
          • RingTableTools.of
          • tree
          • rollup
          • withAttributes
          • withoutAttributes
          • booleanCol
          • byteCol
          • charCol
          • col
          • instantCol
          • doubleCol
          • floatCol
          • intCol
          • longCol
          • shortCol
          • stringCol
        • blinkToAppendOnly
        • create
        • DynamicTableWriter
        • removeBlink
        • assertBlink
        • assertAppendOnly
        • assertAddOnly
        • TablePublisher
        • toBlink
        • readCsv
        • writeCsv
        • consumeToPartitionedTable
        • consumeToTable
        • produceFromTable
        • readTable
        • writeTable
        • IcebergCatalogAdapter
        • IcebergTableAdapter
        • IcebergTable
        • IcebergReadInstructions
        • IcebergUpdateMode
        • IcebergTableWriter
        • IcebergWriteInstructions
        • InferenceResolver
        • UnboundResolver
        • BuildCatalogOptions
        • LoadTableOptions
      • URI
      • Replayer
        • diff
        • getAttribute
        • getAttributeKeys
        • getAttributes
        • getDefinition
        • hasAttribute
        • hasColumns
        • isEmpty
        • isFailed
        • isFlat
        • isRefreshing
        • meta
        • numColumns
        • dropColumns
        • flatten
        • lazyUpdate
        • moveColumns
        • moveColumnsDown
        • moveColumnsUp
        • renameColumns
        • retainingAttributes
        • select
        • selectDistinct
        • update
        • updateView
        • view
        • DownsampledWhereFilter
        • head
        • headPct
        • slice
        • slicePct
        • tail
        • tailPct
        • where
        • whereIn
        • whereNotIn
        • wouldMatch
        • restrictSortTo
        • reverse
        • sort
        • sortDescending
        • columnsToRows
        • formatColumns
        • formatColumnWhere
        • formatRowWhere
        • setLayoutHints
        • atBack
        • atFront
        • columnGroup
        • dropColumnFormats
        • freeze
        • hide
        • renameColumns
        • keyedTranspose
        • merge
        • mergeSorted
          • groupBy
          • ungroup
          • absSumBy
          • avgBy
          • countBy
          • firstBy
          • headBy
          • lastBy
          • maxBy
          • medianBy
          • minBy
          • stdBy
          • sumBy
          • tailBy
          • varBy
          • wavgBy
          • wsumBy
          • aggBy
          • partitionedAggBy
          • AggAbsSum
          • aggAllBy
          • AggApproxPct
          • AggAvg
          • AggCount
          • AggCountDistinct
          • AggCountWhere
          • AggDistinct
          • AggFirst
          • AggFormula
          • AggGroup
          • AggLast
          • AggMax
          • AggMed
          • AggMin
          • AggPartition
          • AggPct
          • AggSortedFirst
          • AggSortedLast
          • AggStd
          • AggSum
          • AggUnique
          • AggVar
          • AggWAvg
          • AggWSum
        • updateBy
        • CumMax
        • CumMin
        • CumProd
        • CumSum
        • CumCountWhere
        • Delta
        • DeltaControl
        • Ema
        • EmMax
        • EmMin
        • Ems
        • EmStd
        • Fill
        • OperationControl
        • RollingAvg
        • RollingCount
        • RollingCountWhere
        • RollingFormula
        • RollingGroup
        • RollingMax
        • RollingMin
        • RollingProduct
        • RollingStd
        • RollingSum
        • RollingWAvg
        • aj
        • exactJoin
        • fullOuterJoin
        • join
        • leftOuterJoin
        • Multi-Join
        • MultiJoinInput
        • MultiJoinTable
        • naturalJoin
        • raj
        • rangeJoin
        • partitionBy
        • filter
        • merge
        • sort
        • table
        • constituentChangesPermitted
        • constituentColumnName
        • constituentDefinition
        • constituentFor
        • constituents
        • keyColumnNames
        • uniqueKeys
        • proxy
        • partitionedTransform
        • transform
        • Partitioned table transform
        • snapshot
        • snapshotWhen
        • addTimeWindow
          • atMidnight
          • currentClock
          • dayOfMonth
          • dayOfWeek
          • dayOfYear
          • diffDays
          • diffMicros
          • diffMillis
          • diffMinutes
          • diffNanos
          • diffSeconds
          • diffYears365
          • diffYearsAvg
          • epochAutoToEpochNanos
          • epochAutoToInstant
          • epochAutoToZonedDateTime
          • epochMicros
          • epochMicrosToInstant
          • epochMicrosToZonedDateTime
          • epochMillis
          • epochMillisToInstant
          • epochMillisToZonedDateTime
          • epochNanos
          • epochNanosToInstant
          • epochNanosToZonedDateTime
          • epochSeconds
          • epochSecondsToInstant
          • epochSecondsToZonedDateTime
          • excelToInstant
          • excelToZonedDateTime
          • formatDate
          • formatDateTime
          • formatDurationNanos
          • hourOfDay
          • isAfter
          • isAfterOrEqual
          • isBefore
          • isBeforeOrEqual
          • lowerBin
          • microsOfMilli
          • microsOfSecond
          • microsToMillis
          • microsToNanos
          • microsToSeconds
          • millisOfDay
          • millisOfSecond
          • millisToMicros
          • millisToNanos
          • millisToSeconds
          • minus
          • minuteOfDay
          • minuteOfHour
          • monthOfYear
          • nanosOfDay
          • nanosOfMilli
          • nanosOfSecond
          • nanosToMicros
          • nanosToMillis
          • nanosToSeconds
          • now
          • nowMillisResolution
          • nowSystem
          • nowSystemMillisResolution
          • parseDuration
          • parseDurationNanos
          • parseDurationNanosQuiet
          • parseDurationQuiet
          • parseEpochNanos
          • parseEpochNanosQuiet
          • parseInstant
          • parseInstantQuiet
          • parseLocalDate
          • parseLocalDateQuiet
          • parseLocalTime
          • parseLocalTimeQuiet
          • parsePeriod
          • parsePeriodQuiet
          • parseTimePrecision
          • parseTimePrecisionQuiet
          • parseTimeZone
          • parseTimeZoneQuiet
          • parseZonedDateTime
          • parseZonedDateTimeQuiet
          • plus
          • secondOfDay
          • secondOfMinute
          • secondsToMicros
          • secondsToMillis
          • secondsToNanos
          • setClock
          • TimeSeriesFilter
          • timeZone
          • timeZoneAliasAdd
          • timeZoneAliasRm
          • today
          • toExcelTime
          • toInstant
          • toLocalDate
          • toLocalTime
          • toZonedDateTime
          • upperBin
          • year
          • yearOfCentury
          • currentTimeMicros
          • currentTimeMillis
          • currentTimeNanos
          • instantMillis
          • instantNanos
          • equals
          • not equals
          • icase in
          • icase not in
          • in
          • not in
        • Query scope
        • Special variables and constants
        • Arrays
        • DateTime
        • Durations
        • Casting
        • NaNs
        • Nulls
        • Objects
        • Periods
        • SelectableDataSetOneClick
        • Strings
      • Query language functions
      • catHistPlot
      • catPlot
      • catPlotBy
      • histPlot
      • ohlcPlot
      • oneClick
      • piePlot
      • plot
      • plotBy
      • plotStyle
      • Auto-imported functions
      • Automatic Groovy Imports
      • Backend Imports
    • Deephaven example apps on GitHub
      • FAQ Overview
        • How can I find which Core version to which a feature or fix was added?
        • Is it possible to read a Parquet file from a remote location?
        • When does Deephaven load data into memory for Parquet reads?
        • Is docker compose required?
        • How do I configure Deephaven to use another port?
        • What's the minimum amount of memory I should allocate to a Deephaven server?
        • Is it possible disable the Deephaven console?
        • How do I set the default timezone?
        • How can I manage the number of cores Deephaven can use?
        • Does Deephaven have a built-in ATR?
        • How can I perform rolling operations without a fixed window size?
        • Why do queries run faster the second time they are run?
        • How do I automatically execute Groovy code based on a Deephaven table column value?
        • When should I use `whereIn` or `naturalJoin`?
        • How do I solve a `hash table exceeds maximum size` error?
        • What's the best approach to monitor Deephaven server health?
        • Why am I getting an UpdateGraphConflictException?
        • Is there a way to find out how much memory a table is using?
        • Does it make any difference if I separate table operations or chain them together?
        • How do I convert vector columns to primitive array columns?
        • How can I convert year, day, and minute to an Instant?
        • Why isn't `lastBy` ticking?
        • How can I periodically write a ticking table to disk?
        • Is there a utility to pretty print a table to log?
        • How do I control what objects are displayed in the console?
        • How efficient are my table selection operations?
        • Why are my table operations producing incorrect results?
        • How do I shift values in columns?
        • How can I convert an integer date to a formatted string?
        • Where can I find the password for the Deephaven IDE?
        • Why can't I read from S3?
        • How can I assume a specific role for S3?
    • Engage in GitHub discussions
    • File GitHub issue
    • Slack
  • Syntax
  • Parameters
  • Returns
  • Examples
  • Related documentation
  • Question? Give us feedback ↗
  • Edit this page on GitHub ↗
  • View as markdown
  • ↑ Back to top

getAttributeKeys

The getAttributeKeys method returns an immutable set of all the attributes that have values in the source table's AttributeMap.

Syntax

Parameters

This method has no parameters.

Returns

An immutable set of all the attributes that have values in the source table's AttributeMap.

Examples

Related documentation

  • withoutAttributes
  • getAttribute
  • getAttributes
  • hasAttribute
  • retainingAttributes
  • withAttributes
  • Javadoc

Community Core

DocumentationCommunity questionsOpen-core LicensePydoc clientPydoc serverJavadoc client/serverGodoc clientC++ client

Enterprise

Enterprise SupportDocumentation

Social

BlogGithubSlackLinkedinYoutube

Company

AboutCareersNewsroomBrand AssetsContact

Copyright © 2026 Deephaven Data Labs LLC

Privacy PolicyTerms of Service
table.getAttributeKeys()
import io.deephaven.engine.table.impl.util.AppendOnlyArrayBackedInputTable
import io.deephaven.engine.table.AttributeMap

source = newTable(
    doubleCol("Doubles", 3.1, 5.45, -1.0),
    stringCol("Strings", "Creating", "New", "Tables")
)

result = AppendOnlyArrayBackedInputTable.make(source)

println source.getAttributeKeys()
println result.getAttributeKeys()