Read and Write sample on Cassandra by using Aquiles...

来源:互联网 发布:麻将app源码出售 编辑:程序博客网 时间:2024/05/22 11:36

1. You need set your config file. Web.config or App.config

 

<?xml version="1.0"?><configuration>  <configSections>    <section name="aquilesConfiguration" type="Aquiles.Core.Configuration.AquilesConfigurationSection,Aquiles.Core"/>  </configSections>  <startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup>  <aquilesConfiguration>    <clusters>      <add friendlyName="ImageCluster">        <connection poolType="SIZECONTROLLEDPOOL" factoryType="FRAMED">        </connection>        <endpointManager type="ROUNDROBIN" defaultTimeout="6000">          <cassandraEndpoints>            <add address="10.0.125.231" port="9160"/>            <add address="10.0.125.232" port="9160"/>          </cassandraEndpoints>        </endpointManager>      </add>    </clusters>  </aquilesConfiguration></configuration>


 

static void Insert(string strKey, string strVal)        {            byte[] key = ByteEncoderHelper.UTF8Encoder.ToByteArray(strKey);            ColumnParent columnParent = new ColumnParent()            {                Column_family = "UserToken",            };            // column1            Column column = new Column()            {                // Column name is you defined on your command                Name = ByteEncoderHelper.UTF8Encoder.ToByteArray("MyColumnName"),                Value = ByteEncoderHelper.UTF8Encoder.ToByteArray(strVal),                Timestamp = UnixHelper.UnixTimestamp            };               ICluster cluster = AquilesHelper.RetrieveCluster("ImageCluster");            cluster.Execute(new ExecutionBlock(delegate(Cassandra.Client client)            {                client.insert(key, columnParent, column, ConsistencyLevel.ONE);                return null;            }), "Ks1");        }


 

static string Read(string strKey)        {            byte[] key = ByteEncoderHelper.UTF8Encoder.ToByteArray(strKey);            ColumnPath columnPath = new ColumnPath()            {                Column = ByteEncoderHelper.UTF8Encoder.ToByteArray("MyColumnName"),                Column_family = "UserToken",            };            ICluster cluster = AquilesHelper.RetrieveCluster("ImageCluster");            ColumnOrSuperColumn column = (ColumnOrSuperColumn)cluster.Execute(new ExecutionBlock(delegate(Cassandra.Client client)            {                return client.get(key, columnPath, ConsistencyLevel.QUORUM);            }), "Ks1");            string str = ByteEncoderHelper.UTF8Encoder.FromByteArray(column.Column.Value);            return str;}


 

static void Rmove(string strKey)        {            byte[] key = ByteEncoderHelper.UTF8Encoder.ToByteArray(strKey);            ColumnPath columnPath = new ColumnPath()            {                Column_family = "UserToken",            };            ICluster cluster = AquilesHelper.RetrieveCluster("ImageCluster");            cluster.Execute(new ExecutionBlock(delegate(Cassandra.Client client)            {                client.remove(key, columnPath, UnixHelper.UnixTimestamp, ConsistencyLevel.ONE);                return null;            }), "Ks1");        }


Before running this, you need create KeySpace and ColumnFamily firstly.....

Used Namespaces:

using Aquiles.Helpers.Encoders;using Apache.Cassandra;using Aquiles.Helpers;using Aquiles.Cassandra10;using Aquiles.Core.Cluster;


 

原创粉丝点击