solana.core Table: fact_blocks Type: View
View DBT Documentation
View the complete technical documentation and data lineage for this table
Description
This table contains one record per block produced on the Solana blockchain, capturing block-level metadata including block identifiers, timestamps, hashes, network and chain information, and references to previous blocks. The table covers all finalized blocks on Solana mainnet and is updated as new blocks are processed. Data is sourced from on-chain block logs and normalized for analytics, supporting chain continuity and block production analysis.Key Use Cases
- Block-level analytics and network monitoring
- Chain continuity and fork analysis
- Time-series analysis of block production and network activity
- Joining with transaction and event tables for multi-level analytics
- Block explorer and dashboard backends
Important Relationships
- Each block is linked to its predecessor via
previous_block_idandprevious_block_hashfields, supporting chain continuity analysis - Joins with
core.fact_transactionsfor transaction-level context
Commonly-used Fields
block_id: Unique identifier for each block, used for joins and traceabilityblock_timestamp: For time-series and block production analysis
Columns
| Column Name | Data Type | Description |
|---|---|---|
| BLOCK_ID | NUMBER | A unique identifier for the block in the Solana blockchain. Typically a sequential integer or hash, depending on the data source. Used to group transactions by block and analyze block-level activity. |
| BLOCK_TIMESTAMP | TIMESTAMP_NTZ | The timestamp (UTC) at which the block was produced on the Solana blockchain. This field is recorded as a TIMESTAMP data type and represents the precise moment the block was finalized and added to the chain. It is essential for time-series analysis, block production monitoring, and aligning transaction and event data to specific points in time. Used extensively for analytics involving block intervals, network activity trends, and historical lookups. Format: YYYY-MM-DD HH:MI:SS (UTC). |
| NETWORK | TEXT | The name of the Solana network from which this block was sourced. Common values include ‘mainnet-beta’, ‘testnet’, or ‘devnet’. Used to distinguish between different Solana environments and support multi-network analytics. |
| CHAIN_ID | TEXT | A static identifier for the Solana blockchain. This value is always ‘solana’ for Solana-native tables and is used to support joins with cross-chain analytics tables. |
| BLOCK_HEIGHT | VARIANT | The height (slot number) of this block in the Solana blockchain. Block height is a sequential integer that increases with each new block and is used to order blocks chronologically. |
| BLOCK_HASH | TEXT | The cryptographic hash of this block, as recorded on the Solana blockchain. Used to verify block integrity and support block explorer lookups. This value is a base58-encoded string. |
| PREVIOUS_BLOCK_ID | VARIANT | The block ID (slot number) of the previous block in the Solana blockchain. Used to establish block lineage and support chain traversal. |
| PREVIOUS_BLOCK_HASH | TEXT | The cryptographic hash of the previous block in the Solana blockchain. Used to verify chain continuity and support block explorer lookups. This value is a base58-encoded string. |
| FACT_BLOCKS_ID | TEXT | A unique, stable identifier for each record in this table. The primary key (PK) ensures that every row is uniquely identifiable and supports efficient joins, lookups, and data integrity across models. The PK may be a natural key (such as a blockchain transaction hash) or a surrogate key generated from one or more fields, depending on the table’s structure and requirements. |
| INSERTED_TIMESTAMP | TIMESTAMP_NTZ | The timestamp when this transaction record was first inserted into the analytics database. Used for data freshness tracking and incremental model logic. Format: YYYY-MM-DD HH:MI:SS. Not derived from the blockchain, but from the ETL process. |
| MODIFIED_TIMESTAMP | TIMESTAMP_NTZ | The timestamp when this transaction record was last updated in the analytics database. Used for tracking updates and supporting incremental model logic. Format: YYYY-MM-DD HH:MI:SS. Not derived from the blockchain, but from the ETL process. |
Column Details
BLOCK_ID
Example:- 123456789
- Supports block-level analytics, such as block production rate and transaction throughput.
- Useful for tracing transaction inclusion and block explorer integrations.
NETWORK
Example:- “mainnet-beta”
- “testnet”
- Enables filtering and analysis by network environment.
- Important for cross-network comparisons and testnet/mainnet separation.
CHAIN_ID
Example:- “solana”
- Supports cross-chain analytics and integrations.
- Used as a join key in multi-chain models.
BLOCK_HEIGHT
Example:- 12345678
- Used for block ordering, chain growth analysis, and fork resolution.
- Important for time-series and historical analytics.
BLOCK_HASH
Example:- “5h3k…9zQ”
- Used for block verification, deduplication, and explorer integrations.
- Supports chain integrity and auditability.
PREVIOUS_BLOCK_ID
Example:- 12345677
- Enables block-to-block navigation and fork analysis.
- Important for reconstructing chain history.
PREVIOUS_BLOCK_HASH
Example:- “4g2j…8yP”
- Supports chain integrity, fork resolution, and auditability.
- Used for block explorer navigation and verification.