Detalles de Conexión de la Amazon Dynamo DB
Introducción
Versión del conector
Esta documentación se basa en la versión 21.0.8257 del conector.
Empezando
Compatibilidad con la versión de Amazon DynamoDB
El conector utiliza la versión actual de la API REST de Amazon DynamoDB, versión 2012-08-10, para permitir el acceso de lectura/escritura a las instancias de DynamoDB.
Establecer una Conexión
Conexión a DynamoDB
Especifique lo siguiente para conectarse a los datos:
Domain
: configure esto si desea utilizar un nombre de dominio que haya asociado con AWS.AWSRegion
: establezca esto en la región donde se alojan sus datos de Amazon DynamoDB.
Autenticación en DynamoDB
Obtención de la Clave de Acceso
Para obtener las credenciales de un usuario de IAM, siga los pasos a continuación:
- Inicie sesión en la consola de IAM.
- En el panel de navegación, seleccione Usuarios.
- Para crear o administrar las claves de acceso para un usuario, seleccione el usuario y luego seleccione la pestaña Credenciales de seguridad.
Para obtener las credenciales de su cuenta raíz de AWS, siga los pasos a continuación:
- Inicie sesión en la consola de administración de AWS con las credenciales de su cuenta raíz.
- Seleccione su nombre o número de cuenta y seleccione Mis credenciales de seguridad en el menú que se muestra.
- Haga clic en Continuar con Credenciales de seguridad y expanda la sección Claves de acceso para administrar o crear claves de acceso a la cuenta raíz.
Autenticación con Credenciales Raíz
Para autenticarse usando las credenciales de la cuenta raíz, configure lo siguiente:
AuthScheme
: Establézcalo enAwsRootKeys
.AWSAccessKey
: La clave de acceso asociada con la cuenta raíz de AWS.AWSSecretKey
: La clave secreta asociada con la cuenta raíz de AWS.
Nota: Amazon desaconseja el uso de este esquema de autenticación para cualquier cosa que no sea pruebas simples. Las credenciales de la cuenta raíz tienen todos los permisos del usuario, lo que hace que este sea el método de autenticación menos seguro.
Autenticación con Credenciales Temporales
Para autenticarse usando credenciales temporales, especifique lo siguiente:
AuthScheme
: Establézcalo enTemporaryCredentials
.AWSAccessKey
: La clave de acceso del usuario de IAM para el que asumirá el rol.AWSSecretKey
: La clave secreta del usuario de IAM para el que asumirá el rol.AWSSessionToken
: Su token de sesión de AWS. Esto se habrá proporcionado junto con sus credenciales temporales. Vea este enlace para más información.
El conector ahora puede solicitar recursos con los mismos permisos proporcionados por las credenciales a largo plazo (como las credenciales de usuario de IAM) durante la vida útil de las credenciales temporales.
Si también utiliza un rol de IAM para autenticarse, debe especificar además lo siguiente:
AWSRoleARN
: Especifique el ARN de función para la rol con la que desea autenticarse. Esto hará que el conector intente recuperar las credenciales para el rol especificado.AWSExternalId
: Solo si se requiere cuando asume un rol en otra cuenta.
Autenticación Desde una Instancia EC2
Si está utilizando el conector de una instancia EC2 y tiene un rol de IAM asignado a la instancia, puede usar el rol de IAM para autenticarse. Para hacerlo, establezca las siguientes propiedades para autenticarse:
AuthScheme
: Establézcalo enAwsEC2Roles
.
No especificar AWSAccessKey
y AWSSecretKey
porque el conector obtendrá automáticamente sus credenciales de rol de IAM y se autenticará con ellas.
Si también utiliza un rol de IAM para autenticarse, debe especificar además lo siguiente:
AWSRoleARN
: Especifique el ARN de función para la rol con la que desea autenticarse. Esto hará que el conector intente recuperar las credenciales para el rol especificado.AWSExternalId
: Solo si se requiere cuando asume un rol en otra cuenta.
Soporte IMDSv2
El conector de Amazon DynamoDB ahora es compatible con IMDSv2. A diferencia de IMDSv1, la nueva versión requiere un token de autenticación. Los Extremos y la respuesta son los mismos en ambas versiones. En IMDSv2, el conector de Amazon DynamoDB primero intenta recuperar el token de metadatos de IMDSv2 y luego lo usa para llamar a los extremos de metadatos de AWS. Si no puede recuperar el token, el conector vuelve a IMDSv1.
Autenticación Como un Rol de AWS
En muchas situaciones, puede ser preferible utilizar un rol de IAM para la autenticación en lugar de las credenciales de seguridad directas de un usuario raíz de AWS.
Para autenticarse como un rol de AWS, establezca lo siguiente:
AuthScheme
: Establézcalo enAwsIAMRoles
.AWSRoleARN
: Especifique el ARN de función para la rol con la que desea autenticarse. Esto hará que el conector intente recuperar las credenciales para el rol especificado.AWSExternalId
: Solo si se requiere cuando asume un rol en otra cuenta.AWSAccessKey
: La clave de acceso del usuario de IAM para el que asumirá el rol.AWSSecretKey
: La clave secreta del usuario de IAM para el que asumirá el rol.
Nota: Es posible que no se utilicen roles al especificar AWSAccessKey
y AWSSecretKey
de un usuario raíz de AWS.
Autenticación con ADFS
Selecciona el AuthScheme
a ADFS
. Es necesario establecer las siguientes propiedades de conexión:
User
: Configure esto para el usuario de ADFS.Password
: Establézcalo en la contraseña de ADFS para el usuario.SSOLoginURL
: establezca esto en la URL de inicio de sesión utilizada por el proveedor de SSO.
A continuación se muestra una cadena de conexión de ejemplo:
AuthScheme=ADFS; AWSRegion=Ireland; User=user@cdata.com; Password=CH8WerW121235647iCa6; SSOLoginURL='https://adfs.domain.com'; AWSRoleArn=arn:aws:iam:1234:role/ADFS_SSO; AWSPrincipalArn=arn:aws:iam:1234:saml-provider/ADFSProvider; S3StagingDirectory=s3://athena/staging;
ADFS Integrado
El flujo integrado de ADFS indica que se está conectando con currently logged in Windows user credentials
. Para usar el flujo integrado de ADFS, simplemente no especifique el User
y Password
, pero por lo demás siga los mismos pasos en la guía ADFS anterior.
Autenticación con Okta
Selecciona el AuthScheme
a Okta
. Las siguientes propiedades de conexión se utilizan para conectarse a Okta:
User
: Configure esto para el usuario de Okta.Password
: establezca esto en la contraseña de Okta para el usuario.SSOLoginURL
: establezca esto en la URL de inicio de sesión utilizada por el proveedor de SSO.
La siguiente SSOProperties
son necesarios para autenticarse en Okta:
- APIToken (opcional): establezca esto en el token de API que el cliente creó a partir de la organización de Okta. Debe usarse al autenticar a un usuario a través de una aplicación confiable o un proxy que anula el contexto de solicitud del cliente de OKTA.
- MFAType (opcional): configure esto solo en caso de que haya configurado el flujo MFA. Actualmente solo admitimos los siguientes tipos: OktaVerify, Correo y SMS.
- MFAPassCode (opcional): configure esto solo en caso de que haya configurado el flujo MFA. Si está configurado como vacío/no válido, el controlador emitirá inicialmente un desafío de MFA que activará la plataforma para enviarle una contraseña de un solo uso a su dispositivo o correo, según el tipo de MFA configurado. Debe volver a emitir otra conexión en la que el valor de la contraseña de un solo uso recuperado se pase a la propiedad de conexión MFAPassCode.
La siguiente es una cadena de conexión de ejemplo:
AuthScheme=Okta; AWSRegion=Ireland; User=user@cdata.com; Password=CH8WerW121235647iCa6; SSOLoginURL='https://cdata-us.okta.com/home/amazon_aws/0oa35m8arsAL5f5NrE6NdA356/272'; SSOProperties='ApiToken=01230GGG2ceAnm_tPAf4MhiMELXZ0L0N1pAYrO1VR-hGQSf;'; AWSRoleArn=arn:aws:iam:1234:role/Okta_SSO; AWSPrincipalARN=arn:aws:iam:1234:saml-provider/OktaProvider; S3StagingDirectory=s3://athena/staging;
Autenticación con PingFederate
Selecciona el AuthScheme
a PingFederate
. Es necesario establecer las siguientes propiedades de conexión:
User
: Configure esto para el usuario de PingFederate.Password
: establezca esto en la contraseña de PingFederate para el usuario.SSOLoginURL
: establezca esto en la URL de inicio de sesión utilizada por el proveedor de SSO.SSOExchangeUrl
: El URI 'Identificador de servicio de socio' configurado en su instancia de servidor PingFederate en:SP Connections > SP Connection > WS-Trust > Protocol Settings
. Esto debería identificar de forma única una conexión PingFederate SP, por lo que es una buena idea configurarlo en su 'AWS SSO ACS URL'. Puede encontrarlo en AWS SSO > Ajustes > Haga clic en 'Ver detalles' junto al campo Autenticación.
La siguiente SSOProperties
son necesarios para autenticarse en PingFederate:
- AuthScheme (opcional): el esquema de autorización que se usará para el extremo IdP. Los valores permitidos para este IdP son Ninguno o Básico.
Además, puede utilizar los siguientes SSOProperties
para configurar la autenticación SSL mutua para SSOLoginURL
, el extremo de STS de WS-Trust:
SSLClientCert
SSLClientCertType
SSLClientCertSubject
SSLClientCertPassword
A continuación se muestra una cadena de conexión de ejemplo:
authScheme=pingfederate;SSOLoginURL=https://mycustomserver.com:9033/idp/sts.wst;SSOExchangeUrl=https://us-east-1.signin.aws.amazon.com/platform/saml/acs/764ef411-xxxxxx;user=admin;password=PassValue;AWSPrincipalARN=arn:aws:iam:215338515180:saml-provider/pingFederate;AWSRoleArn=arn:aws:iam:215338515180:role/SSOTest2;
Autenticación con MFA
Para los usuarios y roles que requieren autenticación multifactor, especifique lo siguiente para autenticarse:
AuthScheme
: Establézcalo enAwsMFA
.CredentialsLocation
: La ubicación del archivo de configuración donde se guardan las credenciales de MFA. Consulte la página Ubicación del archivo de credenciales en Propiedades de configuraciones avanzadas para obtener más información.MFASerialNumber
: el número de serie del dispositivo MFA, si se está utilizando uno.MFAToken
: El token temporal disponible desde su dispositivo MFA.
Si se está conectando a AWS (en lugar de estar ya conectado, como en una instancia EC2), debe especificar además lo siguiente:
AWSAccessKey
: La clave de acceso del usuario de IAM para el que se emitirá MFA.AWSSecretKey
: La clave secreta del usuario de IAM a quien se emitirá MFA.
Si también utiliza un rol de IAM para autenticarse, debe especificar además lo siguiente:
AWSRoleARN
: Especifique el ARN de función para la rol con la que desea autenticarse. Esto hará que el conector intente recuperar las credenciales para el rol especificado mediante MFA.AWSExternalId
: Solo si se requiere cuando asume un rol en otra cuenta.
Esto hará que el conector envíe las credenciales de MFA en una solicitud para recuperar las credenciales de autenticación temporales.
Tenga en cuenta que la duración de las credenciales temporales se puede controlar a través de TemporaryTokenDuration
propiedad (por defecto 3600 segundos).
Autenticación con un Archivo de Credenciales
Puede usar un archivo de credenciales para autenticarse. Se utilizará cualquier configuración relacionada con la autenticación AccessKey/SecretKey, las credenciales temporales, la autenticación de rol o MFA. Para hacerlo, establezca las siguientes propiedades para autenticarse:
AuthScheme
: Establézcalo enAwsCredentialsFile
.AWSCredentialsFile
: establezca esto en la ubicación de su archivo de credenciales.AWSCredentialsFileProfile
: Opcionalmente, establezca esto en el nombre del perfil que le gustaría usar del archivo de credenciales especificado. Si no se especifica, se utilizará el perfil con el nombre predeterminado.
Ver este enlace para más información.
Autenticación con Credenciales de AWS Cognito
Si desea utilizar el conector con un usuario registrado en un grupo de usuarios en AWS Cognito, configure las siguientes propiedades para autenticarse:
AuthScheme
: establezca esto en AwsCognitoSrp (recomendado). También puede utilizar AwsCognitoBasic.AWSCognitoRegion
: establezca esto en la región del grupo de usuarios.AWSUserPoolId
: Establézcalo en el Id. del grupo de usuarios.AWSUserPoolClientAppId
: Establézcalo en el Id. de la aplicación del cliente del grupo de usuarios.AWSUserPoolClientAppSecret
: establezca esto en el secreto del cliente del grupo de usuarios.AWSIdentityPoolId
: establezca esto en el ID del grupo de identidades del grupo de identidades que está vinculado con el grupo de usuarios.User
: establezca esto en el nombre de usuario del usuario registrado en el grupo de usuarios.Password
: establezca esto en la contraseña del usuario registrado en el grupo de usuarios.
Ajuste Fino del Acceso a los Datos
Inferir el Tipo de Datos
Puede utilizar las siguientes propiedades para configurar la detección automática de tipos de datos, que está habilitada de forma predeterminada.
TypeDetectionScheme
: puede usar esta propiedad para habilitar o deshabilitar la detección automática de tipos según el valor especificado enRowScanDepth
.RowScanDepth
: esta propiedad determina la cantidad de filas que se escanearán para determinar los tipos de datos de columna.IgnoreTypes
: los tipos de datos que deben ignorarse y resolverse en tipos de datos varchar. De forma predeterminada, se ignoran los tipos de fecha, hora y fecha y hora. Esto se debe a que Amazon DynamoDB no los admite como tipos. Cualquier filtrado de estas columnas se puede realizar solo como su tipo de datos varchar original.
Ajuste Fino del Acceso a Datos
Puede utilizar las siguientes propiedades para obtener un mayor control sobre las características de la API de Amazon DynamoDB y las estrategias que utiliza el conector para mostrarlas:
-
GenerateSchemaFiles
: esta propiedad le permite conservar los metadatos de la tabla en archivos de esquema estáticos que son fáciles de personalizar, por ejemplo, para cambiar los tipos de datos de columna. Puede establecer esta propiedad en "OnStart" para generar archivos de esquema para todas las tablas en su base de datos en la conexión. O bien, puede generar esquemas a medida que ejecuta consultas SELECT en tablas. Los esquemas resultantes se basan en las propiedades de conexión que utiliza para configurar Detección automática de esquemas. -
UseSimpleNames
: Amazon DynamoDB admite nombres de atributos con caracteres especiales que muchas herramientas orientadas a bases de datos no admiten.Además, los nombres de las tablas de Amazon DynamoDB pueden incluir puntos y guiones: el conector interpreta los puntos dentro de los nombres de las tablas como separadores de jerarquía que le permiten profundizar en los campos anidados, de forma similar a XPath.
Puede usar esta propiedad para reemplazar cualquier carácter no alfanumérico con un guión bajo.
-
SeparatorCharacter
: Puede usar esta propiedad para acceder más fácilmente a los campos anidados cuando Consulta de documentos y listas; especifique el separador de jerarquía con esta propiedad. De forma predeterminada, este carácter es el '.' (punto) carácter.
Actuación
Establecer un Intervalo de Reintento
Puede configurar las siguientes propiedades para volver a intentar consultas en lugar de generar un error temporal como "rendimiento máximo excedido":
RetryWaitTime
: el número mínimo de milisegundos que esperará el conector para volver a intentar una solicitud.MaximumRequestRetries
: El número máximo de veces para reintentar una solicitud.
El Jitterbit Connector para Amazon DynamoDB también tiene dos APIs separadas que se pueden usar según la consultar, PartiQL y Scan. La API que se utiliza depende de la consultar que se ejecuta.
PartiQL
PartiQL se utiliza en cualquier consultar de solicitud de inserción/actualización/eliminación, así como en cualquier selección que contenga un filtro. Esto se debe a que la API de PartiQL contiene capacidades de filtrado más avanzadas que el extremo de Scan más antiguo. En general, se puede esperar que las consultas en las que se filtra una parte significativa del resultado se ejecuten más rápido que una consultar con muy poco filtrado.
Uso Efectivo de la Paginación
Puedes usar el Pagesize
propiedad para optimizar el uso de su rendimiento aprovisionado, según el tamaño de sus elementos y el tamaño de página de 1 MB de Amazon DynamoDB. Establezca esta propiedad en el número de elementos a devolver.
Por lo general, un tamaño de página más pequeño reduce los picos en el rendimiento que provocan la limitación. Un tamaño de página más pequeño también inserta pausas entre solicitudes. Este intervalo iguala la distribución de solicitudes y permite que más solicitudes tengan éxito al evitar la limitación.
Escaneos
Se producirá un escaneo durante una consultar SELECT que no contenga ningún filtro. En este caso, se deben recuperar todos los resultados, por lo que no hay ninguna ventaja en usar la API de PartiQL. Ejecutar un escaneo recuperará todos los resultados, pero la API contiene una función clave que le brinda un mejor rendimiento que una consultar PartiQL sin filtrar: varios subprocesos.
El ThreadCount
La propiedad de conexión se puede configurar para influir en la cantidad de subprocesos que se utilizarán al ejecutar una solicitud de exploración. El uso de más subprocesos hará que se ocupe más memoria, pero dará como resultado resultados más rápidos por subproceso. El valor predeterminado es 4. Esto funciona mejor en tablas donde se aprovisiona un rendimiento alto o variable.
En los casos en los que se exceda el rendimiento máximo de una tabla en un solo subproceso, no hay ningún beneficio en usar un escaneo sobre la API de PartiQL de un solo subproceso. Amazon DynamoDB simplemente acelerará todos los subprocesos hasta que ya no se supere el rendimiento máximo.
Requisitos Mínimos de Gestión de Identidades y Accesos
Recomendamos utilizar funciones predefinidas para los servicios en lugar de crear políticas de IAM personalizadas. Los roles predefinidos para Amazon DynamoDB son
- AmazonDynamoDBReadOnlyAccess: otorga acceso de solo lectura a los recursos de DynamoDB a través de la Management Console de AWS.
- AmazonDynamoDBFullAccess: otorga acceso completo a los recursos de DynamoDB a través de la Management Console de AWS.
Si desea crear políticas personalizadas, utilice las funciones que se describen en la siguiente tabla. Tenga en cuenta que las políticas específicas requeridas por el controlador de Amazon DynamoDB están sujetas a cambios en versiones futuras. Amazon DynamoDB requiere como mínimo los siguientes permisos:
Rol de IAM | Descripción | |
---|---|---|
dynamodb:ListTables | En otras palabras, la acción dynamodb:ListTables necesita un recurso , y las otras acciones pueden tener permiso para todas las tablas arn:aws:dynamodb:us-east-1:987654321098:table/ oa una lista de tablas específicas: | |
dynamodb:DescribeTabla | Requerido para obtener metadatos sobre la tabla seleccionada. Se utiliza durante la recuperación de metadatos de la tabla para determinar dinámicamente la lista de columnas. Esta acción admite permisos a nivel de recursos, por lo que puede especificar las tablas de las que desea obtener los metadatos. Por ejemplo, para la tabla Clientes y Pedidos en la región Virginia del Norte us-east-1, para la cuenta 987654321098: | |
dynamodb:Escanear | Necesario para obtener uno o más elementos accediendo a todos los elementos de la tabla. Se utiliza para la mayoría de las consultas SELECT, por ejemplo, SELECT * FROM [Customers]. Esta acción admite permisos a nivel de recursos, por lo que puede especificar las tablas de las que desea obtener datos, de forma similar a dynamodb:DescribeTable. | |
dynamodb:PartiQLSelect | Obligatorio para obtener elementos específicos de una tabla al usar consultas SELECT y filtrar por la columna de clave principal, por ejemplo, SELECT * FROM [Customers] DONDE id=1234. Esta acción admite permisos a nivel de recursos, por lo que puede especificar las tablas de las que desea obtener datos, de forma similar a dynamodb:DescribeTable. | |
dynamodb:PartiQLInsert | Necesario para insertar datos en una tabla. Esta acción admite permisos de nivel de recursos, por lo que puede especificar las tablas en las que desea insertar datos, de forma similar a dynamodb:DescribeTable. | |
dynamodb:PartiQLUupdate | Necesario para modificar datos en una tabla. Esta acción admite permisos a nivel de recursos, por lo que puede especificar las tablas en las que desea modificar los datos, de forma similar a dynamodb:DescribeTable. | |
dynamodb:PartiQLDelete | Necesario para eliminar datos de una tabla. Esta acción admite permisos a nivel de recursos, por lo que puede especificar las tablas de las que desea eliminar datos, de forma similar a dynamodb:DescribeTable. | |
dynamodb:CrearTabla | Necesario para crear una tabla. Esta acción admite permisos a nivel de recursos, por lo que puede especificar los nombres de las tablas que puede crear. |
Notas Importantes
Procedimientos Almacenados
- Las funciones de procedimientos almacenados descritas en esta documentación no se admiten actualmente.
- Debido a que los procedimientos almacenados no se admiten actualmente, cualquier característica que dependa de los procedimientos almacenados tampoco se admite actualmente.
Archivos de Configuración y Sus Rutas
- Todas las referencias a la adición de archivos de configuración y sus rutas se refieren a archivos y ubicaciones en Harmony Agente donde está instalado el conector. Estas rutas deben ajustarse según corresponda según el agente y el sistema operativo. Si se utilizan varios agentes en un grupo de agentes, se requerirán archivos idénticos en cada agente.
Base de Datos NoSQL
Amazon DynamoDB es una base de datos sin esquema que proporciona alto rendimiento, disponibilidad y escalabilidad. Estas características no son necesariamente incompatibles con un lenguaje de consultar compatible con estándares como SQL-92. En esta sección, mostraremos varios esquemas que ofrece el conector para cerrar la brecha con SQL relacional y una base de datos de documentos.
El conector modela las tablas de Amazon DynamoDB sin esquema en tablas relacionales y traduce las consultas SQL en consultas de Amazon DynamoDB para obtener los datos solicitados. El conector ofrece dos formas, Descubrimiento automático de esquemas y Definiciones de esquema personalizado, para modelar las tablas de Amazon DynamoDB como tablas relacionales.
El Descubrimiento automático de esquemas encuentra automáticamente los tipos de datos en una tabla de Amazon DynamoDB al escanear un número configurado de filas de la tabla. Puedes usar RowScanDepth
, FlattenArrays
, y FlattenObjects
para controlar la representación relacional de las tablas en Amazon DynamoDB.
Opcionalmente, puede usar Definiciones de esquema personalizadas para proyectar la estructura relacional elegida sobre una tabla de Amazon DynamoDB. Esto le permite definir los nombres de las columnas elegidas, sus tipos de datos y la ubicación de sus valores en la tabla de Amazon DynamoDB.
Descubrimiento Automático de Esquemas
El conector infiere automáticamente un esquema relacional al inspeccionar una serie de documentos de Amazon DynamoDB en una colección. Puedes usar el RowScanDepth
propiedad para definir el número de documentos que escaneará el conector para hacerlo. Las columnas identificadas durante el proceso de descubrimiento dependen de FlattenArrays
y FlattenObjects
propiedades.
Aplanar Objetos
Si FlattenObjects
está configurado, todos los objetos anidados se aplanarán en una serie de columnas. Por ejemplo, considere el siguiente documento:
{
id: 12,
name: "Lohia Manufacturers Inc.",
address: {street: "Main Street", city: "Chapel Hill", state: "NC"},
offices: ["Chapel Hill", "London", "New York"],
annual_revenue: 35,600,000
}
Este documento estará representado por las siguientes columnas:
Nombre de columna | Tipo de datos | Valor de ejemplo |
---|---|---|
identificación | Entero | 12 |
nombre | Cadena | Lohia Fabricantes Inc. |
dirección.calle | Cadena | Calle principal |
dirección.ciudad | Cadena | Colina de la capilla |
dirección.estado | Cadena | Carolina del Norte |
oficinas | Cadena | ["Chapel Hill", "Londres", "Nueva York"] |
ingresos_anuales | Doble | 35, 600, 000 |
Si FlattenObjects
no está configurado, las columnas dirección.calle, dirección.ciudad y dirección.estado no se dividirán. En cambio, la columna de dirección de tipo cadena representará el objeto completo. su valor seria {street: "Main Street", city: "Chapel Hill", state: "NC"}
. Vea Funciones JSON para obtener más detalles sobre cómo trabajar con agregados JSON. Puede cambiar el carácter separador en el nombre de la columna de un punto configurando SeparatorCharacter
.
Aplanamiento de Matrices
El FlattenArrays
La propiedad se puede usar para aplanar valores de matriz en columnas propias. Esto solo se recomienda para matrices que se espera que sean cortas, por ejemplo, las siguientes coordenadas:
"coord": [-73.856077, 40.848447 ]
El FlattenArrays
la propiedad se puede establecer en 2 para representar la matriz anterior de la siguiente manera:
Nombre de columna | Tipo de datos | Valor de ejemplo |
---|---|---|
coord.0 | Flotador | -73.856077 |
coord.1 | Flotador | 40.848447 |
Es mejor dejar otras matrices ilimitadas como están y dividir los datos según sea necesario usando Funciones JSON.
Aplanamiento Vertical
Es posible recuperar una matriz de objetos como si fuera una tabla separada. Tome la siguiente estructura JSON de la tabla de restaurantes, por ejemplo:
{
"restaurantid" : "30075445",
"address" : {
"building" : "1007",
"coord" : [-73.856077, 40.848447],
"street" : "Morris Park Ave",
"zipcode" : "10462"
},
"borough" : "Bronx",
"cuisine" : "Bakery",
"grades" : [{
"date" : 1393804800000,
"grade" : "B",
"score" : 2
}, {
"date" : 1378857600000,
"grade" : "A",
"score" : 6
}, {
"date" : 1358985600000,
"grade" : "A",
"score" : 10
}],
"name" : "Morris Park Bake Shop"
}
El aplanamiento vertical le permitirá recuperar la matriz de calificaciones como una tabla separada usando la siguiente sintaxis:
SELECT * FROM [restaurants.grades]
Esta consultar devuelve el siguiente conjunto de datos:
fecha | grado | puntuación | _índice |
---|---|---|---|
1393804800000 | B | 2 | 1 |
1378857600000 | un | 6 | 2 |
1358985600000 | un | 10 | 3 |
La matriz de grados también se podría anidar algunos niveles más profundos. En ese caso, se debe utilizar la misma sintaxis:
SELECT * FROM [restaurants.cuisine.bakery.grades]
También hay casos en los que la estructura anidada incluye otra matriz en un nivel superior. Tome el siguiente JSON como ejemplo:
{
"restaurantid" : "30075445",
"reviews": [
{
"grades": [
{
"date": 1393804800000,
"score": 2,
"grade": "B"
},
{
"date": 1378857600000,
"score": 6,
"grade": "A"
},
{
"date": 1358985600000,
"score": 10,
"grade": "A"
}]
}],
"name" : "Morris Park Bake Shop"
}
Para esta estructura, el índice de la matriz de reseñas deberá envolverse entre corchetes. Si ya se están utilizando como caracteres de escape en la consultar SQL, los corchetes deberán escaparse como se muestra en la consultar a continuación:
SELECT * FROM [restaurants.reviews.\[0\].grades]
Esta consultar devolverá el mismo conjunto de datos que la estructura JSON en la parte superior. Tenga en cuenta que esta sintaxis distingue entre mayúsculas y minúsculas, así que asegúrese de escribir los nombres de los campos de la misma forma en que se guardan en DynamoDB.
Funciones JSON
El conector puede devolver estructuras JSON como valores de columna. El conector le permite utilizar funciones SQL estándar para trabajar con estas estructuras JSON. Los ejemplos de esta sección utilizan la siguiente matriz:
[
{ "grade": "A", "score": 2 },
{ "grade": "A", "score": 6 },
{ "grade": "A", "score": 10 },
{ "grade": "A", "score": 9 },
{ "grade": "B", "score": 14 }
]
JSON_EXTRACT
La función JSON_EXTRACT puede extraer valores individuales de un objeto JSON. La siguiente consultar devuelve los valores que se muestran a continuación en función de la ruta JSON pasada como segundo argumento de la función:
SELECT Name, JSON_EXTRACT(grades,'[0].grade') AS Grade, JSON_EXTRACT(grades,'[0].score') AS Score FROM Students;
Nombre de columna | Valor de ejemplo |
---|---|
Grade | un |
Score | 2 |
JSON_COUNT
La función JSON_COUNT devuelve la cantidad de elementos en una matriz JSON dentro de un objeto JSON. La siguiente consultar devuelve la cantidad de elementos especificados por la ruta JSON pasada como segundo argumento a la función:
SELECT Name, JSON_COUNT(grades,'[x]') AS NumberOfGrades FROM Students;
Nombre de columna | Valor de ejemplo |
---|---|
NumberOfGrades | 5 |
JSON_SUM
La función JSON_SUM devuelve la suma de los valores numéricos de una matriz JSON dentro de un objeto JSON. La siguiente consultar devuelve el total de los valores especificados por la ruta JSON pasada como segundo argumento a la función:
SELECT Name, JSON_SUM(score,'[x].score') AS TotalScore FROM Students;
Nombre de columna | Valor de ejemplo |
---|---|
TotalScore | 41 |
JSON_MIN
La función JSON_MIN devuelve el valor numérico más bajo de una matriz JSON dentro de un objeto JSON. La siguiente consultar devuelve el valor mínimo especificado por la ruta JSON pasada como segundo argumento a la función:
SELECT Name, JSON_MIN(score,'[x].score') AS LowestScore FROM Students;
Nombre de columna | Valor de ejemplo |
---|---|
LowestScore | 2 |
JSON_MAX
La función JSON_MAX devuelve el valor numérico más alto de una matriz JSON dentro de un objeto JSON. La siguiente consultar devuelve el valor máximo especificado por la ruta JSON pasada como segundo argumento a la función:
SELECT Name, JSON_MAX(score,'[x].score') AS HighestScore FROM Students;
Nombre de columna | Valor de ejemplo |
---|---|
HighestScore | 14 |
Consultas de DynamoDB
Debido a que Amazon DynamoDB es una fuente de datos NoSQL, las consultas deben manejarse de manera un poco diferente a las bases de datos relacionales estándar.
Consultas Sensibles al Valor
La falta de un tipo de datos requerido para una columna determinada significa que puede almacenar diferentes tipos de datos en una sola columna. Por ejemplo, una fila podría tener una cadena llamada EmailAddresses y otra podría tener un StringSet también llamado EmailAddresses. Para estos y otros tipos de casos, el conector determina en gran medida qué tipo de datos usar en función de los valores de la consultar.
Por ejemplo, supongamos que tiene una tabla de elementos donde PartNumber podría almacenar una cadena o un número. Para recuperar una pieza con el Número de pieza del valor numérico 12345, debería emitir la siguiente consultar:
SELECT Name, Location, Quantity, PartNumber FROM Items WHERE PartNumber = 12345
Alternativamente, el PartNumber podría haberse almacenado como la cadena "12345". Para recuperar una parte con PartNumber de la cadena literal 12345, emita la siguiente consultar:
SELECT Name, Location, Quantity, PartNumber FROM Items WHERE PartNumber = '12345'
Si el tipo de datos del valor especificado no es ambiguo, siempre se usa antes del tipo de datos detectado automáticamente. En ambos casos, si se usó un parámetro en lugar de un valor codificado, el tipo de datos del parámetro se usaría para determinar qué tipo enviar a Amazon DynamoDB.
Tipo de Datos de la Columna Detectada
Si un valor no es obvio basándose únicamente en el tipo de datos detectado, el conector lo compara con la columna detectada automáticamente. Por ejemplo, si desea insertar una columna llamada Coordenadas en la tabla Ubicación, su inserción se vería así:
INSERT INTO Locations (Address, Coordinates) VALUES ('123 Fake Street', '[40.7127, 74.0059]')
Basado solo en el valor de entrada, el tipo de datos detectado es una cadena. Sin embargo, debido a que previamente se detectó automáticamente una columna de coordenadas, el conector inserta un conjunto de números y no una cadena simple.
Si una columna de coordenadas no se detectó automáticamente al escanear la tabla de ubicaciones, se utiliza el tipo de datos del valor insertado.
En este caso, aún podríamos resolver que la inserción es un NumberSet, pero costará un poco más de gastos generales hacerlo.
Contar
Amazon DynamoDB admite 2 métodos diferentes de uso de la función de agregado COUNT. Para simplemente devolver la cantidad de elementos en su tabla, emita la siguiente consultar:
SELECT COUNT(*) FROM MyTable
El conector Jitterbit para Amazon DynamoDB leerá ItemCount de la acción DescribeTable. Esto evita usar demasiadas unidades de lectura para escanear la tabla completa. Sin embargo, DynamoDB actualiza este valor aproximadamente cada seis horas y es posible que los cambios recientes no se reflejen en este valor.
Emitir las siguientes consultas de ejemplo escaneará la tabla completa para el conteo:
SELECT COUNT(*) FROM MyTable WHERE MyInt > 10
SELECT COUNT(MyInt) FROM MyTable
Consulta de Documentos y Listas
Los documentos y las listas de Amazon DynamoDB son compatibles con Jitterbit Connector para Amazon DynamoDB. Puede acceder a documentos y listas directamente en el nivel raíz o usar el '.' carácter como un divisor de jerarquía para desglosar documentos y listas.
Informes de Valores en Documentos y Listas
Cuando los tipos de datos se detectan automáticamente, se informan hasta el nivel más bajo que se puede detectar de forma fiable. Por ejemplo, un documento llamado Cliente con un hijo llamado Dirección y un hijo en Dirección llamado Calle se representaría mediante la columna Cliente.Dirección.Calle.
Sin embargo, este proceso no se aplica a las listas, ya que una lista puede tener cualquier número de entradas. Una vez que se detecta una lista o un conjunto, los valores adicionales no se notifican como disponibles en el esquema de la tabla.
Recuperar Valores No Declarados
Si hay atributos que con frecuencia no tienen un valor y, por lo tanto, no se detectan automáticamente, aún se pueden recuperar especificando la ruta correcta a ellos. Por ejemplo, para obtener el atributo Especial del documento del Cliente:
SELECT [Customer.Address.Street], [Cliente.Especial] FROM MyTable
Una vez que se ha detectado una Lista, no se notifican valores adicionales. Pero se puede hacer referencia a los valores individuales de la lista especificando '.' y un numero Por ejemplo:
SELECT [MiLista.0], [MyList.1.Email], [MiLista.1.Edad] FROM MyTable
Esto recuperará el primer valor de la lista y los atributos Correo y Edad del segundo valor.
Inserción de Documentos y Listas
Las inserciones en Amazon DynamoDB requieren que se especifique el objeto completo durante la inserción. Inserta un documento o lista en la raíz. Pase el agregado JSON completo. Por ejemplo:
INSERT INTO MyTable (PrimaryKey, EmailAddresses, Address, MyList) VALUES ('uniquekey', '["user@email.com", "user2@email2.com"]', '{"Street":"123 Fake Street", "City":"Chapel Hill", "Zip":"27713"}', '[{"S":"somestr"},{"NS":[1,2]},{"N":4}]')
En este caso, EmailAddress se inserta como StringSet, Address se inserta como documento y MyList se inserta como lista.
Actualización de Documentos y Listas
Las actualizaciones se admiten utilizando la misma sintaxis que está disponible durante las selecciones. Los Documentos y las Listas se pueden especificar usando el '.' carácter para especificar la jerarquía. Por ejemplo:
UPDATE MyTable SET [EmailAddress.0]='user@email.com', [EmailAddress.1]='user2@email2.com', [Address.Street]='123 Fake Street', [Address.City]='Chapel Hill', [Address.Zip]='27713', [MyList.0]='somestr', [MyList.1]='[1,2]', [MyList.2]=4 WHERE PrimaryKey='uniquekey'
Tenga en cuenta que EmailAddress y MyList deben detectarse automáticamente para resolver cómo manejar EmailAddress de manera diferente a MyList. Si tiene dudas sobre si algo se detectará automáticamente o no, especificar el JSON completo para actualizar siempre funcionará.
Asignación de Tipos de Datos
Asignaciones de Tipos de Datos
El conector asigna tipos del origen de datos al tipo de datos correspondiente disponible en el esquema. Además, intentaremos escanear los datos disponibles que regresan en función de IgnoreTypes
propiedad de conexión. La siguiente tabla documenta estas asignaciones.
Amazon DynamoDB | Esquema |
---|---|
String | cadena, fecha, fecha y hora, hora |
Binary | cadena |
Number | bigint, int, float (dependiendo de los datos que se detecten) |
StringSet | cadena |
NumberSet | cadena |
BinarySet | cadena |
Map | cadena |
List | cadena |
Boolean | bool |
Null | cadena |
Tenga en cuenta que dependiendo de la configuración de IgnoreTypes
, es posible que algunos de estos tipos no se detecten de forma predeterminada. La fecha, la fecha y la hora, por ejemplo, se ignoran de forma predeterminada, ya que no se pueden filtrar del lado del servidor y se pueden insertar/actualizar en un formato diferente al de las entradas existentes si están habilitadas. Tenga cuidado al habilitarlos.
FlattenArrays
y FlattenObjects
también se puede usar para aplanar StringSets, NumberSets, BinarySets, Maps y Lists en columnas individuales.
Definiciones de Esquemas Personalizados
Además de Descubrimiento automático de esquemas el conector también le permite definir de forma estática el esquema para su tabla de Amazon DynamoDB. Consideremos un esquema para el conjunto de datos de restaurantes.
A continuación se muestra un elemento de ejemplo de la tabla:
{
"address":{
"building":"461",
"coord":[
-74.138492,
40.631136
],
"street":"Port Richmond Ave",
"zipcode":"10302"
},
"borough":"Staten Island",
"cuisine":"Other",
"grades":[
],
"name":"Indian Oven",
"restaurant_id":"50018994"
}
Definición de un Esquema Personalizado
Puede definir un esquema personalizado para extraer propiedades anidadas como sus propias columnas. Selecciona el Location
propiedad al directorio de archivos que contendrá el archivo de esquema.
El siguiente esquema usa la propiedad other:path para definir de dónde se deben recuperar los datos de una columna en particular. Usando este modelo, puede aplanar niveles arbitrarios de jerarquía.
El atributo 'other:tableapiname' especifica la tabla a analizar. Este atributo le brinda la flexibilidad de usar varios esquemas para la misma tabla.
En Ejemplo de esquema personalizado, encontrará el esquema completo que contiene el ejemplo anterior.
<api:info title="StaticRestaurants" other:catalog="" other:schema="AmazonDynamoDB" description="StaticRestaurants" other:tableapiname="StaticRestaurants" other:version="20">
<attr name="id" xs:type="decimal" key="true" columnsize="17" precision="38" scale="6" readonly="false" description="Dynamic Column." other:dynamodatatype="N" other:relativepath="restaurant_id" other:filterable="true" other:fullpath="restaurant_id" other:apiname="&quot;restaurant_id&quot;" />
<attr name="borough" xs:type="string" columnsize="2000" readonly="false" description="Dynamic Column." other:dynamodatatype="S" other:relativepath="borough" other:filterable="true" other:fullpath="borough" other:apiname="&quot;borough&quot;" />
<attr name="address_zipcode" xs:type="int" columnsize="4" precision="10" readonly="false" description="Dynamic Column." other:dynamodatatype="S" other:relativepath="zipcode" other:filterable="true" other:fullpath="address.zipcode" other:apiname="&quot;address&quot;.&quot;zipcode&quot;" />
<attr name="address_coord_0" xs:type="double" columnsize="8" precision="15" readonly="false" description="Dynamic Column." other:dynamodatatype="N" other:relativepath="coord" other:filterable="true" other:fullpath="address.coord[0]" other:apiname="&quot;address&quot;.&quot;coord&quot;[0]" />
<attr name="address_coord_1" xs:type="double" columnsize="8" precision="15" readonly="false" description="Dynamic Column." other:dynamodatatype="N" other:relativepath="coord[1]" other:filterable="true" other:fullpath="address.coord[1]" other:apiname="&quot;address&quot;.&quot;coord&quot;[1]" />
<attr name="address_building" xs:type="int" columnsize="4" precision="10" readonly="false" description="Dynamic Column." other:dynamodatatype="S" other:relativepath="building" other:filterable="true" other:fullpath="address.building" other:apiname="&quot;address&quot;.&quot;building&quot;" />
<attr name="address_street" xs:type="string" columnsize="2000" readonly="false" description="Dynamic Column." other:dynamodatatype="S" other:relativepath="street" other:filterable="true" other:fullpath="address.street" other:apiname="&quot;address&quot;.&quot;street&quot;" />
<attr name="name" xs:type="string" columnsize="2000" readonly="false" description="Dynamic Column." other:dynamodatatype="S" other:relativepath="name" other:filterable="true" other:fullpath="name" other:apiname="&quot;name&quot;" />
<attr name="cuisine" xs:type="string" columnsize="2000" readonly="false" description="Dynamic Column." other:dynamodatatype="S" other:relativepath="cuisine" other:filterable="true" other:fullpath="cuisine" other:apiname="&quot;cuisine&quot;" />
</api:info>
Ejemplo de Esquema Personalizado
Esta sección contiene un esquema completo. La sección de información habilita una vista relacional de una tabla de Amazon DynamoDB. Para obtener más detalles, consulte Definiciones de esquemas personalizados. La siguiente tabla permite los comandos SELECT, INSERT, UPDATE y DELETE implementados en las secciones GET, POST, MERGE y DELETE del siguiente esquema. Selecciona el Location
propiedad al directorio de archivos que contendrá el archivo de esquema.
Utilice el atributo 'other:tableapiname' para especificar el nombre de la tabla de Amazon DynamoDB que desea analizar. Puede usar el atributo 'otro: tableapiname' para definir múltiples esquemas para la misma tabla. Nota: Amazon DynamoDB distingue entre mayúsculas y minúsculas. El nombre de su tabla y las rutas especificadas deben coincidir con las mayúsculas y minúsculas de cómo aparecen sus campos en Amazon DynamoDB.
Las operaciones, como dynamodbadoProviderOperationCaller, son implementaciones internas y también se pueden copiar tal cual.
<api:script xmlns:api="http://apiscript.com/ns?v1" xmlns:xs="http://www.cdata.com/ns/rsbscript/2" xmlns:other="http://apiscript.com/ns?v1">
<api:info title="StaticRestaurants" other:catalog="" other:schema="AmazonDynamoDB" description="StaticRestaurants" other:tableapiname="StaticRestaurants" other:version="20">
<attr name="id" xs:type="decimal" key="true" columnsize="17" precision="38" scale="6" readonly="false" description="Dynamic Column." other:dynamodatatype="N" other:relativepath="restaurant_id" other:filterable="true" other:fullpath="restaurant_id" other:apiname="&quot;restaurant_id&quot;" />
<attr name="borough" xs:type="string" columnsize="2000" readonly="false" description="Dynamic Column." other:dynamodatatype="S" other:relativepath="borough" other:filterable="true" other:fullpath="borough" other:apiname="&quot;borough&quot;" />
<attr name="address_zipcode" xs:type="int" columnsize="4" precision="10" readonly="false" description="Dynamic Column." other:dynamodatatype="S" other:relativepath="zipcode" other:filterable="true" other:fullpath="address.zipcode" other:apiname="&quot;address&quot;.&quot;zipcode&quot;" />
<attr name="address_coord_0" xs:type="double" columnsize="8" precision="15" readonly="false" description="Dynamic Column." other:dynamodatatype="N" other:relativepath="coord" other:filterable="true" other:fullpath="address.coord[0]" other:apiname="&quot;address&quot;.&quot;coord&quot;[0]" />
<attr name="address_coord_1" xs:type="double" columnsize="8" precision="15" readonly="false" description="Dynamic Column." other:dynamodatatype="N" other:relativepath="coord[1]" other:filterable="true" other:fullpath="address.coord[1]" other:apiname="&quot;address&quot;.&quot;coord&quot;[1]" />
<attr name="address_building" xs:type="int" columnsize="4" precision="10" readonly="false" description="Dynamic Column." other:dynamodatatype="S" other:relativepath="building" other:filterable="true" other:fullpath="address.building" other:apiname="&quot;address&quot;.&quot;building&quot;" />
<attr name="address_street" xs:type="string" columnsize="2000" readonly="false" description="Dynamic Column." other:dynamodatatype="S" other:relativepath="street" other:filterable="true" other:fullpath="address.street" other:apiname="&quot;address&quot;.&quot;street&quot;" />
<attr name="name" xs:type="string" columnsize="2000" readonly="false" description="Dynamic Column." other:dynamodatatype="S" other:relativepath="name" other:filterable="true" other:fullpath="name" other:apiname="&quot;name&quot;" />
<attr name="cuisine" xs:type="string" columnsize="2000" readonly="false" description="Dynamic Column." other:dynamodatatype="S" other:relativepath="cuisine" other:filterable="true" other:fullpath="cuisine" other:apiname="&quot;cuisine&quot;" />
</api:info>
<api:script method="GET">
<api:call op="dynamodbadoProviderOperationCaller">
<api:push/>
</api:call>
</api:script>
<api:script method="POST">
<api:call op="dynamodbadoProviderOperationCaller">
<api:push/>
</api:call>
</api:script>
<api:script method="MERGE">
<api:call op="dynamodbadoProviderOperationCaller">
<api:push/>
</api:call>
</api:script>
<api:script method="DELETE">
<api:call op="dynamodbadoProviderOperationCaller">
<api:push/>
</api:call>
</api:script>
</api:script>
Características Avanzadas
Esta sección detalla una selección de funciones avanzadas del conector de Amazon DynamoDB.
Detección automática de índices
El AutoDetectIndex
La propiedad proporciona un acceso rápido a los elementos de una tabla al detectar un índice alternativo que se puede consultar en lugar de la tabla misma. Este índice secundario es una estructura de datos que contiene un subconjunto de atributos de una tabla y una clave alternativa. La ventaja de consultar un índice en lugar de la tabla principal es omitir un análisis completo de la tabla principal. Esto hace que la operación sea mucho más rápida.
Vistas definidas por el usuario
El conector le permite definir tablas virtuales, llamadas vistas definidas por el usuario, cuyo contenido se decide mediante una consultar preconfigurada. Estas vistas son útiles cuando no puede controlar directamente las consultas que se envían a los controladores. Consulte Vistas definidas por el usuario para obtener una descripción general de la creación y configuración de vistas personalizadas.
Configuración SSL
Usar Configuración SSL para ajustar cómo el conector maneja las negociaciones de certificados TLS/SSL. Puede elegir entre varios formatos de certificado; ver el SSLServerCert
propiedad en "Opciones de cadena de conexión" para obtener más información.
Apoderado
Para configurar el conector mediante Configuración de proxy de Agente Privado, Selecciona el Use Proxy Settings
casilla de verificación en la pantalla de configuración de la conexión.
Vistas Definidas por el Usuario
El conector Jitterbit para Amazon DynamoDB le permite definir una tabla virtual cuyo contenido se decide mediante una consultar preconfigurada. Estas se denominan Vistas definidas por el usuario, que son útiles en situaciones en las que no puede controlar directamente la consultar que se envía al controlador, por ejemplo, cuando se utiliza el controlador de Jitterbit. Las vistas definidas por el usuario se pueden utilizar para definir predicados que siempre se aplican. Si especifica predicados adicionales en la consultar a la vista, se combinan con la consultar ya definida como parte de la vista.
Hay dos formas de crear vistas definidas por el usuario:
- Cree un archivo de configuración con formato JSON que defina las vistas que desea.
- Declaraciones DDL.
Definición de Vistas Usando un Archivo de Configuración
Las vistas definidas por el usuario se definen en un archivo de configuración con formato JSON llamado UserDefinedViews.json
. El conector detecta automáticamente las vistas especificadas en este archivo.
También puede tener múltiples definiciones de vista y controlarlas usando UserDefinedViews
propiedad de conexión. Cuando utiliza esta propiedad, el conector solo ve las vistas especificadas.
Este archivo de configuración de vista definida por el usuario tiene el siguiente formato:
- Cada elemento raíz define el nombre de una vista.
- Cada elemento raíz contiene un elemento hijo, llamado
query
, que contiene la consultar SQL personalizada para la vista.
Por ejemplo:
{
"MyView": {
"query": "SELECT * FROM Account WHERE MyColumn = 'value'"
},
"MyView2": {
"query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)"
}
}
Utilizar el UserDefinedViews
propiedad de conexión para especificar la ubicación de su archivo de configuración JSON. Por ejemplo:
"UserDefinedViews", "C:\Users\yourusername\Desktop\tmp\UserDefinedViews.json"
Esquema para Vistas Definidas por el Usuario
Las vistas definidas por el usuario se exponen en UserViews
esquema por defecto. Esto se hace para evitar que el nombre de la vista entre en conflicto con una entidad real en el modelo de datos. Puede cambiar el nombre del esquema utilizado para UserViews configurando UserViewsSchemaName
propiedad.
Trabajar con Vistas Definidas por el Usuario
Por ejemplo, una instrucción SQL con una vista definida por el usuario llamada UserViews.RCustomers
solo enumera clientes en Raleigh:
SELECT * FROM Customers WHERE City = 'Raleigh';
Un ejemplo de una consultar al controlador:
SELECT * FROM UserViews.RCustomers WHERE Status = 'Active';
Dando como resultado la consultar efectiva a la fuente:
SELECT * FROM Customers WHERE City = 'Raleigh' AND Status = 'Active';
Ese es un ejemplo muy simple de una consultar a una vista definida por el usuario que es efectivamente una combinación de la consultar de vista y la definición de vista. Es posible componer estas consultas en patrones mucho más complejos. Todas las operaciones de SQL están permitidas en ambas consultas y se combinan cuando corresponde.
Configuración SSL
Personalización de la Configuración SSL
De forma predeterminada, el conector intenta negociar SSL/TLS comparando el certificado del servidor con el almacén de certificados de confianza del sistema.
Para especificar otro certificado, consulte SSLServerCert
propiedad de los formatos disponibles para hacerlo.
Modelo de Datos
El conector le permite acceder a los datos en Amazon DynamoDB mediante una interfaz estándar similar a una base de datos. Amazon DynamoDB es una base de datos en la nube NoSQL altamente escalable que es muy diferente de una base de datos normal. En esta sección, describimos cómo modelamos las tablas de Amazon DynamoDB sin esquema como Tablas y Procedimientos almacenados.
El conector puede detectar esquemas dinámicamente en el momento de la conexión. Consulte Descubrimiento automático de esquemas para obtener más información sobre la definición implícita de esquemas en el momento de la conexión. Este método es útil si la estructura de sus datos es volátil.
También puede conservar esquemas en definiciones de esquema estáticos. Los archivos de esquema del conector tienen un formato simple. Consulte Definiciones de esquemas personalizados para obtener más información sobre cómo definir y ampliar esquemas estáticos.
Mesas
La lista de tablas se recupera dinámicamente de su cuenta de Amazon DynamoDB. Puede utilizar el procedimiento almacenado* para crear una nueva tabla, o puede crear una tabla mediante la Consola de administración de Amazon Web Services.
Debido a que las tablas de DynamoDB se dividen en función de su clave, debe tener cuidado al seleccionar una clave adecuada según los requisitos de consultar de su tabla. Consulte la documentación de DynamoDB para obtener más información sobre el uso de prácticas recomendadas para modelar datos en tablas de DynamoDB. DynamoDB admite dos tipos de claves principales:
- Clave principal hash: esta es una clave de una sola columna.
- Clave principal hash y rango: esta es una clave de dos columnas que incluye una columna hash y una columna de rango.
El conector modelará todos los atributos clave en DynamoDB como columnas clave.
Columnas de la Tabla
Dado que las tablas de Amazon DynamoDB no tienen esquema, el conector ofrece los siguientes dos mecanismos para descubrir el esquema.
Esquemas Dinámicos
Las columnas de una tabla se determinan dinámicamente al escanear los datos en las primeras filas. Puede ajustar el número de filas que se utilizan modificando el RowScanDepth
propiedad. Además del nombre de la columna, el escaneo de filas también determina el tipo de datos. La siguiente tabla muestra cómo se modelan en el conector los diferentes tipos de datos compatibles con Amazon DynamoDB.
Tipo de Amazon DynamoDB | Tipo modelado | Codificación | Valor de muestra |
---|---|---|---|
Booleano | Booleano | No requerido | Verdadero |
Cadena | Cadena | No requerido | Estados Unidos |
gota | Cadena | No requerido | |
Número | Doble | No requerido | 24.0 |
matriz de cadenas | Cadena | Matriz JSON | ["EE. UU.", "Canadá", "Reino Unido"] |
Matriz de números | Cadena | Matriz JSON | [20, 200.5, 500] |
Matriz de manchas | Matriz JSON | Matriz JSON | ["ABCD", "EFGH"] |
Documento | Objeto JSON | Objeto JSON | {"Dirección":"Calle falsa 123", "Ciudad":"Chapel Hill", "Código postal":"27516"} |
Lista | Matriz JSON | Matriz JSON | [{"S":"micadena"}, {"NS":[1, 2]}, {"N":4}] |
Esquemas Estáticos
En lugar de usar esquemas descubiertos dinámicamente, puede definir sus propios esquemas. Esto le dará más control sobre las columnas proyectadas y también le permitirá usar otros tipos de datos como booleanos, fecha y hora, etc. Consulte CreateSchema Procedimiento almacenado* para crear su propio esquema. Simplemente puede especificar el Nombre de archivo (ruta completa) y el Nombre de tabla del nuevo archivo de esquema, que debe coincidir con el nombre de la tabla de Amazon DynamoDB, y editar la lista de columnas para usarla en su propia tabla.
Operaciones Sin Esquema
Si bien el esquema de la tabla es necesario para informar los metadatos, los datos pueden seleccionarse, insertarse, actualizarse o eliminarse de columnas que no existen en el esquema. Las columnas que aún no existen en el esquema de la tabla tendrán sus tipos de datos determinados dinámicamente en función de los datos que se especifican. Consulte Consultas de DynamoDB para más información.
Procedimientos Almacenados
Procedimientos almacenados* están disponibles para complementar los datos disponibles de la Base de datos NoSQL. Puede ser necesario actualizar los datos disponibles desde una vista usando un procedimiento almacenado* porque los datos no proporcionan actualizaciones bidireccionales directas, similares a tablas. En estas situaciones, la recuperación de los datos se realiza utilizando la vista o tabla adecuada, mientras que la actualización se realiza llamando a un procedimiento almacenado. Procedimientos almacenados* toman una lista de parámetros y devuelven un conjunto de datos que contiene la colección de tuplas que constituyen la respuesta.
Conector Jitterbit para Procedimientos Almacenados de Amazon DynamoDB
Nombre | Descripción |
---|---|
CreateSchema | Crea un archivo de esquema para la tabla o vista especificada. |
CreateTable | Crea una tabla en DynamoDB. |
CrearEsquema
Crea un archivo de esquema para la tabla o vista especificada.
Aporte
Nombre | Tipo | Obligatorio | Descripción |
---|---|---|---|
TableName | String | Cierto | El nombre de la tabla o vista. |
FileName | String | Cierto | La ruta completa del archivo y el nombre del esquema a generar. Ej: 'C:\Users\User\Desktop\SmartSheet\sheet.rsd' |
Columnas del Conjunto de Resultados
Nombre | Tipo | Descripción |
---|---|---|
Result | String | Devuelve éxito o fracaso. |
Crear Mesa
Crea una tabla en DynamoDB.
Aporte
Nombre | Tipo | Obligatorio | Descripción |
---|---|---|---|
TableName | String | Cierto | El nombre de la tabla a crear. Se permite un mínimo de 3 caracteres y un máximo de 255 caracteres. |
PartitionKeyName | String | Cierto | El nombre de la clave de partición para la tabla. |
PartitionKeyType | String | Cierto | El tipo de clave de partición para la tabla. Los valores permitidos son S, N, B. |
SortKeyName | String | Falso | El nombre de la clave de clasificación para la tabla. |
SortKeyType | String | Falso | El tipo de la clave de ordenación para la tabla. Los valores permitidos son S, N, B. |
BillingMode | String | Falso | Controla cómo se le cobra por el rendimiento de lectura y escritura y cómo administra la capacidad. Los valores permitidos son PROVISIONADO, PAY_PER_REQUEST. El valor predeterminado es PROVISIONADO. |
ReadCapacityUnits | String | Falso | El número máximo de lecturas fuertemente consistentes consumidas por segundo antes de que DynamoDB devuelva una ThrottlingException. El valor predeterminado es 5. |
WriteCapacityUnits | String | Falso | El número máximo de escrituras consumidas por segundo antes de que DynamoDB devuelva una ThrottlingException. El valor predeterminado es 5. |
Columnas del Conjunto de Resultados
Nombre | Tipo | Descripción |
---|---|---|
Success | String | Este valor muestra si la operación fue exitosa o no. |
Tablas del Sistema
Puede consultar las tablas del sistema que se describen en esta sección para acceder a la información del esquema, la información sobre la funcionalidad del origen de datos y las estadísticas de operación lote.
Tablas de Esquema
Las siguientes tablas devuelven metadatos de la base de datos para Amazon DynamoDB:
- sys_catalogs: enumera las bases de datos disponibles.
- sys_schemas: enumera los esquemas disponibles.
- sys_tablas: enumera las tablas y vistas disponibles.
- sys_tablecolumns: Describe las columnas de las tablas y vistas disponibles.
- procedimientos_sys: describe los procedimientos almacenados disponibles.
- parámetros_procedimiento_sys: Describe procedimiento almacenado* parámetros.
- sys_keycolumns: describe las claves principal y externa.
- índices_sys: Describe los índices disponibles.
Tablas de Fuentes de Datos
Las siguientes tablas devuelven información sobre cómo conectarse y consultar la fuente de datos:
- sys_connection_props: Devuelve información sobre las propiedades de conexión disponibles.
- sys_sqlinfo: describe las consultas SELECT que el conector puede descargar al origen de datos.
Tablas de Información de Consultas
La siguiente tabla devuelve estadísticas de consultar para consultas de modificación de datos, incluidas las operaciones lote:
- identidad_sys: devuelve información sobre operaciones lote o actualizaciones individuales.
Sys_catalogs
Enumera las bases de datos disponibles.
La siguiente consultar recupera todas las bases de datos determinadas por la cadena de conexión:
SELECT * FROM sys_catalogs
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos. |
Sys_schemas
Enumera los esquemas disponibles.
La siguiente consultar recupera todos los esquemas disponibles:
SELECT * FROM sys_schemas
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos. |
SchemaName | String | El nombre del esquema. |
Sys_tables
Enumera las tablas disponibles.
La siguiente consultar recupera las tablas y vistas disponibles:
SELECT * FROM sys_tables
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | La base de datos que contiene la tabla o vista. |
SchemaName | String | El esquema que contiene la tabla o vista. |
TableName | String | El nombre de la tabla o vista. |
TableType | String | El tipo de tabla (tabla o vista). |
Description | String | Una descripción de la tabla o vista. |
IsUpdateable | Boolean | Si la tabla se puede actualizar. |
Sys_tablecolumns
Describe las columnas de las tablas y vistas disponibles.
La siguiente consultar devuelve las columnas y los tipos de datos de la tabla Cuenta:
SELECT ColumnName, DataTypeName FROM sys_tablecolumns WHERE TableName='Account'
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos que contiene la tabla o vista. |
SchemaName | String | El esquema que contiene la tabla o vista. |
TableName | String | El nombre de la tabla o vista que contiene la columna. |
ColumnName | String | El nombre de la columna. |
DataTypeName | String | El nombre del tipo de datos. |
DataType | Int32 | Un número entero que indica el tipo de datos. Este valor se determina en tiempo de ejecución en función del ambiente. |
Length | Int32 | El tamaño de almacenamiento de la columna. |
DisplaySize | Int32 | El ancho máximo normal de la columna designada en caracteres. |
NumericPrecision | Int32 | El número máximo de dígitos en datos numéricos. La longitud de la columna en caracteres para datos de carácter y fecha y hora. |
NumericScale | Int32 | La escala de columna o número de dígitos a la derecha del punto decimal. |
IsNullable | Boolean | Si la columna puede contener nulo. |
Description | String | Una breve descripción de la columna. |
Ordinal | Int32 | El número de secuencia de la columna. |
IsAutoIncrement | String | Si el valor de la columna se asigna en incrementos fijos. |
IsGeneratedColumn | String | Si se genera la columna. |
IsHidden | Boolean | Si la columna está oculta. |
IsArray | Boolean | Si la columna es una matriz. |
Sys_procedimientos
Enumera los procedimientos almacenados disponibles.
La siguiente consultar recupera los procedimientos almacenados disponibles:
SELECT * FROM sys_procedures
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | La base de datos que contiene el procedimiento almacenado. |
SchemaName | String | El esquema que contiene el procedimiento almacenado. |
ProcedureName | String | El nombre del procedimiento almacenado. |
Description | String | Una descripción del procedimiento almacenado. |
ProcedureType | String | El tipo de procedimiento, como PROCEDIMIENTO o FUNCIÓN. |
Sys_procedureparameters
Describe procedimiento almacenado* parámetros.
La siguiente consultar devuelve información sobre todos los parámetros de entrada para el procedimiento almacenado CreateSchema:
SELECT * FROM sys_procedureparameters WHERE ProcedureName='CreateSchema' AND Direction=1 OR Direction=2
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos que contiene el procedimiento almacenado. |
SchemaName | String | El nombre del esquema que contiene el procedimiento almacenado. |
ProcedureName | String | El nombre del procedimiento almacenado* que contiene el parámetro. |
ColumnName | String | El nombre del procedimiento almacenado* parámetro. |
Direction | Int32 | Un número entero correspondiente al tipo de parámetro: entrada (1), entrada/salida (2) o salida (4). Los parámetros de tipo de entrada/salida pueden ser tanto parámetros de entrada como de salida. |
DataTypeName | String | El nombre del tipo de datos. |
DataType | Int32 | Un número entero que indica el tipo de datos. Este valor se determina en tiempo de ejecución en función del ambiente. |
Length | Int32 | El número de caracteres permitidos para los datos de caracteres. El número de dígitos permitidos para datos numéricos. |
NumericPrecision | Int32 | La máxima precisión para datos numéricos. La longitud de la columna en caracteres para datos de carácter y fecha y hora. |
NumericScale | Int32 | El número de dígitos a la derecha del punto decimal en datos numéricos. |
IsNullable | Boolean | Si el parámetro puede contener nulo. |
IsRequired | Boolean | Si el parámetro es necesario para la ejecución del procedimiento. |
IsArray | Boolean | Si el parámetro es una matriz. |
Description | String | La descripción del parámetro. |
Ordinal | Int32 | El índice del parámetro. |
Sys_keycolumns
Describe las claves primarias y foráneas. La siguiente consultar recupera la clave principal de la tabla Cuenta:
SELECT * FROM sys_keycolumns WHERE IsKey='True' AND TableName='Account'
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos que contiene la clave. |
SchemaName | String | El nombre del esquema que contiene la clave. |
TableName | String | El nombre de la tabla que contiene la clave. |
ColumnName | String | El nombre de la columna clave. |
IsKey | Boolean | Si la columna es una clave principal en la tabla a la que se hace referencia en el campo TableName. |
IsForeignKey | Boolean | Si la columna es una clave externa a la que se hace referencia en el campo TableName. |
PrimaryKeyName | String | El nombre de la clave principal. |
ForeignKeyName | String | El nombre de la clave foránea. |
ReferencedCatalogName | String | La base de datos que contiene la clave principal. |
ReferencedSchemaName | String | El esquema que contiene la clave principal. |
ReferencedTableName | String | La tabla que contiene la clave principal. |
ReferencedColumnName | String | El nombre de la columna de la clave principal. |
Sys_foreignkeys
Describe las claves foráneas. La siguiente consultar recupera todas las claves foráneas que hacen referencia a otras tablas:
SELECT * FROM sys_foreignkeys WHERE ForeignKeyType = 'FOREIGNKEY_TYPE_IMPORT'
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos que contiene la clave. |
SchemaName | String | El nombre del esquema que contiene la clave. |
TableName | String | El nombre de la tabla que contiene la clave. |
ColumnName | String | El nombre de la columna clave. |
PrimaryKeyName | String | El nombre de la clave principal. |
ForeignKeyName | String | El nombre de la clave foránea. |
ReferencedCatalogName | String | La base de datos que contiene la clave principal. |
ReferencedSchemaName | String | El esquema que contiene la clave principal. |
ReferencedTableName | String | La tabla que contiene la clave principal. |
ReferencedColumnName | String | El nombre de la columna de la clave principal. |
ForeignKeyType | String | Designa si la clave externa es una clave de importación (apunta a otras tablas) o de exportación (hace referencia desde otras tablas). |
Sys_indexes
Describe los índices disponibles. Al filtrar en los índices, puede escribir consultas más selectivas con tiempos de respuesta de consultar más rápidos.
La siguiente consultar recupera todos los índices que no son claves principales:
SELECT * FROM sys_indexes WHERE IsPrimary='false'
Columnas
Nombre | Tipo | Descripción |
---|---|---|
CatalogName | String | El nombre de la base de datos que contiene el índice. |
SchemaName | String | El nombre del esquema que contiene el índice. |
TableName | String | El nombre de la tabla que contiene el índice. |
IndexName | String | El nombre del índice. |
ColumnName | String | El nombre de la columna asociada con el índice. |
IsUnique | Boolean | True si el índice es único. Falso en caso contrario. |
IsPrimary | Boolean | True si el índice es una clave principal. Falso en caso contrario. |
Type | Int16 | Un valor entero correspondiente al tipo de índice: estadística (0), agrupado (1), hash (2) u otro (3). |
SortOrder | String | El orden de clasificación: A para ascender o D para descender. |
OrdinalPosition | Int16 | El número de secuencia de la columna en el índice. |
Sys_connection_props
Devuelve información sobre las propiedades de conexión disponibles y las establecidas en la cadena de conexión.
Al consultar esta tabla, se debe usar la cadena de conexión de configuración:
jdbc:cdata:amazondynamodb:config:
Esta cadena de conexión le permite consultar esta tabla sin una conexión válida.
La siguiente consultar recupera todas las propiedades de conexión que se han establecido en la cadena de conexión o se han establecido a través de un valor predeterminado:
SELECT * FROM sys_connection_props WHERE Value <> ''
Columnas
Nombre | Tipo | Descripción |
---|---|---|
Name | String | El nombre de la propiedad de conexión. |
ShortDescription | String | Una breve descripción. |
Type | String | El tipo de datos de la propiedad de conexión. |
Default | String | El valor predeterminado si no se establece uno explícitamente. |
Values | String | Una lista separada por comas de valores posibles. Se lanza un error de validación si se especifica otro valor. |
Value | String | El valor que establezca o un valor predeterminado preconfigurado. |
Required | Boolean | Si la propiedad es necesaria para conectarse. |
Category | String | La categoría de la propiedad de conexión. |
IsSessionProperty | String | Si la propiedad es una propiedad de sesión, utilizada para guardar información sobre la conexión actual. |
Sensitivity | String | El nivel de sensibilidad de la propiedad. Esto informa si la propiedad está ofuscada en los formularios de registro y autenticación. |
PropertyName | String | Una forma truncada en mayúsculas y minúsculas del nombre de la propiedad de conexión. |
Ordinal | Int32 | El índice del parámetro. |
CatOrdinal | Int32 | El índice de la categoría de parámetro. |
Hierarchy | String | Muestra las propiedades dependientes asociadas que deben configurarse junto con esta. |
Visible | Boolean | Informa si la propiedad está visible en la interfaz de usuario de la conexión. |
ETC | String | Diversa información miscelánea sobre la propiedad. |
Sys_sqlinfo
Describe el procesamiento de consultar SELECT que el conector puede descargar al origen de datos.
Procesamiento Colaborativo de Consultas
Al trabajar con fuentes de datos que no admiten SQL-92, puede consultar la vista sys_sqlinfo para determinar las capacidades de consultar de las APIs subyacentes, expresadas en sintaxis SQL. El conector descarga la mayor cantidad posible del procesamiento de sentencias SELECT al servidor y luego procesa el resto de la consultar en la memoria.
Descubrimiento de las Capacidades SELECT de la Fuente de Datos
A continuación se muestra un conjunto de datos de ejemplo de las capacidades de SQL. El siguiente conjunto de resultados indica la funcionalidad SELECT que el conector puede descargar en el origen de datos o en el lado del cliente del proceso. Su fuente de datos puede admitir sintaxis SQL adicional. Algunos aspectos de la funcionalidad SELECT se devuelven en una lista separada por comas si es compatible; de lo contrario, la columna contiene NO.
Nombre | Descripción | Valores posibles |
---|---|---|
AGGREGATE_FUNCTIONS | Funciones de agregación admitidas. | AVG , COUNT , MAX , MIN , SUM , DISTINCT |
COUNT | Si se admite la función COUNT. | YES , NO |
IDENTIFIER_QUOTE_OPEN_CHAR | El carácter de apertura utilizado para escapar de un identificador. | [ |
IDENTIFIER_QUOTE_CLOSE_CHAR | El carácter de cierre utilizado para escapar de un identificador. | ] |
SUPPORTED_OPERATORS | Una lista de operadores de SQL admitidos. | = , > , < , >= , <= , <> , != , LIKE , NOT LIKE , IN , NOT IN , IS NULL , IS NOT NULL , AND , OR |
GROUP_BY | Si se admite GROUP BY y, de ser así, el grado de compatibilidad. | NO , NO_RELATION , EQUALS_SELECT , SQL_GB_COLLATE |
STRING_FUNCTIONS | Funciones de cadena admitidas. | LENGTH , CHAR , LOCATE , REPLACE , SUBSTRING , RTRIM , LTRIM , RIGHT , LEFT , UCASE , SPACE , SOUNDEX , LCASE , CONCAT , ASCII , REPEAT , OCTET , BIT , POSITION , INSERT , TRIM , UPPER , REGEXP , LOWER , DIFFERENCE , CHARACTER , SUBSTR , STR , REVERSE , PLAN , UUIDTOSTR , TRANSLATE , TRAILING , TO , STUFF , STRTOUUID , STRING , SPLIT , SORTKEY , SIMILAR , REPLICATE , PATINDEX , LPAD , LEN , LEADING , KEY , INSTR , INSERTSTR , HTML , GRAPHICAL , CONVERT , COLLATION , CHARINDEX , BYTE |
NUMERIC_FUNCTIONS | Funciones numéricas compatibles. | ABS , ACOS , ASIN , ATAN , ATAN2 , CEILING , COS , COT , EXP , FLOOR , LOG , MOD , SIGN , SIN , SQRT , TAN , PI , RAND , DEGREES , LOG10 , POWER , RADIANS , ROUND , TRUNCATE |
TIMEDATE_FUNCTIONS | Funciones de fecha/hora admitidas. | NOW , CURDATE , DAYOFMONTH , DAYOFWEEK , DAYOFYEAR , MONTH , QUARTER , WEEK , YEAR , CURTIME , HOUR , MINUTE , SECOND , TIMESTAMPADD , TIMESTAMPDIFF , DAYNAME , MONTHNAME , CURRENT_DATE , CURRENT_TIME , CURRENT_TIMESTAMP , EXTRACT |
REPLICATION_SKIP_TABLES | Indica tablas omitidas durante la replicación. | |
REPLICATION_TIMECHECK_COLUMNS | Una matriz de cadenas que contiene una lista de columnas que se usarán para verificar (en el orden dado) para usar como una columna modificada durante la replicación. | |
IDENTIFIER_PATTERN | Valor de cadena que indica qué cadena es válida para un identificador. | |
SUPPORT_TRANSACTION | Indica si el proveedor admite transacciones como compromiso y reversión. | YES , NO |
DIALECT | Indica el dialecto SQL a usar. | |
KEY_PROPERTIES | Indica las propiedades que identifican la base de datos uniforme. | |
SUPPORTS_MULTIPLE_SCHEMAS | Indica si pueden existir varios esquemas para el proveedor. | YES , NO |
SUPPORTS_MULTIPLE_CATALOGS | Indica si pueden existir varios catálogos para el proveedor. | YES , NO |
DATASYNCVERSION | La versión de sincronización de datos necesaria para acceder a este controlador. | Standard , Starter , Professional , Enterprise |
DATASYNCCATEGORY | La categoría Sincronización de datos de este controlador. | Source , Destination , Cloud Destination |
SUPPORTSENHANCEDSQL | Si se admite la funcionalidad de SQL mejorada más allá de lo que ofrece la API. | TRUE , FALSE |
SUPPORTS_BATCH_OPERATIONS | Si se admiten las operaciones lote. | YES , NO |
SQL_CAP | Todas las funciones de SQL admitidas para este controlador. | SELECT , INSERT , DELETE , UPDATE , TRANSACTIONS , ORDERBY , OAUTH , ASSIGNEDID , LIMIT , LIKE , BULKINSERT , COUNT , BULKDELETE , BULKUPDATE , GROUPBY , HAVING , AGGS , OFFSET , REPLICATE , COUNTDISTINCT , JOINS , DROP , CREATE , DISTINCT , INNERJOINS , SUBQUERIES , ALTER , MULTIPLESCHEMAS , GROUPBYNORELATION , OUTERJOINS , UNIONALL , UNION , UPSERT , GETDELETED , CROSSJOINS , GROUPBYCOLLATE , MULTIPLECATS , FULLOUTERJOIN , MERGE , JSONEXTRACT , BULKUPSERT , SUM , SUBQUERIESFULL , MIN , MAX , JOINSFULL , XMLEXTRACT , AVG , MULTISTATEMENTS , FOREIGNKEYS , CASE , LEFTJOINS , COMMAJOINS , WITH , LITERALS , RENAME , NESTEDTABLES , EXECUTE , BATCH , BASIC , INDEX |
PREFERRED_CACHE_OPTIONS | Un valor de cadena especifica las cacheOptions preferidas. | |
ENABLE_EF_ADVANCED_QUERY | Indica si el controlador admite directamente consultas avanzadas provenientes de Entity Framework. De lo contrario, las consultas se manejarán del lado del cliente. | YES , NO |
PSEUDO_COLUMNS | Una matriz de cadenas que indica las pseudocolumnas disponibles. | |
MERGE_ALWAYS | Si el valor es verdadero, el modo de combinación se ejecuta a la fuerza en la sincronización de datos. | TRUE , FALSE |
REPLICATION_MIN_DATE_QUERY | Una consultar de selección para devolver la fecha y hora de inicio de la réplica. | |
REPLICATION_MIN_FUNCTION | Permite que un proveedor especifique el nombre de la fórmula que se usará para ejecutar un min del lado del servidor. | |
REPLICATION_START_DATE | Permite que un proveedor especifique una fecha de inicio de réplica. | |
REPLICATION_MAX_DATE_QUERY | Una consultar de selección para devolver la fecha y hora de finalización de la réplica. | |
REPLICATION_MAX_FUNCTION | Permite que un proveedor especifique el nombre de la fórmula que se usará para ejecutar un máx. del lado del servidor. | |
IGNORE_INTERVALS_ON_INITIAL_REPLICATE | Una lista de tablas que omitirán dividir la réplica en fragmentos en la réplica inicial. | |
CHECKCACHE_USE_PARENTID | Indica si la instrucción CheckCache debe realizarse en la columna de clave principal. | TRUE , FALSE |
CREATE_SCHEMA_PROCEDURES | Indica procedimientos almacenados* que se puede utilizar para generar archivos de esquema. |
La siguiente consultar recupera los operadores que se pueden usar en la cláusula WHERE:
SELECT * FROM sys_sqlinfo WHERE Name='SUPPORTED_OPERATORS'
Tenga en cuenta que las tablas individuales pueden tener diferentes limitaciones o requisitos en la cláusula WHERE; consulte la Base de datos NoSQL para obtener más información.
Columnas
Nombre | Tipo | Descripción |
---|---|---|
NAME | String | Un componente de la sintaxis SQL o una capacidad que se puede procesar en el servidor. |
VALUE | String | Detalles sobre el SQL o la sintaxis de SQL admitidos. |
Sys_identidad
Devuelve información sobre los intentos de modificación.
La siguiente consultar recupera los Id. de las filas modificadas en una operación lote:
SELECT * FROM sys_identity
Columnas
Nombre | Tipo | Descripción |
---|---|---|
Id | String | El ID generado por la base de datos devuelto de una operación de modificación de datos. |
Batch | String | Un identificador para el lote. 1 para una sola operación. |
Operation | String | El resultado de la operación en el lote: INSERTADO, ACTUALIZADO o ELIMINADO. |
Message | String | ÉXITO o un mensaje de error si falla la actualización en el lote. |
Propiedades de Configuraciones Avanzadas
Las propiedades de configuraciones avanzadas son las diversas opciones que se pueden utilizar para establecer una conexión. Esta sección proporciona una lista completa de las opciones que puede configurar. Haga clic en los enlaces para obtener más detalles.
Propiedad | Descripción |
---|---|
AuthScheme | El esquema utilizado para la autenticación. Las entradas aceptadas son: Auto, AwsRootKeys, AwsIAMRoles, AwsEC2Roles, AwsMFA, ADFS, Okta, PingFederate, AwsCredentialsFile, AwsCognitoBasic, AwsCognitoSrp. |
Domain | Su nombre de dominio de AWS. Opcionalmente, puede optar por asociar su nombre de dominio con AWS. |
AWSAccessKey | Su clave de acceso a la cuenta de AWS. Se puede acceder a este valor desde su página de credenciales de seguridad de AWS. |
AWSSecretKey | La clave secreta de su cuenta de AWS. Se puede acceder a este valor desde su página de credenciales de seguridad de AWS. |
AWSRoleARN | El nombre de recurso de Amazon del rol que se usará al autenticarse. |
AWSRegion | La región de alojamiento de sus Amazon Web Services. |
AWSCredentialsFile | La ruta al archivo de credenciales de AWS que se utilizará para la autenticación. |
AWSCredentialsFileProfile | El nombre del perfil que se utilizará del AWSCredentialsFile proporcionado. |
AWSSessionToken | Su token de sesión de AWS. |
AWSExternalId | Un identificador único que puede ser necesario cuando asume un rol en otra cuenta. |
MFASerialNumber | El número de serie del dispositivo MFA, si se está utilizando uno. |
MFAToken | El token temporal disponible desde su dispositivo MFA. |
TemporaryTokenDuration | La cantidad de tiempo (en segundos) que durará un token temporal. |
AWSCognitoRegion | La región de alojamiento de AWS Cognito. |
AWSUserPoolId | El ID del grupo de usuarios. |
AWSUserPoolClientAppId | El ID de la aplicación del cliente del grupo de usuarios. |
AWSUserPoolClientAppSecret | Opcional. El secreto de la aplicación del cliente del grupo de usuarios. |
AWSIdentityPoolId | El ID del grupo de identidades. |
Propiedad | Descripción |
---|---|
User | El usuario IDP utilizado para autenticar el IDP a través de SSO. |
Password | La contraseña utilizada para autenticar al usuario IDP a través de SSO. |
SSOLoginURL | La URL de inicio de sesión del proveedor de identidad. |
SSOProperties | Se requieren propiedades adicionales para conectarse al proveedor de identidad en una lista separada por punto y coma. |
SSOExchangeUrl | La URL utilizada para consumir la respuesta SAML e intercambiarla con credenciales específicas de Amazon DynamoDB. |
Propiedad | Descripción |
---|---|
SSLServerCert | El certificado que se aceptará del servidor al conectarse mediante TLS/SSL. |
Propiedad | Descripción |
---|---|
Location | Una ruta al directorio que contiene los archivos de esquema que definen tablas, vistas y procedimientos almacenados. |
BrowsableSchemas | Esta propiedad restringe los esquemas informados a un subconjunto de los esquemas disponibles. Por ejemplo, BrowsableSchemas=SchemaA, SchemaB, SchemaC. |
Tables | Esta propiedad restringe las tablas notificadas a un subconjunto de las tablas disponibles. Por ejemplo, Tablas=TablaA, TablaB, TablaC. |
Views | Restringe las vistas informadas a un subconjunto de las tablas disponibles. Por ejemplo, Vistas=VistaA, VistaB, VistaC. |
Propiedad | Descripción |
---|---|
AutoDetectIndex | Un valor booleano que indica si los índices secundarios deben detectarse automáticamente en función de la consultar utilizada. |
FlattenArrays | De forma predeterminada, las matrices anidadas se devuelven como cadenas de JSON. La propiedad FlattenArrays se puede usar para aplanar los elementos de matrices anidadas en columnas propias. Establezca FlattenArrays en la cantidad de elementos que desea devolver de las matrices anidadas. |
FlattenObjects | Establezca FlattenObjects en true para aplanar las propiedades de los objetos en sus propias columnas. De lo contrario, los objetos anidados en matrices se devuelven como cadenas de JSON. |
FlexibleSchema | Establezca FlexibleSchema en verdadero para buscar metadatos adicionales en el conjunto de resultados de la consultar. De lo contrario, los metadatos seguirán siendo los mismos. |
GenerateSchemaFiles | Indica la preferencia del usuario en cuanto a cuándo deben generarse y guardarse los esquemas. |
IgnoreTypes | Elimina la compatibilidad con los tipos especificados. Por ejemplo, Tiempo. En su lugar, estos tipos se informarán como cadenas. |
MaximumRequestRetries | El número máximo de veces para reintentar una solicitud. |
MaxRows | Limita el número de filas devueltas cuando no se usa agregación o agrupación en la consultar. Esto ayuda a evitar problemas de rendimiento en el momento del diseño. |
Other | Estas propiedades ocultas se usan solo en casos de uso específicos. |
Pagesize | El número máximo de resultados que se devolverán por página desde Amazon DynamoDB. |
PseudoColumns | Esta propiedad indica si incluir o no pseudocolumnas como columnas en la tabla. |
RetryWaitTime | El número mínimo de milisegundos que el proveedor esperará para volver a intentar una solicitud. |
RowScanDepth | El número máximo de filas para escanear para buscar las columnas disponibles en una tabla. |
SeparatorCharacter | El carácter o caracteres utilizados para denotar jerarquía. |
ThreadCount | La cantidad de subprocesos que se usarán al seleccionar datos a través de un escaneo paralelo. Establecer ThreadCount en 1 deshabilitará los escaneos paralelos. |
Timeout | El valor en segundos hasta que se lanza el error de tiempo de espera, cancelando la operación. |
TypeDetectionScheme | Determina cómo determinar el tipo de datos de las columnas. |
UseBatchWriteItemOperation | Cuando está habilitado, el proveedor utilizará la operación BatchWriteItem para manejar actualizaciones e inserciones. De forma predeterminada, el proveedor utiliza la operación ExecuteStatement/BatchExecuteStatement. Debe habilitar BatchWriteItem solo cuando inserte o actualice datos binarios o de conjuntos binarios. ExecuteStatement/BatchExecuteStatement no admite la manipulación de campos binarios. |
UseConsistentReads | Si se deben usar siempre lecturas consistentes o no al consultar DynamoDb. |
UseSimpleNames | Booleano que determina si se deben usar nombres simples para tablas y columnas. |
Autenticación de AWS
Esta sección proporciona una lista completa de las propiedades de autenticación de AWS que puede configurar.
Propiedad | Descripción |
---|---|
AuthScheme | El esquema utilizado para la autenticación. Las entradas aceptadas son: Auto, AwsRootKeys, AwsIAMRoles, AwsEC2Roles, AwsMFA, ADFS, Okta, PingFederate, AwsCredentialsFile, AwsCognitoBasic, AwsCognitoSrp. |
Domain | Su nombre de dominio de AWS. Opcionalmente, puede optar por asociar su nombre de dominio con AWS. |
AWSAccessKey | Su clave de acceso a la cuenta de AWS. Se puede acceder a este valor desde su página de credenciales de seguridad de AWS. |
AWSSecretKey | La clave secreta de su cuenta de AWS. Se puede acceder a este valor desde su página de credenciales de seguridad de AWS. |
AWSRoleARN | El nombre de recurso de Amazon del rol que se usará al autenticarse. |
AWSRegion | La región de alojamiento de sus Amazon Web Services. |
AWSCredentialsFile | La ruta al archivo de credenciales de AWS que se utilizará para la autenticación. |
AWSCredentialsFileProfile | El nombre del perfil que se utilizará del AWSCredentialsFile proporcionado. |
AWSSessionToken | Su token de sesión de AWS. |
AWSExternalId | Un identificador único que puede ser necesario cuando asume un rol en otra cuenta. |
MFASerialNumber | El número de serie del dispositivo MFA, si se está utilizando uno. |
MFAToken | El token temporal disponible desde su dispositivo MFA. |
TemporaryTokenDuration | La cantidad de tiempo (en segundos) que durará un token temporal. |
AWSCognitoRegion | La región de alojamiento de AWS Cognito. |
AWSUserPoolId | El ID del grupo de usuarios. |
AWSUserPoolClientAppId | El ID de la aplicación del cliente del grupo de usuarios. |
AWSUserPoolClientAppSecret | Opcional. El secreto de la aplicación del cliente del grupo de usuarios. |
AWSIdentityPoolId | El ID del grupo de identidades. |
AuthScheme
El esquema utilizado para la autenticación. Las entradas aceptadas son: Auto, AwsRootKeys, AwsIAMRoles, AwsEC2Roles, AwsMFA, ADFS, Okta, PingFederate, AwsCredentialsFile, AwsCognitoBasic, AwsCognitoSrp.
Valores Posibles
Auto
, ADFS
, AwsRootKeys
, AwsIAMRoles
, AwsEC2Roles
, AwsMFA
, AwsCredentialsFile
, Okta
, TemporaryCredentials
, PingFederate
, AwsCognitoBasic
, AwsCognitoSrp
Tipo de Datos
string
Valor por Defecto
"Auto"
Observaciones
Utilice las siguientes opciones para seleccionar su esquema de autenticación:
- Automático: configure esto para que el conector intente resolver automáticamente el esquema de autenticación adecuado para usar en función de las otras propiedades de conexión especificadas.
- TemporalCredentials: configure esto para aprovechar las credenciales de seguridad temporales junto con un token de sesión para conectarse.
- AwsRootKeys: configure esto para usar la clave de acceso y el secreto del usuario raíz. Útil para pruebas rápidas, pero se recomienda que los casos de uso de producción usen algo con permisos limitados.
- AwsIAMRoles: Configure para usar roles de IAM para la conexión.
- AwsEC2Roles: configure esto para usar automáticamente los roles de IAM asignados a la máquina EC2 en la que se está ejecutando Jitterbit Connector para Amazon DynamoDB.
- AwsMFA: configurado para usar la autenticación de múltiples factores.
- Okta: configurado para usar una conexión de inicio de sesión único con OKTA como proveedor de identidad.
- ADFS: configure para usar una conexión de inicio de sesión único con ADFS como proveedor de identidad.
- PingFederate: configurado para usar una conexión de inicio de sesión único con PingFederate como proveedor de identidad.
- AwsCredentialsFile: configurado para usar un archivo de credenciales para la autenticación.
- AwsCognitoSrp: configurado para usar la autenticación basada en Cognito. Se recomienda esto sobre AwsCognitoBasic porque esta opción NO envía la contraseña al servidor para la autenticación, sino que utiliza el protocolo SRP.
- AwsCognitoBasic: configurado para usar la autenticación basada en Cognito.
Dominio
Su nombre de dominio de AWS. Opcionalmente, puede optar por asociar su nombre de dominio con AWS.
Tipo de Datos
string
Valor por Defecto
"amazonaws.com"
Observaciones
Si no tiene un nombre de dominio único de AWS, deje este valor especificado como amazonaws.com.
Clave de Acceso de AWS
Su clave de acceso a la cuenta de AWS. Se puede acceder a este valor desde su página de credenciales de seguridad de AWS.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Su clave de acceso a la cuenta de AWS. Se puede acceder a este valor desde su página de credenciales de seguridad de AWS:
- Inicie sesión en la consola de administración de AWS con las credenciales de su cuenta raíz.
- Seleccione su nombre o número de cuenta y seleccione Mis credenciales de seguridad en el menú que se muestra.
- Haga clic en Continuar con Credenciales de seguridad y expanda la sección Claves de acceso para administrar o crear claves de acceso a la cuenta raíz.
AWSSecretKey
La clave secreta de su cuenta de AWS. Se puede acceder a este valor desde su página de credenciales de seguridad de AWS.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
La clave secreta de su cuenta de AWS. Se puede acceder a este valor desde su página de credenciales de seguridad de AWS:
- Inicie sesión en la consola de administración de AWS con las credenciales de su cuenta raíz.
- Seleccione su nombre o número de cuenta y seleccione Mis credenciales de seguridad en el menú que se muestra.
- Haga clic en Continuar con Credenciales de seguridad y expanda la sección Claves de acceso para administrar o crear claves de acceso a la cuenta raíz.
AWSRoleARN
El nombre de recurso de Amazon del rol que se usará al autenticarse.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Cuando se autentica fuera de AWS, es común usar un rol para la autenticación en lugar de las credenciales de su cuenta de AWS directa. Entrando al AWSRoleARN
hará que Jitterbit Connector para Amazon DynamoDB realice una autenticación basada en rol en lugar de usar AWSAccessKey y AWSSecretKey directamente. La AWSAccessKey y AWSSecretKey aún debe especificarse para realizar esta autenticación. No puede utilizar las credenciales de un usuario raíz de AWS al configurar RoleARN. La AWSAccessKey y AWSSecretKey deben ser los de un usuario de IAM.
Región de AWS
La región de alojamiento de sus Amazon Web Services.
Valores Posibles
OHIO
, NORTHERNVIRGINIA
, NORTHERNCALIFORNIA
, OREGON
, CAPETOWN
, HONGKONG
, MUMBAI
, OSAKA
, SEOUL
, SINGAPORE
, SYDNEY
, TOKYO
, CENTRAL
, BEIJING
, NINGXIA
, FRANKFURT
, IRELAND
, LONDON
, MILAN
, PARIS
, STOCKHOLM
, BAHRAIN
, SAOPAULO
, GOVCLOUDEAST
, GOVCLOUDWEST
Tipo de Datos
string
Valor por Defecto
"NORTHERNVIRGINIA"
Observaciones
La región de alojamiento de sus Amazon Web Services. Los valores disponibles son OHIO, NORTHERNVIRGINIA, NORTHERNCALIFORNIA, OREGON, CAPETOWN, HONGKONG, MUMBAI, OSAKA, SEÚL, SINGAPUR, SYDNEY, TOKYO, CENTRAL, BEIJING, NINGXIA, FRANKFURT, IRLANDA, LONDRES, MILÁN, PARÍS, ESTOCOLMO, BAHREIN, SAOPAULO, GOVCLOUDEAST y GOVCLOUDWEST.
AWSCredentialsFile
La ruta al archivo de credenciales de AWS que se utilizará para la autenticación.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
La ruta al archivo de credenciales de AWS que se utilizará para la autenticación. Ver https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html
para más información.
AWSCredentialsFileProfile
El nombre del perfil que se utilizará del AWSCredentialsFile proporcionado.
Tipo de Datos
string
Valor por Defecto
"default"
Observaciones
El nombre del perfil que se utilizará del AWSCredentialsFile proporcionado. Ver https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html
para más información.
Token de Sesión de AWS
Su token de sesión de AWS.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Su token de sesión de AWS. Este valor se puede recuperar de diferentes maneras. Vea este enlace para más información.
AWSExternalId
Un identificador único que puede ser necesario cuando asume un rol en otra cuenta.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Un identificador único que puede ser necesario cuando asume un rol en otra cuenta.
MFASerialNumber
El número de serie del dispositivo MFA, si se está utilizando uno.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Puede encontrar el dispositivo para un usuario de IAM yendo a la Management Console de AWS y viendo las credenciales de seguridad del usuario. Para dispositivos virtuales, en realidad es un nombre de recurso de Amazon (como arn:aws:iam:123456789012:mfa/user).
Token MFA
El token temporal disponible desde su dispositivo MFA.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Si se requiere MFA, este valor se utilizará junto con el MFASerialNumber para recuperar credenciales temporales para iniciar sesión. Las credenciales temporales disponibles de AWS solo durarán hasta 1 hora de forma predeterminada (consulte TemporaryTokenDuration). Una vez que se acabe el tiempo, la conexión debe actualizarse para especificar un nuevo token MFA para que se puedan obtener nuevas credenciales.
Duración del Token Temporal
La cantidad de tiempo (en segundos) que durará un token temporal.
Tipo de Datos
string
Valor por Defecto
"3600"
Observaciones
Los tokens temporales se utilizan tanto con MFA como con la autenticación basada en roles. Los tokens temporales eventualmente expirarán, momento en el cual se debe obtener un nuevo token temporal. Para situaciones en las que no se usa MFA, esto no es gran cosa. Jitterbit Connector para Amazon DynamoDB solicitará internamente un nuevo token temporal una vez que el token temporal haya caducado.
Sin embargo, para la conexión requerida por MFA, un nuevo MFAToken debe especificarse en la conexión para recuperar un nuevo token temporal. Este es un problema más intrusivo ya que requiere una actualización de la conexión por parte del usuario. El máximo y mínimo que se puede especificar dependerá en gran medida de la conexión que se utilice.
Para la autenticación basada en roles, la duración mínima es de 900 segundos (15 minutos) mientras que la máxima es de 3600 (1 hora). Incluso si se usa MFA con autenticación basada en rol, 3600 sigue siendo el máximo.
Para la autenticación MFA por sí sola (usando un usuario de IAM o usuario raíz), el mínimo es 900 segundos (15 minutos), el máximo es 129600 (36 horas).
Región de AWSCognito
La región de alojamiento de AWS Cognito.
Valores Posibles
OHIO
, NORTHERNVIRGINIA
, NORTHERNCALIFORNIA
, OREGON
, CAPETOWN
, HONGKONG
, MUMBAI
, OSAKA
, SEOUL
, SINGAPORE
, SYDNEY
, TOKYO
, CENTRAL
, BEIJING
, NINGXIA
, FRANKFURT
, IRELAND
, LONDON
, MILAN
, PARIS
, STOCKHOLM
, BAHRAIN
, SAOPAULO
, GOVCLOUDEAST
, GOVCLOUDWEST
Tipo de Datos
string
Valor por Defecto
"NORTHERNVIRGINIA"
Observaciones
La región de alojamiento de AWS Cognito. Los valores disponibles son OHIO, NORTHERNVIRGINIA, NORTHERNCALIFORNIA, OREGON, CAPETOWN, HONGKONG, MUMBAI, OSAKA, SEÚL, SINGAPUR, SYDNEY, TOKYO, CENTRAL, BEIJING, NINGXIA, FRANKFURT, IRLANDA, LONDRES, MILÁN, PARÍS, ESTOCOLMO, BAHREIN, SAOPAULO, GOVCLOUDEAST y GOVCLOUDWEST.
AWSUserPoolId
El ID del grupo de usuarios.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Puede encontrar esto en AWS Cognito -> Administrar grupos de usuarios -> seleccione su grupo de usuarios -> Configuración general -> Identificación del grupo.
AWSUserPoolClientAppId
El ID de la aplicación del cliente del grupo de usuarios.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Puede encontrar esto en AWS Cognito -> Administrar grupos de identidades -> seleccione su grupo de usuarios -> Configuración general -> Clientes de aplicaciones -> ID de cliente de la aplicación.
AWSUserPoolClientAppSecret
Opcional. El secreto de la aplicación del cliente del grupo de usuarios.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Puede encontrar esto en AWS Cognito -> Administrar grupos de identidades -> seleccione su grupo de usuarios -> Configuración general -> Clientes de aplicaciones -> Secreto del cliente de la aplicación.
AWSIdentityPoolId
El ID del grupo de identidades.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Puede encontrar esto en AWS Cognito -> Administrar grupos de identidades -> seleccione su conjunto de identidades -> Editar grupo de identidades -> ID del grupo de identidades
Inicio de Sesión Único
Esta sección proporciona una lista completa de las propiedades de SSO que puede configurar.
Propiedad | Descripción |
---|---|
User | El usuario IDP utilizado para autenticar el IDP a través de SSO. |
Password | La contraseña utilizada para autenticar al usuario IDP a través de SSO. |
SSOLoginURL | La URL de inicio de sesión del proveedor de identidad. |
SSOProperties | Se requieren propiedades adicionales para conectarse al proveedor de identidad en una lista separada por punto y coma. |
SSOExchangeUrl | La URL utilizada para consumir la respuesta SAML e intercambiarla con credenciales específicas de Amazon DynamoDB. |
Usuario
El usuario IDP utilizado para autenticar el IDP a través de SSO.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Junto con Contraseña, este campo se utiliza para autenticarse en conexiones SSO con el servidor de Amazon DynamoDB.
Contraseña
La contraseña utilizada para autenticar al usuario IDP a través de SSO.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
El usuario y Password
se usan juntos en conexiones SSO para autenticarse con el servidor.
SSOloginURL
La URL de inicio de sesión del proveedor de identidad.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
La URL de inicio de sesión del proveedor de identidad.
Propiedades de SSO
Se requieren propiedades adicionales para conectarse al proveedor de identidad en una lista separada por punto y coma.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Se requieren propiedades adicionales para conectarse al proveedor de identidad en una lista separada por punto y coma. SSOProperties se utiliza junto con AWSRoleARN y AWSPrincipalARN. La siguiente sección proporciona un ejemplo usando el proveedor de identidad OKTA.
Autenticación con ADFS
Configure el AuthScheme a ADFS
. Es necesario establecer las siguientes propiedades de conexión:
- Usuario: establezca esto para el usuario de ADFS.
- Contraseña: Establezca esto en la contraseña de ADFS para el usuario.
- URL de inicio de sesión de SSO: configúrelo en la URL de inicio de sesión utilizada por el proveedor de SSO.
A continuación se muestra una cadena de conexión de ejemplo:
AuthScheme=ADFS; AWSRegion=Ireland; User=user@cdata.com; Password=CH8WerW121235647iCa6; SSOLoginURL='https://adfs.domain.com'; AWSRoleArn=arn:aws:iam:1234:role/ADFS_SSO; AWSPrincipalArn=arn:aws:iam:1234:saml-provider/ADFSProvider; S3StagingDirectory=s3://athena/staging;
ADFS Integrado
El flujo integrado de ADFS indica que se está conectando con currently logged in Windows user credentials
. Para utilizar el flujo integrado de ADFS, simplemente no especifique el Usuario y contraseña, pero de lo contrario, siga los mismos pasos en la guía ADFS anterior.
Autenticación con Okta
Configure el AuthScheme a Okta
. Las siguientes propiedades de conexión se utilizan para conectarse a Okta:
- Usuario: Configure esto para el usuario de Okta.
- Contraseña: Establézcalo en la contraseña de Okta para el usuario.
- URL de inicio de sesión de SSO: configúrelo en la URL de inicio de sesión utilizada por el proveedor de SSO.
La siguiente SSOProperties
son necesarios para autenticarse en Okta:
- APIToken (opcional): establezca esto en el token de API que el cliente creó a partir de la organización de Okta. Debe usarse al autenticar a un usuario a través de una aplicación confiable o un proxy que anula el contexto de solicitud del cliente de OKTA.
- MFAType (opcional): configure esto solo en caso de que haya configurado el flujo MFA. Actualmente solo admitimos los siguientes tipos: OktaVerify, Correo y SMS.
- MFAPassCode (opcional): configure esto solo en caso de que haya configurado el flujo MFA. Si está configurado como vacío/no válido, el controlador emitirá inicialmente un desafío de MFA que activará la plataforma para enviarle una contraseña de un solo uso a su dispositivo o correo, según el tipo de MFA configurado. Debe volver a emitir otra conexión en la que el valor de la contraseña de un solo uso recuperado se pase a la propiedad de conexión MFAPassCode.
La siguiente es una cadena de conexión de ejemplo:
AuthScheme=Okta; AWSRegion=Ireland; User=user@cdata.com; Password=CH8WerW121235647iCa6; SSOLoginURL='https://cdata-us.okta.com/home/amazon_aws/0oa35m8arsAL5f5NrE6NdA356/272'; SSOProperties='ApiToken=01230GGG2ceAnm_tPAf4MhiMELXZ0L0N1pAYrO1VR-hGQSf;'; AWSRoleArn=arn:aws:iam:1234:role/Okta_SSO; AWSPrincipalARN=arn:aws:iam:1234:saml-provider/OktaProvider; S3StagingDirectory=s3://athena/staging;
SSOExchangeUrl
La URL utilizada para consumir la respuesta SAML e intercambiarla con credenciales específicas de Amazon DynamoDB.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Jitterbit Connector para Amazon DynamoDB utilizará la URL especificada aquí para consumir una respuesta SAML y recuperar credenciales específicas de Amazon DynamoDB. Las credenciales recuperadas son la pieza final durante la conexión SSO que se utilizan para comunicarse con Amazon DynamoDB.
SSL
Esta sección proporciona una lista completa de las propiedades SSL que puede configurar.
Propiedad | Descripción |
---|---|
SSLServerCert | El certificado que se aceptará del servidor al conectarse mediante TLS/SSL. |
SSLServerCert
El certificado que se aceptará del servidor al conectarse mediante TLS/SSL.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Si usa una conexión TLS/SSL, esta propiedad se puede usar para especificar el certificado TLS/SSL que se aceptará del servidor. Se rechaza cualquier otro certificado que no sea de confianza para la máquina.
Esta propiedad puede tomar las siguientes formas:
Descripción | Ejemplo |
---|---|
Un certificado PEM completo (ejemplo abreviado por brevedad) | -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE----- |
Una ruta a un archivo local que contiene el certificado | C:\cert.cer |
La clave pública (ejemplo abreviado por brevedad) | -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY----- |
La huella digital MD5 (los valores hexadecimales también pueden estar separados por espacios o dos puntos) | ecadbdda5a1529c58a1e9e09828d70e4 |
La huella digital SHA1 (los valores hexadecimales también pueden estar separados por espacios o dos puntos) | 34a929226ae0819f2ec14b4a3d904f801cbb150d |
Si no se especifica, se acepta cualquier certificado en el que confíe la máquina.
La máquina valida los certificados como confiables según el almacén de confianza del sistema. El almacén de confianza utilizado es el valor 'javax.net.ssl.trustStore' especificado para el sistema. Si no se especifica ningún valor para esta propiedad, se utiliza el almacén de confianza predeterminado de Java (por ejemplo, JAVA_HOME\lib\security\cacerts).
Use '*' para indicar que acepta todos los certificados. Tenga en cuenta que esto no se recomienda debido a problemas de seguridad.
Esquema
Esta sección proporciona una lista completa de propiedades de esquema que puede configurar.
Propiedad | Descripción |
---|---|
Location | Una ruta al directorio que contiene los archivos de esquema que definen tablas, vistas y procedimientos almacenados. |
BrowsableSchemas | Esta propiedad restringe los esquemas informados a un subconjunto de los esquemas disponibles. Por ejemplo, BrowsableSchemas=SchemaA, SchemaB, SchemaC. |
Tables | Esta propiedad restringe las tablas notificadas a un subconjunto de las tablas disponibles. Por ejemplo, Tablas=TablaA, TablaB, TablaC. |
Views | Restringe las vistas informadas a un subconjunto de las tablas disponibles. Por ejemplo, Vistas=VistaA, VistaB, VistaC. |
Ubicación
Una ruta al directorio que contiene los archivos de esquema que definen tablas, vistas y procedimientos almacenados.
Tipo de Datos
string
Valor por Defecto
"%APPDATA%\\\AmazonDynamoDB Data Provider\\Schema"
Observaciones
La ruta a un directorio que contiene los archivos de esquema para el conector (archivos .rsd para tablas y vistas, archivos .rsb para procedimientos almacenados). La ubicación de la carpeta puede ser una ruta relativa desde la ubicación del ejecutable. El Location
La propiedad solo es necesaria si desea personalizar las definiciones (por ejemplo, cambiar el nombre de una columna, ignorar una columna, etc.) o ampliar el modelo de datos con nuevas tablas, vistas o procedimientos almacenados.
Si no se especifica, la ubicación predeterminada es "%APPDATA%\\AmazonDynamoDB Data Provider\Schema" con %APPDATA%
estando configurado en el directorio de configuración del usuario:
Plataforma | %APPDATA% |
---|---|
Windows | El valor de la variable de ambiente APPDATA |
Mac | ~/Biblioteca/Soporte de aplicaciones |
Linux | ~/.config |
Esquemas Navegables
Esta propiedad restringe los esquemas informados a un subconjunto de los esquemas disponibles. Por ejemplo, BrowsableSchemas=SchemaA,SchemaB,SchemaC.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Enumerar los esquemas de las bases de datos puede resultar costoso. Proporcionar una lista de esquemas en la cadena de conexión mejora el rendimiento.
Mesas
Esta propiedad restringe las tablas notificadas a un subconjunto de las tablas disponibles. Por ejemplo, Tablas=TablaA,TablaB,TablaC.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Listar las tablas de algunas bases de datos puede resultar costoso. Proporcionar una lista de tablas en la cadena de conexión mejora el rendimiento del conector.
Esta propiedad también se puede utilizar como una alternativa a la lista automática de vistas si ya sabe con cuáles quiere trabajar y, de lo contrario, habría demasiadas para trabajar.
Especifique las tablas que desea en una lista separada por comas. Cada tabla debe ser un identificador SQL válido con cualquier carácter especial escapado usando corchetes, comillas dobles o acentos graves. Por ejemplo, Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space`.
Tenga en cuenta que al conectarse a una fuente de datos con varios esquemas o catálogos, deberá proporcionar el nombre completo de la tabla en esta propiedad, como en el último ejemplo aquí, para evitar la ambigüedad entre las tablas que existen en varios catálogos o esquemas.
Puntos de Vista
Restringe las vistas informadas a un subconjunto de las tablas disponibles. Por ejemplo, Vistas=VistaA,VistaB,VistaC.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Listar las vistas de algunas bases de datos puede ser costoso. Proporcionar una lista de vistas en la cadena de conexión mejora el rendimiento del conector.
Esta propiedad también se puede utilizar como una alternativa a la lista automática de vistas si ya sabe con cuáles quiere trabajar y, de lo contrario, habría demasiadas para trabajar.
Especifique las vistas que desee en una lista separada por comas. Cada vista debe ser un identificador SQL válido con cualquier carácter especial escapado usando corchetes, comillas dobles o acentos graves. Por ejemplo, Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space`.
Tenga en cuenta que al conectarse a una fuente de datos con varios esquemas o catálogos, deberá proporcionar el nombre completo de la tabla en esta propiedad, como en el último ejemplo aquí, para evitar la ambigüedad entre las tablas que existen en varios catálogos o esquemas.
Misceláneas
Esta sección proporciona una lista completa de propiedades misceláneas que puede configurar.
Propiedad | Descripción |
---|---|
AutoDetectIndex | Un valor booleano que indica si los índices secundarios deben detectarse automáticamente en función de la consultar utilizada. |
FlattenArrays | De forma predeterminada, las matrices anidadas se devuelven como cadenas de JSON. La propiedad FlattenArrays se puede usar para aplanar los elementos de matrices anidadas en columnas propias. Establezca FlattenArrays en la cantidad de elementos que desea devolver de las matrices anidadas. |
FlattenObjects | Establezca FlattenObjects en true para aplanar las propiedades de los objetos en sus propias columnas. De lo contrario, los objetos anidados en matrices se devuelven como cadenas de JSON. |
FlexibleSchema | Establezca FlexibleSchema en verdadero para buscar metadatos adicionales en el conjunto de resultados de la consultar. De lo contrario, los metadatos seguirán siendo los mismos. |
GenerateSchemaFiles | Indica la preferencia del usuario en cuanto a cuándo deben generarse y guardarse los esquemas. |
IgnoreTypes | Elimina la compatibilidad con los tipos especificados. Por ejemplo, Tiempo. En su lugar, estos tipos se informarán como cadenas. |
MaximumRequestRetries | El número máximo de veces para reintentar una solicitud. |
MaxRows | Limita el número de filas devueltas cuando no se usa agregación o agrupación en la consultar. Esto ayuda a evitar problemas de rendimiento en el momento del diseño. |
Other | Estas propiedades ocultas se usan solo en casos de uso específicos. |
Pagesize | El número máximo de resultados que se devolverán por página desde Amazon DynamoDB. |
PseudoColumns | Esta propiedad indica si incluir o no pseudocolumnas como columnas en la tabla. |
RetryWaitTime | El número mínimo de milisegundos que el proveedor esperará para volver a intentar una solicitud. |
RowScanDepth | El número máximo de filas para escanear para buscar las columnas disponibles en una tabla. |
SeparatorCharacter | El carácter o caracteres utilizados para denotar jerarquía. |
ThreadCount | La cantidad de subprocesos que se usarán al seleccionar datos a través de un escaneo paralelo. Establecer ThreadCount en 1 deshabilitará los escaneos paralelos. |
Timeout | El valor en segundos hasta que se lanza el error de tiempo de espera, cancelando la operación. |
TypeDetectionScheme | Determina cómo determinar el tipo de datos de las columnas. |
UseBatchWriteItemOperation | Cuando está habilitado, el proveedor utilizará la operación BatchWriteItem para manejar actualizaciones e inserciones. De forma predeterminada, el proveedor utiliza la operación ExecuteStatement/BatchExecuteStatement. Debe habilitar BatchWriteItem solo cuando inserte o actualice datos binarios o de conjuntos binarios. ExecuteStatement/BatchExecuteStatement no admite la manipulación de campos binarios. |
UseConsistentReads | Si se deben usar siempre lecturas consistentes o no al consultar DynamoDb. |
UseSimpleNames | Booleano que determina si se deben usar nombres simples para tablas y columnas. |
Índice de Detección Automática
Un valor booleano que indica si los índices secundarios deben detectarse automáticamente en función de la consultar utilizada.
Tipo de Datos
bool
Valor por Defecto
true
Observaciones
En DynamoDB, puede usar índices secundarios para seleccionar datos más rápidamente de una tabla determinada. De forma predeterminada, intentamos detectar automáticamente un índice para usar en función de los criterios de consultar. Sin embargo, esto puede no ser siempre deseable. Para desactivar la lógica de detección de índices, establezca la propiedad en false o, si tiene control sobre la consultar y prefiere especificar el índice usted mismo, use la pseudocolumna SecondaryIndexName para especificar qué índice usar (si corresponde).
FlattenArrays
De forma predeterminada, las matrices anidadas se devuelven como cadenas de JSON. La propiedad FlattenArrays se puede usar para aplanar los elementos de matrices anidadas en columnas propias. Establezca FlattenArrays en la cantidad de elementos que desea devolver de las matrices anidadas.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
De forma predeterminada, las matrices anidadas se devuelven como cadenas de JSON. El FlattenArrays
La propiedad se puede usar para aplanar los elementos de matrices anidadas en columnas propias. Esto solo se recomienda para arreglos que se espera que sean cortos.
Colocar FlattenArrays
a la cantidad de elementos que desea devolver de las matrices anidadas. Los elementos especificados se devuelven como columnas. El índice de base cero se concatena con el nombre de la columna. Se ignoran otros elementos.
Por ejemplo, puede devolver un número arbitrario de elementos de una matriz de cadenas:
["FLOW-MATIC","LISP","COBOL"]
Cuando FlattenArrays
se establece en 1, la matriz anterior se aplana en la siguiente tabla:
Nombre de columna | Valor de columna |
---|---|
languages_0 | FLOW-MATIC |
FlattenObjects
Establezca FlattenObjects en true para aplanar las propiedades de los objetos en sus propias columnas. De lo contrario, los objetos anidados en matrices se devuelven como cadenas de JSON.
Tipo de Datos
bool
Valor por Defecto
true
Observaciones
Colocar FlattenObjects
a verdadero para aplanar las propiedades del objeto en columnas propias. De lo contrario, los objetos anidados en matrices se devuelven como cadenas de JSON. El nombre de la propiedad se concatena con el nombre del objeto con un guión bajo para generar el nombre de la columna.
Por ejemplo, puede aplanar los objetos anidados a continuación en el momento de la conexión:
[
{ "grade": "A", "score": 2 },
{ "grade": "A", "score": 6 },
{ "grade": "A", "score": 10 },
{ "grade": "A", "score": 9 },
{ "grade": "B", "score": 14 }
]
Cuando FlattenObjects
se establece en verdadero y FlattenArrays se establece en 1, la matriz anterior se aplana en la siguiente tabla:
Nombre de columna | Valor de columna |
---|---|
grades_0_grade | un |
grades_0_score | 2 |
Esquema Flexible
Establezca FlexibleSchema en verdadero para buscar metadatos adicionales en el conjunto de resultados de la consultar. De lo contrario, los metadatos seguirán siendo los mismos.
Tipo de Datos
bool
Valor por Defecto
true
Observaciones
Colocar FlexibleSchema
a verdadero para buscar metadatos adicionales en el conjunto de resultados de la consultar. De lo contrario, los metadatos seguirán siendo los mismos.
Generar Archivos de Esquema
Indica la preferencia del usuario en cuanto a cuándo deben generarse y guardarse los esquemas.
Valores Posibles
Never
, OnUse
, OnStart
, OnCreate
Tipo de Datos
string
Valor por Defecto
"Never"
Observaciones
Esta propiedad genera esquemas en archivos .rsd en la ruta especificada por Ubicación.
Los ajustes disponibles son los siguientes:
- Nunca: nunca se generará un archivo de esquema.
- OnUse: se generará un archivo de esquema la primera vez que se haga referencia a una tabla, siempre que el archivo de esquema para la tabla aún no exista.
- OnStart: se generará un archivo de esquema en el momento de la conexión para las tablas que actualmente no tienen un archivo de esquema.
- OnCreate: se generará un archivo de esquema al ejecutar una consultar SQL CREATE TABLE.
Tenga en cuenta que si desea volver a generar un archivo, primero deberá eliminarlo.
Generar Esquemas con SQL
Cuando configuras GenerateSchemaFiles
a OnUse
, el conector genera esquemas a medida que ejecuta consultas SELECT. Los esquemas se generan para cada tabla a la que se hace referencia en la consultar.
Cuando configuras GenerateSchemaFiles
a OnCreate
, los esquemas solo se generan cuando se ejecuta una consultar CREATE TABLE.
Generar Esquemas en la Conexión
Otra forma de usar esta propiedad es obtener esquemas para cada tabla en su base de datos cuando se conecta. Para hacerlo, establezca GenerateSchemaFiles
a OnStart
y conectar.
Ignorar Tipos
Elimina la compatibilidad con los tipos especificados. Por ejemplo, Tiempo. En su lugar, estos tipos se informarán como cadenas.
Tipo de Datos
string
Valor por Defecto
"Datetime,Date,Time"
Observaciones
Elimina la compatibilidad con los tipos especificados. Por ejemplo, Tiempo. En su lugar, estos tipos se informarán como cadenas.
Máximo de Reintentos de Solicitud
El número máximo de veces para reintentar una solicitud.
Tipo de Datos
string
Valor por Defecto
"4"
Observaciones
MaximumRequestRetries es la cantidad máxima de veces que el conector volverá a intentar una solicitud cuando el problema se haya detectado como temporal (errores como "error desconocido", problemas de red y superación del umbral máximo por tabla). En este caso, en el primer reintento, el conector retrocederá y esperará la cantidad de tiempo designada por RetryWaitTime. Si esa solicitud falla, el conector duplicará el tiempo y luego lo duplicará nuevamente hasta que el conector haya agotado los reintentos disponibles.
Por ejemplo, si RetryWaitTime se establece en 2 segundos y MaximumRequestRetries
se establece en 5, los tiempos de espera serán los siguientes: 0 -> 2 -> 4 -> 8 -> 16 -> 32.
Filas Máximas
Limita el número de filas devueltas cuando no se usa agregación o agrupación en la consultar. Esto ayuda a evitar problemas de rendimiento en el momento del diseño.
Tipo de Datos
int
Valor por Defecto
-1
Observaciones
Limita el número de filas devueltas cuando no se usa agregación o agrupación en la consultar. Esto ayuda a evitar problemas de rendimiento en el momento del diseño.
Otro
Estas propiedades ocultas se usan solo en casos de uso específicos.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Las propiedades enumeradas a continuación están disponibles para casos de uso específicos. Los casos de uso y la funcionalidad normales del controlador no deberían requerir estas propiedades.
Especifique varias propiedades en una lista separada por punto y coma.
Integración y Formateo
Propiedad | Descripción |
---|---|
DefaultColumnSize | Establece la longitud predeterminada de los campos de cadena cuando la fuente de datos no proporciona la longitud de columna en los metadatos. El valor predeterminado es 2000. |
ConvertDateTimeToGMT | Determina si se convierten los valores de fecha y hora a GMT, en lugar de la hora local de la máquina. |
RecordToFile=filename | Registra la transferencia de datos del socket subyacente al archivo especificado. |
Tamaño de Página
El número máximo de resultados que se devolverán por página desde Amazon DynamoDB.
Tipo de Datos
int
Valor por Defecto
2000
Observaciones
El Pagesize
la propiedad afecta la cantidad máxima de resultados que se devolverán por página desde Amazon DynamoDB. Por defecto esta propiedad tiene el valor '-1' lo que indica que el proveedor intentará obtener todos los registros sin límite por página.
Pseudocolumnas
Esta propiedad indica si incluir o no pseudocolumnas como columnas en la tabla.
Tipo de Datos
string
Valor por Defecto
""
Observaciones
Esta configuración es particularmente útil en Entity Framework, que no le permite establecer un valor para una pseudocolumna a menos que sea una columna de tabla. El valor de esta configuración de conexión tiene el formato "Tabla1=Columna1, Tabla1=Columna2, Tabla2=Columna3". Puede usar el carácter "*" para incluir todas las tablas y todas las columnas; por ejemplo, "*=*".
ReintentarEsperarTiempo
El número mínimo de milisegundos que el proveedor esperará para volver a intentar una solicitud.
Tipo de Datos
string
Valor por Defecto
"2000"
Observaciones
El valor de esta propiedad se duplica en cada reintento para determinar cuánto tiempo esperar hasta el próximo reintento. Especifique el número máximo de reintentos con MaximumRequestRetries.
FilaExploraciónProfundidad
El número máximo de filas para escanear para buscar las columnas disponibles en una tabla.
Tipo de Datos
int
Valor por Defecto
50
Observaciones
Las columnas de una tabla deben determinarse escaneando las filas de la tabla. Este valor determina el número máximo de filas que se escanearán.
Establecer un valor alto puede disminuir el rendimiento. Establecer un valor bajo puede evitar que el tipo de datos se determine correctamente, especialmente cuando hay datos nulos.
SeparadorCarácter
El carácter o caracteres utilizados para denotar jerarquía.
Tipo de Datos
string
Valor por Defecto
"."
Observaciones
Para aplanar estructuras como mapas y atributos de lista en DynamoDB, necesitamos algún especificador que indique cuál es la separación entre esas columnas y otras columnas. Si este valor es "." y vuelve una columna con el nombre dirección.ciudad, esto indica que hay un atributo mapeado con un hijo llamado ciudad. Si sus datos tienen columnas que ya usan un solo punto dentro del nombre del atributo, establezca SeparatorCharacter
a un personaje o personajes diferentes.
Número de Hilos
La cantidad de subprocesos que se usarán al seleccionar datos a través de un escaneo paralelo. Establecer ThreadCount en 1 deshabilitará los escaneos paralelos.
Tipo de Datos
string
Valor por Defecto
"4"
Observaciones
Los escaneos paralelos permiten que los datos se recuperen más rápido al dividir el proceso de recuperación en varios subprocesos. Esto puede mejorar en gran medida el rendimiento al escanear datos en Amazon DynamoDB. Sin embargo, esto también consumirá sus unidades de lectura para una tabla mucho más rápido que un solo hilo. Tenga en cuenta los núcleos, el ancho de banda y las unidades de lectura disponibles para sus tablas antes de aumentar ThreadCount.
Se Acabó el Tiempo
El valor en segundos hasta que se lanza el error de tiempo de espera, cancelando la operación.
Tipo de Datos
int
Valor por Defecto
60
Observaciones
Si Timeout
= 0, las operaciones no expiran. Las operaciones se ejecutan hasta que se completan correctamente o hasta que encuentran una condición de error.
Si Timeout
caduca y la operación aún no se ha completado, el conector genera una excepción.
TipoDetecciónEsquema
Determina cómo determinar el tipo de datos de las columnas.
Valores Posibles
None
, RowScan
Tipo de Datos
string
Valor por Defecto
"RowScan"
Observaciones
Propiedad | Descripción |
---|---|
None | Configuración TypeDetectionScheme a Ninguno devolverá todas las columnas como tipo de cadena. Nota: Incluso cuando se establece en Ninguno, los nombres de las columnas aún se escanearán cuando Header=True. |
RowScan | Configuración TypeDetectionScheme to RowScan escaneará filas para determinar heurísticamente el tipo de datos. El RowScanDepth determina el número de filas a escanear. Si no se especifica ningún valor, RowScan se utilizará de forma predeterminada. |
UseBatchWriteItemOperation
Cuando está habilitado, el proveedor utilizará la operación BatchWriteItem para manejar actualizaciones e inserciones. De forma predeterminada, el proveedor utiliza la operación ExecuteStatement/BatchExecuteStatement. Debe habilitar BatchWriteItem solo cuando inserte o actualice datos binarios o de conjuntos binarios. ExecuteStatement/BatchExecuteStatement no admite la manipulación de campos binarios.
Tipo de Datos
bool
Valor por Defecto
false
Observaciones
Cuando está habilitado, el proveedor utilizará la operación BatchWriteItem para manejar actualizaciones e inserciones. De forma predeterminada, el proveedor utiliza la operación ExecuteStatement/BatchExecuteStatement. Debe habilitar BatchWriteItem solo cuando inserte o actualice datos binarios o de conjuntos binarios. ExecuteStatement/BatchExecuteStatement no admite la manipulación de campos binarios.
UseConsistentReads
Si se deben usar siempre lecturas consistentes o no al consultar DynamoDb.
Tipo de Datos
bool
Valor por Defecto
false
Observaciones
Este parámetro no se admite en índices secundarios globales. Si escanea o consultar usando un índice secundario, las lecturas consistentes no se usarán incluso si la propiedad se establece en verdadero.
UsarNombresSimples
Booleano que determina si se deben usar nombres simples para tablas y columnas.
Tipo de Datos
bool
Valor por Defecto
false
Observaciones
Las tablas y columnas de Amazon DynamoDB pueden utilizar caracteres especiales en los nombres que normalmente no se permiten en las bases de datos estándar. UseSimpleNames
hace que el conector sea más fácil de usar con las herramientas de bases de datos tradicionales.
Configuración UseSimpleNames
a verdadero simplificará los nombres de las tablas y columnas devueltas. Aplicará un esquema de nomenclatura tal que solo los caracteres alfanuméricos y el guión bajo sean válidos para los nombres de las tablas y columnas que se muestran. Cualquier carácter no alfanumérico se convertirá en un guión bajo.