저는 Cassandra를 사용하고 있으며, 모든 열 패밀리의 내용을 보여주는 데이터 브라우저를 만들고 싶습니다. UI 그리드를 구성하려면 열 이름을 가져와야합니다. 모든 행의 열 이름을 수집 할 수 있습니까?Cassandra의 컬럼 패밀리에있는 모든 컬럼 이름을 나열하는 방법은 무엇입니까?
답변
가장 좋은 방법 :
SELECT column_name FROM system.schema_columnfamilies WHERE keyspace_name = X AND columnfamily_name = Y
참조 또한 http://www.datastax.com/dev/blog/schema-in-cassandra-1-1
이 답변에는 몇 가지 부분이 있습니다.
먼저 특정 질문에 대답하려면 sliceQuery를 사용하여 행의 모든 열을 가져와야합니다. 시작과 끝 값 효과적으로 모든 열을 요청하는대로 빈의 ByteBuffer를 전달합니다
ByteBuffer empty = ByteBufferUtil.EMPTY_BYTE_BUFFER;
sliceQuery.setRange(empty,empty,false,100);
둘째, 당신은 데이터 모델이 열 가족에 저장되는 대한 가정을 확인해야합니다.
데이터 모델이 정적 인 경우 (객체 당 하나의 행, 속성 당 하나의 열) 가져 오는 열 이름은 표시하려는 열 이름이어야합니다. 그러나 데이터가 동적 인 방식으로 저장되는 경우 (열당 하나의 객체, 동일한 행에 저장된 동일한 기본 키를 갖는 모든 객체) - 예를 들어 시계열과 같이 - 열의 방식을 이해해야합니다 이름 (복합 요소 일 가능성이 있음)을 해석해야합니다. 동적 접근 방식의 또 다른 보편적 인 사용은 CQL을 통해 정의 될 때 열 패밀리가 지속되는 방식입니다.
열 패밀리가 객체를 저장하는 데 사용되는 방법을 알 수있는 방법이 없다는 것을 추가해야합니다. 쿼리 할 수있는 스키마가 있지만 데이터 (및 특성 이름)가 serialize 및 deserialize되는 방식이 아니라 지속될 때 데이터의 형식을 지정하는 방법 만 알려줍니다. 당신이 카산드라 1.1 사용하는 경우
죄송합니다,하지만 난 행의 모든 열을 얻기 전에, 행을 가져와야하고 행 키를 알아야합니다. 필자의 경우에는 열 패밀리의 이름 만 알고 행의 행은 알 수 없습니다. 그래서 내가하고 싶은 것은 모든 행을 스캔하고 행 ID를 수집하거나 적어도 특정 열의 모든 값을 스캔하는 것입니다. P. 나는 관계형 세계에서 왔고 카산드라는 나에게 힘든 시간을 주었다. – user1511772
그래서 일반적인 질문에서 헥터를 사용하는 방법에 관한 질문은 무엇입니까? –
http://hector-client.github.com/hector/build/html/content/getting_started.html#read – pd40
이 시도 :
select columnfamily_name from system.schema_columnfamilies where keyspace_name=‘mykeyspace';
- 1. 게시 컬럼 이름을 정수로
- 2. Datanucleus는 컬럼 이름을 변경합니까?
- 3. MySQL 컬럼
- 4. MySQL의 select 쿼리에서 컬럼 이름을 얻는 방법은 무엇입니까?
- 5. 표준 컬럼 군 대 수퍼 컬럼 군
- 6. Ultrarawingrid 컬럼 선택기 및 컬럼 필터
- 7. 멤버가없는 컬럼
- 8. php pdo : 테이블의 컬럼 이름을 얻으십시오
- 9. CSS 컬럼 디자인을 빠르게 만드는 방법은 무엇입니까?
- 10. 왜 Fluent-NHibernate는 일관성없는 컬럼 이름을 생성합니까?
- 11. HBase - 컬럼 제품군
- 12. 이름 바꾸기 DB 컬럼
- 13. 카산드라의 슈퍼 컬럼
- 14. 컬럼 변경을위한 VLookup 매크로
- 15. tcpdf multicell() 및 컬럼 브레이크
- 16. nhibernate로 컬럼 이름 추상화
- 17. mySQL의 총 컬럼 수!
- 18. 아이폰에 멀티 컬럼 텍스트 디스플레이
- 19. 합류로 UPDATE 컬럼
- 20. Django에서 데이터베이스 컬럼 반복하기
- 21. Django의 컬럼 간 집합
- 22. 멀티 컬럼 테이블 높이
- 23. Where 절, 컬럼 별칭
- 24. NHibernate autoincrement 문자열 컬럼
- 25. Android 멀티 컬럼 텍스트
- 26. ActiveRecord의 Lazily로드 컬럼
- 27. 리팩토링 data.frame 컬럼 값
- 28. SSRS 컬럼 그룹
- 29. Fluent NHibernate 두 컬럼 중 하나에 대해 컬럼 매핑하기
- 30. 인덱스에 대한 다중 컬럼 기본 키의 일부인 컬럼 확장의 영향
에는 몇 가지 훌륭한 hector 예제가 있습니다. 가장 편리한 해결책 인 것 같습니다. 나는이 시점에서 카산드라 1.0.9를 사용하고 있기 때문에 이것을 시도 할 수는 없다. – user1511772
Cassandra 1.2의 경우 (분명히 ... 2.0.4를 사용하고 있습니다) [schema_columns] (http://www.datastax.com/documentation/cql/cql_using/use_query_system_c.html?pagename=docs&version=1.2&file)를 쿼리해야합니다. = cql_cli/using/query_system_tables) 'SELECT column_name FROM system.schema_columns 어디 키 공간 이름 =? AND columnfamily_name =? ' –
Cassandra 2. *에서는 작동하지 않습니다. 사이트 링크가 있습니까? – shankbond